|
Engine²
Open-source game engine written in C++.
|
| NCameraMovement | |
| NResource | |
| CCameraControlSystemManager | CameraControlSystemManager is a resource that helps to manage the CameraControlSystem |
| CCameraManager | CameraManager is a resource that manages the active camera entity |
| NUtils | |
| CICameraBehavior | Base interface for camera behaviors |
| CDefaultBehavior | Default camera behavior with WASD movement and mouse look |
| CDontMoveBehavior | Camera behavior that does not move the camera |
| CCameraMovementError | |
| CPlugin | Plugin for camera movement control |
| NDefaultPipeline | |
| NComponent | |
| CGPUCamera | |
| CGPUDirectionalLight | |
| CGPUMaterial | |
| CGPUMesh | |
| CGPUTransform | |
| NResource | |
| CAmbientLight | |
| CAmbientLightBuffer | |
| CAmbientLightTransfer | |
| CCameraGPUBuffer | |
| CCameraTransfer | |
| CDirectionalLightBuffer | |
| CDirectionalLightTransfer | |
| CDirectionalLightsBuffer | |
| CGPUDirectionalLight | |
| CGPUDirectionalLights | |
| CIndexGPUBuffer | |
| CMaterialGPUBuffer | |
| CMaterialTransfer | |
| CPointGPUBuffer | |
| CPointLightsBuffer | |
| CGPUPointLight | |
| CPointLightsData | |
| CTransformGPUData | GPU buffer structure for model transform data |
| CTransformGPUBuffer | |
| CDeferred | |
| CGBuffer | |
| CShadow | |
| CPlugin | |
| Ndemo_setup | |
| CRmluiExampleError | |
| CTweeningParameters | |
| CDemoWindow | |
| CDemoEventListener | |
| CDemoEventListenerInstancer | |
| CDemoState | |
| NEngine | |
| NException | |
| CMissingResourceError | Exception thrown when a requested resource is not found in the Core |
| CMissingSchedulerError | Exception thrown when a requested scheduler is not found in the Core |
| NResource | |
| CTime | Resource that stores the elapsed time since the last frame |
| NScheduler | |
| CAScheduler | AScheduler is an abstract class that implements the IScheduler interface. It provides common functionalities for schedulers, such as enabling/disabling systems and error handling. It also provides a default implementation for the RunSystem function, which executes a system according to the scheduler policy |
| CFixedTimeUpdate | FixedTimeUpdate is a scheduler that runs systems at a fixed rate It is made to only be run a certain amount of times per second, skipping updates when the framerate is high and running multiple updates when the framerate is low. The time that passes is accumulated if the time between updates is greater than the tick rate or if there is a remainder from the last update(s) |
| CIScheduler | Interface for the schedulers. A scheduler is responsible for running systems according to a specific policy. Schedulers also manage how logic (system) should be handled |
| CRelativeTimeUpdate | RelativeTimeUpdate is a scheduler that runs systems at a defined rate. The tick rate is the maximum time we want between each system run. If the time between each system run is more than the target tick rate, we will run the systems multiple times with a delta time equal to the tick rate. Else, we will just run the systems once with the delta time we have (remaining) |
| CShutdown | Shutdown scheduler that runs systems only once when engine shuts down |
| CStartup | Startup scheduler that runs systems only once |
| CUpdate | Update scheduler that runs systems every time it is called |
| CCore | The core is the place where all the data of the engine is stored. It contains the registry (entities), the resources and the schedulers(+systems). It allows to manage entities so to create, delete them. It also allows to manage dependencies between schedulers. It also allows to aggregate plugins to it, and then plugins will be able to add resources and systems to the core |
| CEntity | Wrapper class providing a convenient interface for entity manipulation with the Core. Entity acts as a handle to an entity in the registry, combining a Core reference with an EntityId. It provides utility methods to add, remove, and query components, and maintains context relative to the Core it belongs to |
| CEntityId | Represents a unique identifier for an entity in the Engine's entity-component system. An EntityId is just Id with utility methods to manage components associated with the entity but not the core |
| CBasicId | An Id class for creating strongly-typed ID wrappers. This template provides a common interface for ID types by wrapping a value type with type-safe operations. Derived classes should implement static NullValue() and Null() methods to define null/invalid ID semantics |
| CId | A strongly-typed identifier wrapper based on entt::id_type. This structure provides a type-safe wrapper around EnTT's id_type, offering implicit conversion to the underlying type for seamless integration with EnTT components. It inherits from BasicId to provide null checking and other common ID operations |
| CStringId | Static assertion to ensure that the size of Id matches the size of entt::id_type, guaranteeing that there is no additional overhead from the wrapper and that it can be used interchangeably with entt::id_type without penalties |
| CAPlugin | Abstract plugin class that add some utility functions to make it easier to register systems and resources |
| CIPlugin | Interface for plugins that can be added to the engine |
| CSchedulerError | Custom exception class for scheduler-related errors |
| CSchedulerContainer | Manages a collection of schedulers, allowing addition, retrieval, and deletion of schedulers |
| CSystemContainer | Container class for managing multiple systems |
| CWrappedSystem | Wrapper around a system that allows to add an error callback to it |
| Nentt | |
| Centt_traits< Engine::Id > | Specialization of entt::entt_traits for Engine::Id, allowing it to be used as an entity identifier type in EnTT's ECS system. This specialization defines the necessary traits for Engine::Id to be recognized as a valid identifier type by EnTT, enabling its use in components, systems, and other EnTT features that rely on entity identifiers |
| NEvent | |
| NResource | |
| CEventManager | Thread-safe event manager for registering, queuing, and dispatching events |
| CDirectCallbackSchedulerTag | |
| NUtils | |
| CIEventContainer | |
| CEventContainer | |
| CPlugin | |
| Nfmt | |
| Cformatter< Engine::Entity > | Specialization of fmt::formatter for Engine::Entity to allow it to be formatted as a string using the fmt library. The format will be the same as the underlying EntityId, which will result in a human-readable representation of the entity's identifier |
| Cformatter< Engine::EntityId > | Specialization of fmt::formatter for Engine::EntityId to allow it to be formatted using the {fmt} library |
| Cformatter< Engine::Id > | Specialization of fmt::formatter for Engine::Id, allowing it to be formatted using the fmt library |
| Cformatter< Engine::StringId > | Specialization of fmt::formatter for Engine::StringId, allowing it to be formatted using the fmt library. This formatter formats the StringId by extracting the original string representation from the underlying entt::hashed_string and formatting it as a std::string_view, which provides a human-readable representation of the StringId for debugging and logging purposes |
| NFunctionUtils | |
| CBaseFunction | Base class for all functions contained in a FunctionContainer |
| CCallableFunction | Abstract class that holds a callable object, to be later stored in a container |
| CFunctionContainer | Container for functions, allowing for dynamic storage and invocation |
| Cis_derived_from_function_type | Type trait to check if a type is derived from BaseFunction |
| CCallableFunctionTest | |
| NGraphic | |
| NException | |
| CAdapterCreationError | |
| CBindGroupCreationError | |
| CCapabilitiesRequestError | |
| CDeviceCreationError | |
| CDuplicatedVertexAttributeLocationError | |
| CEndRenderTextureCreationError | |
| CFailToCreateCommandEncoderError | |
| CFileReadingError | |
| CFileWritingError | |
| CInstanceCreationError | |
| CMissingOutputRenderPassError | |
| CNonexistentComponentError | |
| CQueueCreationError | |
| CRenderPassSortError | |
| CSurfaceCreationError | |
| CUncapturedDeviceError | |
| CUnknownFileError | |
| CUnknownFormatType | |
| CUnsetAttributeTextureDescriptor | |
| CUnsupportedTextureFormatError | |
| CUpdateBufferError | |
| CVertexAttributeOverlappingError | |
| NResource | |
| CAGPUBuffer | |
| CAMultipleExecutionRenderPass | |
| CColorOutput | |
| CDepthOutput | |
| COutputContainer | |
| CInputContainer | |
| CARenderPass | |
| CASingleExecutionRenderPass | |
| CBindGroup | |
| CAsset | |
| CContext | |
| CDeviceContext | |
| CGraphicSettings | |
| CImage | |
| CLimits | |
| CRenderGraph | |
| CIDHash | |
| CSampler | |
| CShader | |
| CShaderDescriptor | |
| CSurface | |
| CCallbackData | |
| CTexture | |
| NUtils | |
| CValidationError | |
| CIValidable | |
| CABindGroupLayoutEntry | |
| CBindGroupLayout | |
| CBufferBindGroupLayoutEntry | |
| CColorTargetState | |
| CDepthStencilState | |
| CIBindGroupLayoutEntry | |
| CSamplerBindGroupLayoutEntry | |
| CTextureBindGroupLayoutEntry | |
| CVertexBufferLayout | |
| NTests | |
| NException | |
| CTestGraphicalError | |
| CPlugin | |
| NInput | |
| NResource | |
| CInputManager | |
| CInputError | |
| CPlugin | |
| NNativeScripting | |
| NComponent | |
| CNativeScripting | |
| NUtils | |
| CScriptableEntity | |
| CPlugin | |
| NObject | |
| NComponent | |
| CAmbientLight | |
| CCamera | |
| CDirectionalLight | |
| CMaterial | Material structure |
| CMesh | Mesh structure |
| CPointLight | |
| CTransform | |
| NHelper | |
| CCreateCubeInfo | Struct to hold parameters for creating a cube |
| CCreateSphereInfo | Struct to hold parameters for creating a sphere |
| CCreatePlaneInfo | Struct to hold parameters for creating a plane |
| CCreateCylinderInfo | Struct to hold parameters for creating a cylinder |
| CCreateCapsuleInfo | Struct to hold parameters for creating a capsule |
| CCreateClothInfo | Struct to hold parameters for creating a cloth |
| CCreateRopeInfo | Struct to hold parameters for creating a rope |
| CCreateJellyCubeInfo | Struct to hold parameters for creating a jelly cube |
| NResource | |
| CResourceManager | |
| CResourceLoader | ResourceLoader structure is used to load a resource from another resource or from arguments |
| CShape | Shape structure |
| COBJLoaderError | |
| CResourceManagerError | |
| COBJLoader | |
| NPhysics | |
| NBuilder | |
| CVehicleBuilder | Builder for creating vehicles with N wheels |
| CVehicleBuilder< 4 > | Specialized builder for 4-wheel vehicles |
| NComponent | |
| CBoxCollider | |
| CCapsuleCollider | |
| CCharacterController | Component representing a character controller, which allows for easy character movement and collision handling |
| CCharacterControllerInternal | Internal component that holds the Jolt CharacterVirtual object. Managed automatically by the plugin |
| CConstraintInternal | Internal component storing Jolt Physics constraint data |
| CConstraintSettings | |
| CConvexHullMeshCollider | Convex hull mesh collider |
| CDefaultCollider | Default collider using mesh bounds |
| CDistanceConstraint | |
| CFixedConstraint | |
| CMeshCollider | Triangle mesh collider (concave mesh support) |
| CPointConstraint | |
| CRigidBody | |
| CRigidBodyInternal | Internal component storing Jolt Physics data |
| CSoftBodySettings | Soft body simulation settings |
| CSoftBody | Soft body physics component |
| CSoftBodyInternal | Internal component storing Jolt soft body reference |
| CSphereCollider | |
| CTorqueCurvePoint | Torque curve point for normalized engine torque |
| CGearboxSettings | Gearbox configuration for vehicle transmission |
| CEngineSettings | Engine configuration |
| CRollbarSettings | Rollbar (anti-roll bar) configuration |
| CVehicle | Main vehicle component containing all configuration |
| CVehicleController | Vehicle input controller component |
| CVehicleInternal | Internal vehicle component storing Jolt-specific data |
| CFrictionCurvePoint | Friction curve point for tire friction modeling |
| CWheelSettings | Settings for an individual wheel in a vehicle |
| NEvent | |
| CCollisionAddedEvent | Event triggered when a collision starts between two entities |
| CCollisionPersistedEvent | Event triggered when a collision persists between two entities |
| CCollisionRemovedEvent | Event triggered when a collision ends between two entities |
| NException | |
| CCharacterControllerError | Exception type for errors related to character controllers |
| CConstraintError | Exception thrown when a constraint operation fails |
| CRigidBodyError | |
| CSoftBodyError | |
| CVehicleBuilderError | |
| NResource | |
| CPhysicsManager | |
| CVehicleTelemetry | |
| CEntityIdHash | |
| CEntityIdEqual | |
| NSystem | |
| CConstraintContext | |
| CVec3Hash | Hash function for glm::vec3 to use in unordered_map |
| CVec3Equal | Equality function for glm::vec3 (exact comparison) |
| CDeduplicatedMesh | Structure holding deduplicated mesh data for Jolt soft body |
| CCreateSettingsResult | Result of creating Jolt shared settings, includes vertex mapping |
| NUtils | |
| CBiMap | |
| CBPLayerInterfaceImpl | |
| CContactCallback | |
| CContactListenerImpl | ContactListener implementation |
| CObjectLayerPairFilterImpl | |
| CObjectVsBroadPhaseLayerFilterImpl | |
| CPlugin | |
| NRelationship | |
| NComponent | |
| CRelationship | |
| NRenderingPipeline | |
| CPlugin | This plugin create multiple schedulers that allows to create a rendering pipeline. It will add the following "startup" pipeline: |
| CBatching | Used for player's event handling like updating mouse position, buttons'state, etc |
| CCommandCreation | Used for player's event handling like updating mouse position, buttons'state, etc |
| CExtraction | Used for player's event handling like updating mouse position, buttons'state, etc |
| CInit | This class is used to initialize libraries like GLFW, etc |
| CPipelineCreation | Used for player's event handling like updating mouse position, buttons'state, etc |
| CPreparation | Used for player's event handling like updating mouse position, buttons'state, etc |
| CPresentation | Used for player's event handling like updating mouse position, buttons'state, etc |
| CPreUpdate | Used for player's event handling like updating mouse position, buttons'state, etc |
| CSetup | This class is used to setup libraries like GLFW, etc |
| CSubmission | Used for player's event handling like updating mouse position, buttons'state, etc |
| NRmlui | |
| NException | |
| CCreateRmlContextError | |
| CReadRmlDocumentError | |
| NResource | |
| CAUIContext | |
| CUIContext | |
| CInputCallbackIds | |
| CEventListenerEntry | |
| NUtils | |
| CIRenderer | |
| CRenderInterface | |
| CGeometryData | |
| CTextureData | |
| CDrawCommand | |
| CRmluiRenderPass | |
| CSystemInterface | |
| CPlugin | |
| NScene | |
| NResource | |
| CSceneManager | |
| CTransparentHash | |
| NUtils | |
| CAScene | |
| CPlugin | |
| NSound | |
| NResource | |
| CSoundManager | |
| CSound | |
| CTransparentHash | |
| CTransparentEqual | |
| CPlugin | |
| Nstd | STL namespace |
| Chash< Engine::EntityId > | Specialization of std::hash for Engine::EntityId to allow it to be used as a key in data containers like std::unordered_map |
| NTools | |
| CHasChanged | A struct representing if the object has changed |
| Nwgpu | |
| CDefaultFlag | |
| NWindow | |
| NEvent | |
| COnResize | |
| NException | |
| CWindowError | |
| NResource | |
| CWindow | |
| CPlugin | |
| CA | |
| CActionHistory | |
| CB | |
| CC | |
| CCharacterControllerExampleError | |
| CCharacterControllerExampleRuntime | |
| CChaseCameraBehavior | Chase camera behavior for vehicles |
| CCounterComponent | |
| CDirectorMonitorSystem | |
| CDirectorResource | |
| CEventExample | |
| CFunctionContainerTest | |
| CFunctor | |
| CFunctor | |
| CGPUBufferTest | |
| CGraphicExampleError | |
| CHistory | |
| CHistoryStorage | |
| CMockRenderPass | |
| CNameComponent | |
| COverlayState | |
| CPlayerVehicle | |
| CPluginTestA | |
| CPluginTestB | |
| CRenderGraphTest | |
| CResourceTest | |
| CRmluiExampleError | |
| CSceneTest | |
| CSchedulerTest1 | |
| CSchedulerTest2 | |
| CSingleExecutionRenderPassTest | |
| CTempComponent | |
| CTempComponentWithAttribut | |
| CTestComponent | |
| CTestEvent | |
| CTestGPUBuffer | |
| CTestResource | |
| CTestScheduler | |
| CTestSchedulerA | |
| CTestSchedulerB | |
| CTestScript | |
| CTestSystemClass | |
| CThirdPlayerCameraBehavior | |
| CWorkHoursUpdateSystem | |
| CWorkTimeComponent |