- BLAS
- Bottom-level acceleration structure: the GPU's search structure over one Mesh's triangles, built when a Mesh that rays trace loads. Most are then compacted (#202); a refitted Mesh's is built to allow updates and never compacted (#209).
- TLAS
- Top-level acceleration structure: the GPU's search structure over Instances, each placing a BLAS with its transform. A ray walks it down to the triangles it meets.
- Dynamic TLAS
- The top-level acceleration structure over the Moving Instances, at most 10,000 of them, those in the lowest slots, each tagged with its slot. It is rebuilt every frame, in the static TLAS's frame (#204).
- Refit
- Updating an acceleration structure in place after its triangles move: the tree keeps its shape and only its bounds are recomputed. The structure must be built to allow it, and its triangles keep their count and order. wgpu-core 30 does not implement it; Metal does, reached through wgpu-hal.
- Rebuild
- Building an acceleration structure again from scratch, from its current triangles. Through wgpu-core 30 it is the only way to update one.
- Oracle
- A slow, plainly correct computation that a test checks the fast one against. The refit's is a full rebuild of the same BLASes.
- MeshUse
- What a Mesh is loaded for: drawn and traced, the default; drawn alone, a bent Mesh with no BLAS; traced alone, a shadow proxy; or refitted, a bent Mesh drawn and traced through a BLAS updated each frame (#208, #209).
- Index stream
- A Mesh's cooked u32 indices in the index Arena. No pass draws from it; only a BLAS build reads it.
- Bend
- The GPU's stand-in for skinning until M7: each frame a compute pass rewrites a Renderable's own Mesh, the bent Mesh, from a rest Mesh of the same vertices, its middle curved into an arc by a curvature the fixed schedule sets each Tick.
- Bend pass
- The compute pass that rewrites each bent Mesh's vertices from its rest Mesh's every frame, a stand-in for skinning (#269).
- Shadow proxy
- A Mesh that rays trace and no pass draws, standing in for part of a Renderable whose own BLAS would not hold the shape it is drawn in, such as a bent figure's bone.
- Moving Instance
- An Instance whose entity the fixed schedule moves, so the entity carries its previous World transform. It is rewritten each frame and rebuilt into the dynamic TLAS; every other Instance is static.
- Render switches
- The variants a Renderer is created with and keeps: whether Instances are culled, whether lights are culled into Froxels or all reach every pixel, whether shadow rays are traced, whether a pass counts each lit pixel's point lights, and the form the crowd scene's deforming meshes take in the TLAS. Their defaults are what ships; scene content such as ambient and background is not a switch.
- wgpu-core
- wgpu's middle layer, beneath its safe API: it validates each call, tracks each resource's state and lifetime, records the barriers between uses, and calls wgpu-hal.
- wgpu-hal
- wgpu's lower layer, one unsafe implementation per backend, beneath the safe API. ADR 0007 permits it for a subsystem that exceeds wgpu's safe API.
- as_hal guard
- What wgpu's as_hal returns: a value that keeps the resource alive and reads as the wgpu-hal object while it lives. The guard of a buffer, texture, texture view or acceleration structure also holds the snatch lock.
- Snatch lock
- wgpu-core's per-device lock over each resource's raw object, which destroying the resource snatches away. The as_hal guard of a buffer, texture, texture view or acceleration structure holds it for reading, a device's or queue's does not, and in debug builds a thread that takes it twice panics.
- Command buffer
- A recorded list of GPU commands, which a submission hands to the GPU. On Metal, an MTLCommandBuffer.
- Submission
- One call to Queue::submit: the command buffers it hands the GPU, in order, and the index the CPU can wait on.
- Hazard tracking
- Metal's automatic ordering of GPU work that writes and reads the same resource. It sees only the resources a command names; a TLAS names its BLASes by ID, so a TLAS build is not ordered after them (gfx-rs/wgpu#9215).
- Marker
- A compute pass of one invocation, recorded only to carry a timestamp. It reads or queries a resource the timed work writes, so Metal runs it in order with that work, before or after it as recorded, and the timestamp at its end or start brackets it (#204, #209).
- Timestamp query
- A GPU write of its clock into a slot of a query set; Praxis asks wgpu for one at the start or end of a pass. On Metal, wgpu-hal takes it as a counter sample at the boundary of the pass's encoder.
- Shared event
- MTLSharedEvent: a Metal counter that one command buffer can signal to a value and another wait for, on the GPU, with no CPU wait between them. Unlike a plain MTLEvent, it also reaches the CPU and other devices.
- Strict event sync
- A wgpu-hal mode of a Metal queue, on for its lifetime once enabled: every command buffer starts by waiting on an internal event that each submit signals after the waits staged for it.
- Main thread
- Under ADR 0016, the thread that runs the frame: only it submits GPU work, presents or polls.
- Budget
- A numeric limit on one metric of a Reference scene (CPU ms, GPU ms, GPU memory, Input latency) that a change must not regress. The GPU memory Budget splits into one Budget per kind of GPU memory, such as the geometry Arenas, the texture pool and staging, which caps what that kind may hold (ADR 0017). Counters such as draw calls and bytes uploaded are held to their Baselines instead.