mirror of
https://github.com/leozide/leocad.git
synced 2026-10-26 22:10:32 +00:00
The fixed-function renderer was removed, but shader capability guards, bitmap text paths, and legacy attribute state still implied a working shaderless fallback. Remove that obsolete state and check shader support once when initializing rendering resources. Return detailed context and shader errors through lcResult and show fatal startup errors in GUI mode. Keep lighting, conditional lines, SDF text, view sphere, and outlines optional, with program validity checks selecting Flat shading, skipping unavailable overlays, or retaining selection tint. Non-rendering exports initialize only the context needed for asset loading. Apply icon availability to every parts list without overwriting requested sizes. Disable unavailable lighting and view-sphere preference controls, make attribute aliases explicit, and prevent signed-byte glyph indexing. Validation: macOS debug build, GUI and image export under forced optional shader compile/link failures, Flat fallback image comparisons, export initialization checks, preference preservation, and glyph byte-range checks.
10 lines
263 B
C
10 lines
263 B
C
#pragma once
|
|
|
|
void lcInitializeGLExtensions(const QOpenGLContext* Context);
|
|
|
|
extern bool gSupportsVertexBufferObject;
|
|
extern bool gSupportsFramebufferObject;
|
|
extern bool gSupportsBlendFuncSeparate;
|
|
extern bool gSupportsAnisotropic;
|
|
extern GLfloat gMaxAnisotropy;
|