|
SBgl 0.1.0
A graphics framework in C99
|
Internal state for the engine context. More...

Data Fields | ||
| SblArena | arena | |
| SblArena | transientArena | |
| sbgl_Window * | window | |
| sbgl_GfxContext * | gfx | |
| float | clearColor [4] | |
| struct { | ||
| uint32_t isDrawing: 1 | ||
| uint32_t hasStartedFrame: 1 | ||
| uint32_t isIdle: 1 | ||
| uint32_t wasFocused: 1 | ||
| uint32_t mouseLocked: 1 | ||
| } | state | |
| sbgl_InputState | input | |
| sbgl_MouseMode | mouseMode | |
| sbgl_Telemetry | lastFrame | |
| sbgl_Telemetry | currentFrame | |
| uint64_t | frameCount | |
| uint64_t | frameStartTicks | |
| uint64_t | sortStartTicks | |
Internal state for the engine context.
This structure is hidden from the public API (opaque). It holds the persistent memory arena, the native window handle, and the current clear color state.
Definition at line 40 of file sbgl_core.c.
| SblArena sbgl_InternalContext::arena |
Persistent memory for the lifetime of the context.
Definition at line 41 of file sbgl_core.c.
| float sbgl_InternalContext::clearColor[4] |
Current RGBA clear color.
Definition at line 45 of file sbgl_core.c.
| sbgl_Telemetry sbgl_InternalContext::currentFrame |
Definition at line 56 of file sbgl_core.c.
| uint64_t sbgl_InternalContext::frameCount |
Definition at line 57 of file sbgl_core.c.
| uint64_t sbgl_InternalContext::frameStartTicks |
Definition at line 58 of file sbgl_core.c.
| sbgl_GfxContext* sbgl_InternalContext::gfx |
Handle to the graphics backend context.
Definition at line 44 of file sbgl_core.c.
| uint32_t sbgl_InternalContext::hasStartedFrame |
Internal flag to track if BeginFrame was called.
Definition at line 48 of file sbgl_core.c.
| sbgl_InputState sbgl_InternalContext::input |
Physical input state tracking.
Definition at line 53 of file sbgl_core.c.
| uint32_t sbgl_InternalContext::isDrawing |
Internal flag to track if we are in a render pass.
Definition at line 47 of file sbgl_core.c.
| uint32_t sbgl_InternalContext::isIdle |
Internal flag to track if GPU is idle.
Definition at line 49 of file sbgl_core.c.
| sbgl_Telemetry sbgl_InternalContext::lastFrame |
Definition at line 55 of file sbgl_core.c.
| uint32_t sbgl_InternalContext::mouseLocked |
Add this for future use.
Definition at line 51 of file sbgl_core.c.
| sbgl_MouseMode sbgl_InternalContext::mouseMode |
Current intended mouse behavior.
Definition at line 54 of file sbgl_core.c.
| uint64_t sbgl_InternalContext::sortStartTicks |
Definition at line 59 of file sbgl_core.c.
| struct { ... } sbgl_InternalContext::state |
| SblArena sbgl_InternalContext::transientArena |
Memory reset every frame.
Definition at line 42 of file sbgl_core.c.
| uint32_t sbgl_InternalContext::wasFocused |
Tracking focus state for re-locking.
Definition at line 50 of file sbgl_core.c.
| sbgl_Window* sbgl_InternalContext::window |
Handle to the native OS window.
Definition at line 43 of file sbgl_core.c.