vkmEngine 1.0.0
A C++ game engine · vkmengine.com
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12]
 CVkm::Engine::Math::AABBAn axis-aligned box
 CVkm::Engine::AnimationComponent representing an animation that can be applied to an entity
 CVkm::Engine::AnimationEventA rig's playback head crossed one of its clip's markers this tick
 CVkm::Engine::AnimationTrack< T >Keyframes of type T sorted by time, sampled through an easing curve
 CVkm::Engine::AnimatorWhat drives a rig: the skeleton, the clip playing on it, and the playback position
 CVkm::Engine::AssetFactoryThe io<->tools recipe-import seam: one import per kind that cooks to a binary
 CVkm::Engine::AssetLibraryIn-memory view of the on-disk asset database manifest
 CVkm::Engine::AssetRecordOne row of the manifest: an asset's identity, and what it was cooked from
 CVkm::Engine::AssetRef< Asset >An authored reference to an asset, held as the name it is filed under
 CVkm::Engine::ComponentSerializer::AssetRefsEvery asset a set of components references, one list per kind
 CVkm::Engine::AsyncLoadQueueThread-safe drop-box for async-loaded assets awaiting main-thread finalisation
 CVkm::Engine::AudioDeviceThe engine's whole surface onto the audio backend
 CVkm::Engine::AudioListenerThe ear: the pose every spatial source is heard relative to
 CVkm::Engine::AudioSourceA sound emitter: one clip, how loud, and where it is heard from
 CVkm::Engine::BackendInfoHuman-readable backend identity, for a status display
 CVkm::Engine::ThreadPool::BatchA run of tasks addressed by index, queued as one entry
 CVkm::Engine::BehaviorBase class for native C++ gameplay behaviors
 CVkm::Engine::BehaviorContextEverything gameplay code may reach, bundled behind one pointer
 CVkm::Engine::BehaviorFieldVisitorType-erased visitor over a behavior's reflected authoring fields
 CVkm::Engine::BehaviorRegistryName -> factory registry for Behavior subclasses
 CVkm::Engine::BitReaderReads back what a BitWriter wrote, in the same order
 CVkm::Engine::BitWriterPacks values to the bit into a byte buffer
 CVkm::Engine::BodyContactsWhat one tick's contacts add up to for one body, in the two reductions Rigidbody publishes
 CVkm::Engine::BodyFramePer-tick body state cached at gather: mass properties, and the frame writeback maps through
 CVkm::Engine::BodyIslandsDisjoint sets over the tick's bodies, for grouping what rests together
 CVkm::Engine::BodyPoseWhere a body sits in the world, and the frame that maps back to local
 CVkm::Engine::BoneOne joint of a rig: its authoring name and the index of its parent
 CVkm::Engine::BoneAdjustWhat a behavior adds to one bone on top of the clip, this frame
 CVkm::Engine::BoneSocketCarried by a weapon, a hat or a muzzle flash to ride a bone of the rig it hangs off
 CVkm::Engine::BoxShapeAn oriented box in world space: centre, three unit axes, half extents
 CVkm::Engine::CameraComponent representing a camera, containing projection and view parameters
 CVkm::Engine::CameraDataFlattened camera for the frame
 CVkm::Engine::CapsuleShapeA capsule in world space: a segment swept by a radius
 CVkm::Engine::CharacterControllerTurns a desired direction into velocity on a Rigidbody, and reports what the body stands on
 CVkm::Engine::ClipBoneThe three channel ranges belonging to one bone of the clip's skeleton
 CVkm::Engine::ClipChannelOne bone's keys for one channel, as a range into the clip's flat arrays
 CVkm::Engine::ClipMarkerA named instant a clip announces as its playback head reaches it
 CVkm::Engine::ClipSamplesA clip's interleaved PCM, shared with every voice playing it
 CVkm::Engine::ClockThe engine's frame clock: real + simulation time and the fixed-step accumulator
 CVkm::Engine::Atmosphere::CoefficientsThe air's coefficients under an authored sky, per metre at sea level
 CVkm::Engine::ColliderCollision geometry attached to an entity, evaluated in its Transform frame
 CVkm::Engine::ColliderPartOne primitive of a collider, in the entity's local frame
 CVkm::Engine::ColliderProxyBroadphase and narrowphase view of one collidable body, cached per tick
 CVkm::Engine::CollisionOne entity's view of a CollisionEvent, as its behaviors' collision hooks receive it
 CVkm::Engine::CollisionEventA resolved (non-trigger) contact between two bodies began, lasted or ended this tick
 CVkm::Engine::NetBaseline::ConfirmedOne component of one entity, as this connection last confirmed it
 CVkm::Engine::ContactA single collision contact point in world space
 CVkm::Engine::ContactCacheWhat held each contacting pair when the last tick finished
 CVkm::Engine::ContactManifoldContacts between one pair of bodies for a single tick
 CVkm::Engine::DecalA projected decal - bullet holes, blood, scorch marks
 CVkm::Engine::DecalDataFlattened projected decal for the frame: the material lands on surfaces inside the box
 CVkm::Engine::NetSession::DrawnHolds the outstanding correction in the scene for one scope
 CVkm::Engine::DynamicLibraryCross-platform handle to a loaded shared library (.dll / .so)
 CVkm::Engine::EditorRenderHooksWhat a backend may offer an authoring tool beyond drawing the frame
 CVkm::Engine::EngineEngine context: owns core state and runs the main loop
 CVkm::Engine::EngineErrorLogBounded log of recoverable engine errors, for a host to surface
 CVkm::Engine::AssetSerializer::EntityAssetRefsEvery asset reference a set of entities holds, as an assets block would name it
 CVkm::Engine::EntityIdNames one entity of one Scene, for as long as that slot holds it
 CVkm::Engine::EntityMapping< R(A)>Maps entities to one carrier's names for them, or back
 CVkm::Engine::Reflect::EnumNames< Enum >Maps an enum to its value-ordered names
 CVkm::Engine::EnvironmentThe scene's lighting environment: sky, night sky and fog
 CVkm::Engine::EventBusTyped pub/sub event dispatcher
 CVkm::Engine::EventSenderThe sending half of an EventBus: emit and enqueue, and no subscribe
 CVkm::Engine::FaultLatchNames a recurring fault once per gap rather than once a frame
 CVkm::Engine::Reflect::Field< T, M >One (name, pointer-to-member) pair, the unit of compile-time field reflection
 CVkm::Engine::FogSettingsFroxel volumetric fog: a compute pass scatters the scene lights through a height-falloff medium and applies it to the frame
 CVkm::Engine::FontGlyphOne glyph's atlas placement and layout metrics, in baked pixels
 CVkm::Engine::FrameContextPer-frame state bundle passed to every system
 CVkm::Engine::FrameLimiterLimits a render loop's frame rate by sleeping, then spin-waiting
 CVkm::Engine::Math::FrustumView frustum for culling: six planes from a view-projection matrix
 CVkm::Engine::GenerationIndexPer-slot alive flag (bit 31) and generation counter (bits 0-30) in one uint32_t
 CVkm::Engine::Handle< ResourceType >Opaque, type-safe handle for resources, distinguished by ResourceType
 CVkm::Engine::HierarchyComponent representing parent-child relationships in an entity hierarchy
 CVkm::Engine::HostChromeWhat an authoring host tells the engine about the frame it draws over
 CVkm::Engine::HostViewA view an authoring host renders the frame through instead of the scene's active camera
 CVkm::Engine::IBusThe type-erased base EventBus holds each per-type Bus as
 CVkm::Engine::InputBindingOne physical control contributing to an action
 CVkm::Engine::InputCommandEverything one simulation tick was told to do, as a value
 CVkm::Engine::InputHandleOne frame of raw device state: keys and buttons down, cursor position and wheel turn
 CVkm::Engine::InputMapNamed actions resolved from physical bindings, sampled once per frame
 CVkm::Engine::IrradianceVolumeBaked global illumination: a grid of irradiance probes filling a box
 CVkm::Engine::IrradianceVolumeDataFlattened irradiance volume for the frame (see GLIrradianceVolume)
 CVkm::Engine::ISceneObserverObserver notified by a Scene when an entity is destroyed
 CVkm::Engine::ISparseSetType-erased interface for SparseSet, so one registry holds every type
 CVkm::Engine::JointTies this entity's body to another, at a point on each
 CVkm::Engine::JointConstraintOne joint, resolved to the two solver bodies it constrains
 CVkm::Engine::JointSpringsThe two springs a joint solves with: the anchors', and the softer hold on the angle
 CVkm::Engine::KerningPairHow far the pen moves between one glyph and the next, past their advances
 CVkm::Engine::LightComponent representing a light source in the scene
 CVkm::Engine::LightDataOne light affecting the frame, resolved to world space
 CVkm::Engine::LiveParticlesEvery emitter's live particles: ParticleSystem's per-frame product
 CVkm::Engine::LoadCompletion< Asset >One finished decode, landed on the main thread into the asset it was requested for
 CVkm::Engine::LODDistance-selected geometry for an entity
 CVkm::Engine::LODLevelOne detail level: the mesh to draw while the entity is near enough
 CVkm::Engine::MeshComponent representing a renderable mesh (geometry + material) in the world
 CVkm::Engine::MeshColliderSourceWhat a Collider's triangles were built from, so a change to any of it rebuilds them
 CVkm::Engine::MeshNodeOne node of a triangle mesh's bounding hierarchy
 CVkm::Engine::MissingAssetRefOne asset reference a scene load could not resolve
 CVkm::Engine::MissingAssetsThe references on one entity that the load could not resolve, kept so a later save writes them back rather than erasing them
 CVkm::Engine::NameComponent for giving entities a human-readable name
 CVkm::Engine::NarrowphaseChunkEverything one narrowphase chunk writes, so chunks on different threads share nothing
 CVkm::Engine::NetAddressWhere a datagram came from, or is going to: an IPv4 host and a port
 CVkm::Engine::NetBaselineWhat one connection is known to hold, so the next snapshot says less
 CVkm::Engine::NetBudgetHow much of the world one snapshot may describe
 CVkm::Engine::NetClientA guest's half of a NetSession: joining, predicting what it owns, being corrected, and drawing the rest late
 CVkm::Engine::NetCommandBufferThe commands one player has sent that the server has not yet run
 CVkm::Engine::NetConnectionOne end of one conversation: sequencing, acknowledgement and timing
 CVkm::Engine::NetCoreWhat a session's server and client halves share: the socket, what the two ends agreed, and the buffers a datagram is built in
 CVkm::Engine::NetInterpolationDraws entities this end is only told about, between what it was told
 CVkm::Engine::NetJoinCookieThe token a server gives an address that asks to join, and takes back as proof that the address hears what is sent to it
 CVkm::Engine::NetPacingHow fast a client turns wall time into ticks, so the server's queue of its commands holds a small cushion rather than running dry or deep
 CVkm::Engine::NetRewindWhere every player was, for as long as it takes a shot to arrive
 CVkm::Engine::NetSchemaThe ordered list of what replicates, agreed by both ends before play
 CVkm::Engine::NetServerThe authority's half of a NetSession: seats, the join handshake, commands in and snapshots out
 CVkm::Engine::NetSessionOne end of a game, whether it is the authority or a guest
 CVkm::Engine::NetSilenceMapNetSilence for every entity of a world, classified in one pass
 CVkm::Engine::NetSnapshotStatsWhat one snapshot said, for the session's status line
 CVkm::Engine::NetSpawnWhat a server built at this root after the scene loaded, so every client can build the same
 CVkm::Engine::NetTypeOne replicated component type, reduced to what the wire needs
 CVkm::Engine::NightSkySettingsWhat the sky is once the sun is down
 CVkm::Engine::ObjectDrawWhat one object is drawn with: its geometry, its material and its pose
 CVkm::Engine::ParticleOne live particle
 CVkm::Engine::ParticleDataOne billboard particle for the frame, flattened from the emitters
 CVkm::Engine::ParticleEmitterCPU-simulated particle emitter - muzzle flashes, impacts, smoke puffs
 CVkm::Engine::NetBaseline::PendingWhat a written snapshot claimed, held until it is acknowledged
 CVkm::Engine::PhysicsBodyPer-tick dynamic state the solver reads and writes, by index
 CVkm::Engine::PhysicsSettingsThe physics world's own parameters, read once per fixed step
 CVkm::Engine::PlaybackStepThe sweep a playback head made this frame
 CVkm::Engine::PlaySoundEventA request to hear a clip once, from gameplay that owns no entity for it
 CVkm::Engine::PoseBufferEvery rig's pose for one frame, published on FrameContext::poses
 CVkm::Engine::PoseSampleThe clips a rig reads this frame, how much of each, and what a behavior adds on top
 CVkm::Engine::PoseSliceOne rig's range in the frame's pose arrays, plus what the pose implies about its extent
 CVkm::Engine::PoseWriteWritable view of one slice, handed to whatever composes the pose
 CVkm::Engine::PrefabEntityThe identity an entity carries inside an instanced prefab
 CVkm::Engine::PrefabInstanceMarks an entity as the root of an instanced prefab
 CVkm::Engine::PrefabOverrideOne field of one component of one entity, differing from the prefab
 CVkm::Engine::PreviewRequestOne editor preview: a mesh with a material under a studio rig, from an orbit camera
 CVkm::Engine::ProbeDataFlattened reflection probe for the frame, blended over the global IBL in its box
 CVkm::Engine::ProjectWhat a project.json says about the game it describes
 CVkm::Engine::QueryFilterWhich bodies a query is allowed to see
 CVkm::Engine::RagdollTurns a rig over to physics, and back
 CVkm::Engine::RagdollBodyPoseOne bone body's world pose, read out of the scene ahead of composing
 CVkm::Engine::RagdollBoneOne bone of a ragdoll, and the body that moves it
 CVkm::Engine::RagdollSettingsHow a ragdoll is proportioned and weighted
 CVkm::Engine::Math::RayA half-line in world space
 CVkm::Engine::RayHitWhat a query struck: which entity, where, and the surface it hit
 CVkm::Engine::ReflectionProbeLocal reflection + irradiance probe
 CVkm::Engine::RenderBackendThe frame's seam between the engine and the graphics API
 CVkm::Engine::RenderObjectsEvery object the frame can draw, written once by the cull, and the lists of what each reader draws
 CVkm::Engine::RenderSettingsEditable render tuning: pass toggles + per-effect parameters
 CVkm::Engine::RenderViewThe backend-agnostic view of the frame handed to RenderBackend::render
 CVkm::Engine::ResourceBase class for every asset type, carrying the identity the ResourceManager indexes by
 CVkm::Engine::ResourceManagerOpen type-erased resource registry with typed handles and generational lifetimes
 CVkm::Engine::NetSession::RewindPuts every other player back where a shooter saw them, for one scope
 CVkm::Engine::RigidbodyDynamics state for a physics body: motion, material response and mass
 CVkm::Engine::Math::RngPCG32 pseudo-random generator (O'Neill, 2014)
 CVkm::Engine::SampleTrack< N >A short history of where one entity was, kept by tick
 CVkm::Engine::SceneCentral registry managing entities and an open set of component types
 CVkm::Engine::ScriptComponentECS component attaching owned, polymorphic Behaviors to an entity
 CVkm::Engine::ScriptModuleLoads the hot-reloadable gameplay module and swaps it at runtime
 CVkm::Engine::SkinVertexOne vertex's binding to the rig, in a stream parallel to vertices
 CVkm::Engine::SkyAnglesWhere a celestial body sits, in the authored angle form
 CVkm::Engine::SkySettingsSky and image-based lighting: what the world is lit by and set against
 CVkm::Engine::SlotAllocatorLightweight slot allocator that issues generation-safe handles
 CVkm::Engine::SolverMath::SoftConstraintThe three numbers that make a correction a stiff, damped spring
 CVkm::Engine::SolverParamsWhat the solver is told about the step it is solving
 CVkm::Engine::SplashEntryOne logo a project shows at startup, and how long for
 CVkm::Engine::SplashFrameWhat the splash looks like this frame, or nothing; SplashSystem's product
 CVkm::Engine::StorageIndexOpaque handle pairing a sparse-array index with a generation counter
 CVkm::Engine::SupportShapeA convex shape reduced to the one question GJK asks: its furthest point along a direction
 CVkm::Engine::SystemAbstract base class for per-frame systems
 CVkm::Engine::TextureParamsFull sampling + storage description for a texture, consumed by the backend on upload
 CVkm::Engine::ThreadPoolFixed-size pool of worker threads draining two task queues
 CVkm::Engine::TouchingPairA broadphase pair that touched this tick, as its chunk hands it to the merge
 CVkm::Engine::TrackedPairTwo colliders touching on a live tick, as the contact events track them across ticks
 CVkm::Engine::Reflect::Traits< T >The reflection trait, specialised per type by VKM_REFLECT_BEGIN / VKM_F / VKM_REFLECT_END
 CVkm::Engine::TransformLocal position, rotation and scale of an entity
 CVkm::Engine::TriggerEventSomething began, kept or stopped overlapping a trigger collider this tick
 CVkm::Engine::TypeRegistry< Base >One slot per type, indexed by typeId<T>() and filled on first use
 CVkm::Engine::UdpSocketA non-blocking UDP socket, the same on Windows and Linux
 CVkm::Engine::UIButtonAn interactive, hit-tested button drawn over its element's rect
 CVkm::Engine::UICanvasRoot of a screen-space UI layer
 CVkm::Engine::UIClickEventFired when a UIButton is clicked (a press released over the same button)
 CVkm::Engine::UIDrawCmdA contiguous run of UI vertices that share draw state
 CVkm::Engine::UIDrawDataThe backend-agnostic UI overlay for one frame, published on FrameContext::ui
 CVkm::Engine::UIElementThe 2D rect of a UI node - the screen-space analogue of Transform
 CVkm::Engine::UIImageA filled quad drawn over its element's resolved rect
 CVkm::Engine::UIRectAn axis-aligned screen-space rectangle (top-left origin, pixels)
 CVkm::Engine::UIScrollMakes an element's children scroll inside it, and clips them to it
 CVkm::Engine::UIShapeHow a filled quad is drawn beyond its flat tint: corners, an edge, a fade
 CVkm::Engine::UITextText drawn within its element's rect, on as many lines as it breaks into
 CVkm::Engine::UIVertexOne vertex of the UI's 2D triangle stream
 CVkm::Engine::UnknownBehaviorA behavior whose type the registry does not know, kept verbatim
 CVkm::Engine::ComponentSerializer::UnresolvedRefAn asset name a load failed to resolve, and the field it was read from
 CVkm::Engine::ComponentSerializer::UnresolvedScopeBounds one component load's share of the unresolved list
 CVkm::Engine::VertexOne vertex: position, normal, texture coordinates and tangent frame
 CVkm::Engine::HostChrome::ViewportRectA rect in framebuffer pixels: the unit glViewport takes
 CVkm::Engine::VisibilityVisibilitySystem's per-frame product: camera data, every scene mesh, and which of them the camera sees
 CVkm::Engine::VisibilityContextPer-frame data the culls read
 CVkm::Engine::VoiceParamsEverything the mixer needs to know about one voice, pushed every frame
 CVkm::Engine::WindowManagerOwns the application's window, GL context, input, and frame limiting
 CVkm::Engine::WorldTransformCached world-space model matrix for entities in a hierarchy