| Cnc::ecs::AccessPolicy< Base, Includes > | A proxy for ComponentRegistry providing filtered access to data pools |
| Cnc::AnyComponent | Generic interface around component types |
| ►Cnc::detail::AnyImplBase | |
| Cnc::detail::AnyImplConcrete< T > | |
| Cnc::detail::AnyImplStorage | |
| Cnc::config::AssetSettings | Options for configuring NcAsset |
| Cnc::task::AsyncDispatcher | Dispatcher for running tasks on the thread pool outside of a TaskGraph |
| Cnc::asset::AudioClip | |
| Cnc::asset::AudioClipView | |
| Cnc::AudioDevice | The name and device id of an available audio device |
| Cnc::config::AudioSettings | Options for configuring NcAudio |
| Cnc::AudioSourceFlags | Flags applying to all clips in an AudioSource |
| Cnc::AudioSourceProperties | Properties applying to all clips in an AudioSource |
| Cnc::asset::BonesData | |
| Cnc::asset::BoneSpaceToParentSpace | |
| Cnc::asset::BoneUpdateEventData | Event data for mesh bones/rig load and unload operations |
| Cnc::Box | |
| Cnc::CameraProperties | Properties for controlling a camera's frustum |
| Cnc::Capsule | |
| Cnc::CollisionListener | Component that receives collision event callbacks |
| Cnc::CollisionQuery | Interface for performing collision querries against rigid bodies |
| Cnc::CollisionQueryFilter | Parameter controlling inclusion and exclusion of bodies from a CollisionQuery |
| ►Cnc::ComponentBase | Optional base class for components |
| Cnc::AudioSource | Component managing audio clips |
| Cnc::FrameLogic | Component that runs a custom callable during each logic phase |
| ►Cnc::FreeComponent | Base class for free components |
| ►Cnc::Camera | Basic camera component |
| Cnc::SceneNavigationCamera | Camera for the editor's scene view |
| Cnc::Transform | Component with translation, rotation, and scale properties |
| Cnc::ComponentHandler< T > | Optional data and callbacks for generic component operations |
| Cnc::CompoundShapeBuilder | Interface for modifying a mutable CompoundShape |
| Cnc::config::Config | A collection of all configuration options |
| Cnc::Connection | An RAII object managing a Signal connection |
| Cnc::detail::ConnectionBacklink | |
| Cnc::Constraint | A physics constraint attaching the owning RigidBody to another |
| Cnc::Contacts | A list of contact points on a RigidBody |
| Cnc::asset::ConvexHull | |
| Cnc::ConvexHull | |
| Cnc::asset::ConvexHullUpdateEventData | Event data for ConvexHull load and unload operations |
| Cnc::asset::ConvexHullView | |
| Cnc::CookedShape | Handle to a processed Shape instance |
| Cnc::CookedShapeProperties | Properties of a CookedShape |
| Cnc::asset::CubeMap | |
| Cnc::asset::CubeMapUpdateEventData | Event data for cubemap load and unload operations |
| Cnc::asset::CubeMapView | |
| Cnc::asset::CubeMapWithId | A data/id pair for a loaded CubeMap |
| Cnc::SpringSettings::Damping | Spring damping value hints |
| Cnc::DecomposedMatrixXM | |
| ►Cnc::DefaultStoragePolicy | Default storage behavior for pooled components |
| Cnc::StoragePolicy< T > | Provide a specialization to customize storage options and behavior for a user-defined type |
| Cnc::StoragePolicy< RigidBody > | |
| Cnc::DegreeOfFreedom | Flags indicating allowed degrees of freedom of a RigidBody |
| Cnc::DeserializationContext | Context object passed to deserialization functions |
| Cnc::Differential | Differential settings for a wheel assembly |
| Cnc::DirectionalLight | Component representing an infinite, directional light, like the sun. Not implementing shadowing currently due to this type of light's proclivity for artifacts |
| Cnc::ui::DisableIf | RAII wrapper for conditionally disabling widgets within a scope |
| Cnc::DistanceConstraintInfo | Constraint settings to keep two bodies within a specified distance range |
| Cnc::ecs::EcsInterface< Base, Includes > | Interface for higher-level entity and component operations with optional type access restriction |
| Cnc::ui::editor::Editor | |
| Cnc::ui::editor::EditorContext | State for the editor |
| Cnc::ui::editor::EditorHotkeys | Hotkeys for the editor |
| Cnc::EmptyPassProperties | Post process property type representing an empty or uninitialized state |
| Cnc::config::EngineSettings | Settings for configuring the engine run loop and executor |
| Cnc::Entity | Identifies an object in the registry |
| Cnc::EntityInfo | Initialization data for Entities |
| Cnc::algo::detail::enumerate_view_fn | |
| Cnc::Environment | Contains global graphics properties |
| Cnc::FixedConstraintInfo | Constraint settings to rigidly fix two bodies together, limiting all relative motion |
| Cnc::Entity::Flags | Flags for configuring internal Entity behavior |
| Cnc::asset::FontInfo | |
| Cnc::asset::FontView | |
| Cnc::ecs::detail::FreeComponentGroup | |
| Cnc::ecs::FreeComponentPool | Single pool storing all FreeComponent instances |
| Cnc::SpringSettings::Frequency | Spring frequency value hints |
| Cnc::Frustum | |
| Cnc::Gradient | Gradient between two Colors |
| Cnc::config::GraphicsSettings | Options for configuring NcGraphics |
| Cnc::ecs::detail::HandleManager | |
| Cnc::Entity::Hash | Entity Hasher |
| Cnc::Hierarchy | Component managing an Entity's scene graph relationships |
| Cnc::HingeConstraintInfo | Constraint settings to attach two bodies with a hinge, limiting relative motion to rotation about a single axis |
| Cnc::HitInfo | Collision event information |
| Cnc::ui::ImGuiId | RAII wrapper for scoped uids |
| Cnc::ui::Indent | RAII wrapper for scoped indentation |
| Cnc::ui::internal::InputTextCallbackUserData | |
| Cnc::InvokeFreeComponent< T > | |
| ►Cnc::window::IOnResizeReceiver | |
| ►Cnc::ui::UIFixedElement | |
| Cnc::ui::UIFixed | |
| Cnc::ui::ItemWidth | RAII wrapper for scoped item width |
| ►Cnc::ui::IUI | |
| Cnc::ui::UIFixed | |
| Cnc::ui::UIFlexible | |
| Cnc::LoopAnimation | Animation state that loops until the exit condition is met |
| Cnc::asset::MagicNumber | Identifiers for asset blobs in .nca files |
| Cnc::MaterialDesc | Properties for constructing a MaterialInstance |
| Cnc::MaterialInstance | Owning wrapper around a material in GPU memory |
| Cnc::MaterialPassFlag | Material pass flags |
| Cnc::MaterialProperties | Properties of a MaterialInstance passed to shaders |
| Cnc::config::MemorySettings | Options for configuring pre-allocated pools |
| Cnc::asset::Mesh | |
| ►Cnc::MeshBase | Base class for mesh components |
| Cnc::SkinnedMesh | Component enabling rendering of an Entity with a given mesh, material, and skeletal animation |
| Cnc::StaticMesh | Component enabling rendering of an Entity with a given mesh and material |
| Cnc::asset::MeshCollider | |
| Cnc::asset::MeshColliderUpdateEventData | Event data for MeshCollider load and unload operations |
| Cnc::asset::MeshColliderView | |
| Cnc::MeshInstanceContext | Mesh component state for tracking internal instance data |
| Cnc::asset::MeshUpdateEventData | Event data for mesh load and unload operations |
| Cnc::asset::MeshVertex | |
| Cnc::asset::MeshView | |
| Cnc::MiscPassFlag | Pass flags that represent Miscellaneous passes |
| ►Cnc::Module | Modules are extensions that provide functionality to the engine |
| Cnc::NcAudio | Audio module interface |
| Cnc::NcGraphics | Graphics module interface |
| Cnc::NcPhysics | Physics module interface |
| Cnc::NcScene | Module managing the scene queue and transitions |
| Cnc::Random | Random number generator |
| Cnc::asset::NcAsset | Asset module interface |
| Cnc::ecs::NcEcs | Module managing ComponentRegistry operations |
| Cnc::window::NcWindow | Window module interface |
| Cnc::ModuleProvider | Provides access to registered Modules |
| Cnc::asset::NcaHeader | Common file header for all asset types |
| Cnc::NcEngine | Interface for the engine runtime and modules |
| Cnc::NearFarPoints | Two points lying on a Camera's near and far planes |
| Cnc::NoisePassProperties | Properties for the noise pass |
| Cnc::OutlinePassProperties | Properties for the outline pass |
| Cnc::ParticleColorInfo | Describes particle color properties |
| Cnc::ParticleEmissionInfo | Describes particle emission behavior for a ParticleEmitter |
| Cnc::ParticleEmitter | Component for creating particle effects |
| Cnc::ParticleInfo | Settings for a ParticleEmitter |
| Cnc::ParticleInitInfo | Describes initial particle properties |
| Cnc::ParticleKinematicInfo | Describes particle motion over time |
| Cnc::asset::PerVertexBones | |
| Cnc::config::PhysicsSettings | Options for configuring NcPhysics |
| Cnc::PhysicsSnapshot | Holds serialized physics state for performing physics simulation rollbacks |
| Cnc::PhysicsTick | Type safe wrapper representing a timepoint in the physics simulation |
| Cnc::detail::PlaceholderSourceLocation | |
| Cnc::Plane | |
| Cnc::PlayOnceAnimation | Animation state that plays once before transitioning to the exitTo state |
| Cnc::PointConstraintInfo | Constraint settings to attach two bodies at a point, limiting relative motion to rotation only |
| Cnc::PointLight | Component representing an omnidirectional light |
| Cnc::asset::PositionFrame | |
| Cnc::PostProcessPassFlag | Post process pass flags |
| Cnc::config::ProjectSettings | General project options |
| Cnc::ui::Property< Getter, Setter > | Simple getter/setter-based property wrapper |
| ►Cnc::type::PropertyBase | |
| Cnc::type::Property< T, P > | |
| Cnc::type::PropertyFlags | |
| Cnc::Quaternion | Quaternion type for representing 3D rotations |
| Cnc::type::uistream::detail::Range | |
| Cnc::Ray | Ray used for performing raycast queries |
| Cnc::RayCastResult | Result of a raycast query |
| Cnc::RigidBody | Component managing physics simulation properties |
| Cnc::RigidBodyFlags | Flags for configuring RigidBody behavior |
| Cnc::RigidBodyInfo | Properties for initializing a RigidBody |
| Cnc::asset::RotationFrame | |
| ►Cstd::runtime_error | |
| Cnc::NcError | Common exception type used throughout NcEngine |
| Cnc::asset::ScaleFrame | |
| Cnc::Scene | |
| Cnc::SceneCameraConfig | Movement settings for SceneNavigationCamera |
| Cnc::SceneFragmentHeader | Header for a binary scene fragment blob |
| Cnc::SerializationContext | Context object passed to serialization functions |
| Cnc::asset::Shader | |
| Cnc::asset::ShaderView | |
| Cnc::Shape | Describes collision geometry for physics types |
| Cnc::ShapeDecorationFlags | Flags describing internal structure of a CookedShape |
| Cnc::CookedShape::ShapeStorage | |
| Cnc::detail::SharedConnectionState | |
| Cnc::Signal< Args > | An event source supporting multiple Connections |
| Cnc::Signal< const nc::Vector2 &, bool > | |
| Cnc::Signal< const nc::Viewport & > | |
| Cnc::Signal< nc::Entity > | |
| Cnc::Signal< T & > | |
| Cnc::SignalPriority | Priority values for controlling call order from a Signal |
| Cnc::asset::SkeletalAnimation | |
| Cnc::SkeletalAnimationController | State machine that controls animation transitions for a SkinnedMesh |
| Cnc::asset::SkeletalAnimationFrames | |
| Cnc::asset::SkeletalAnimationUpdateEventData | Event data for skeletal animation load and unload operations |
| Cnc::asset::SkeletalAnimationView | |
| Cnc::SliderConstraintInfo | Constraint settings to attach two bodies with a slider, limiting relative motion to a single axis of translation |
| Cnc::detail::Slot< Args > | |
| Cnc::sparse_map< Value, Key > | A map-like container with O(1) insertion, removal, and lookup and O(N) iteration |
| Cnc::sparse_map< AnimationState > | |
| Cnc::sparse_map< nc::ecs::detail::FreeComponentGroup > | |
| Cnc::sparse_map< nc::Entity > | |
| Cnc::Sphere | |
| Cnc::SpotLight | Component representing a light pointing in a single direction with a radius for attenuation, and an inner and outer angle to specify both cone size and falloff |
| Cnc::SpringSettings | Settings for softening constraints with a spring-damper |
| Cnc::spsc_queue< T, N > | Fixed-size single-producer/single-consumer queue |
| ►Cnc::StableAddress | Base class for non-copyable non-movable types |
| Cnc::FileLogger | Basic file logging implementation. Construct this on the stack in main() to reroute logging to a file |
| Cnc::ModuleRegistry | |
| Cnc::SystemEvents | Signals for internal engine events |
| ►Cnc::ecs::ComponentPoolBase | Type-agnostic base class for component pools |
| Cnc::ecs::ComponentPool< T > | Type-aware implementation for component pools |
| Cnc::ecs::ComponentRegistry | Core collection of data pools and registration information game types |
| Cnc::ecs::EntityPool | Storage class for tracking active entities |
| Cnc::task::ExceptionContext | State shared between all tasks in a graph for storing an exception |
| Cnc::task::TaskGraphContext | Context object holding a TaskGraph's state |
| Cnc::StopAnimation | Animation state that stops the state machine. |
| Cnc::type::uistream::detail::StreamState | |
| Cnc::utility::StringHash | A constexpr string hash wrapper |
| Cnc::ui::StyleColor | RAII wrapper for scoped style color |
| Cnc::ui::StyleFont | RAII wrapper for ui font |
| Cnc::ui::StyleVar | RAII wrapper for scoped style var |
| Cnc::SubShapeInfo | Describes a SubShape to be added to a compound shape |
| Cnc::SupportBuffer | Wrapper around a scratch buffer used by support functions |
| Cnc::Suspension | Suspension settings for a wheel assembly |
| Cnc::SwingTwistConstraintInfo | Constraint settings to attach two bodies with a shoulder-like joint, limiting relative motion to rotation within a cone |
| Cnc::Tag | Component with a string tag |
| Cnc::task::Task | Task state for an item scheduled on a TaskGraph |
| Cnc::task::TaskGraph< Phase > | Task graph interface for building a TaskGraphContext with Module tasks |
| Cnc::TestShapeHit | Individual hit information from a shape test query |
| Cnc::TestShapeResult | Result of a shape collide query |
| Cnc::asset::Texture | |
| Cnc::asset::TextureSubResource | |
| Cnc::asset::TextureUpdateEventData | Event data for texture load and unload operations |
| Cnc::asset::TextureView | |
| Cnc::asset::TextureWithId | A data/id pair for a loaded texture |
| Cnc::Triangle | |
| Cnc::type::Type< T > | |
| ►Cnc::ui::UIElement | |
| Cnc::ui::UIFixedElement | |
| Cnc::ui::UIFlexible | |
| Cnc::type::UIStream | |
| Cnc::Vector2 | A two component vector |
| Cnc::Vector3 | A three component vector |
| ►Cnc::Vector4 | A four component vector |
| Cnc::Color | Four component color |
| Cnc::Vehicle | A vehicle that can be added to a RigidBody |
| Cnc::VehicleEngine | Settings for a configuring a Vehicle engine |
| Cnc::VehicleInfo | Initialization info for a Vehicle |
| Cnc::VehicleOrientation | Settings for configuring a Vehicle orientation |
| Cnc::VehicleTransmission | Settings for a configuring a Vehicle transmission |
| Cnc::asset::VertexSpaceToBoneSpace | |
| ►Cstd::ranges::view_interface | |
| Cnc::algo::detail::enumerate_view< V > | |
| Cnc::Viewport | A struct that controls the viewport and scissor size and placement |
| Cnc::WheelAssembly | Settings describing a set of wheels, suspension, and differential attached to a Vehicle |
| Cnc::WheelMount | Unique settings of a wheel in a WheelAssembly |
| Cnc::WheelSpec | Settings shared between all wheels in a WheelAssembly |
| Cnc::window::WindowInfo | The window's create info |
| Cnc::WireframeRenderer | Component for rendering wireframe models |
| Cnc::Xoshiro256ss | Random number engine based on Xoshiro256** by David Blackman and Sebastiano Vigna |