Skip to content

Class Hierarchy

github-actions[bot] edited this page Sep 12, 2026 · 7 revisions

Class Hierarchy

Total inheritance edges: 426. Derived from the exact first-party source contract.

Auto-generated by docs/generate-class-hierarchy.sh.

GameModules

classDiagram
    Projectile <|-- Bullet
    InteractiveObject <|-- ClassTerminal
    InteractiveObject <|-- DestructibleObject
    InteractiveObject <|-- DoorObject
    InteractiveObject <|-- ElevatorObject
    GameObject <|-- Enemy
    Projectile <|-- Grenade
    GameObject <|-- InteractiveObject
    InteractiveObject <|-- JumpPadObject
    GameObject <|-- ModelObject
    InteractiveObject <|-- PickupObject
    GameObject <|-- Player
    GameObject <|-- Projectile
    IQuestPolicy <|-- RPGGameplayBridge
    Projectile <|-- Rocket
    IModule <|-- SparkGameARPGModule
    IModule <|-- SparkGameDefaultModule
    IModule <|-- SparkGameMMOModule
    IModule <|-- SparkGameModule
    IModule <|-- SparkGameOpenWorldModule
    IModule <|-- SparkGamePlatformerModule
    IModule <|-- SparkGameRPGModule
    IModule <|-- SparkGameRTSModule
    IModule <|-- SparkGameRacingModule
    IModule <|-- SparkGameVisualScriptModule
    InteractiveObject <|-- SwitchObject
    IAreaSimulation <|-- TFServerSim
    InteractiveObject <|-- TeleporterObject
    IModule <|-- TerrafrontModule
    GameObject <|-- Vehicle
Loading

SparkDaemon

classDiagram
    ServiceBase <|-- AssetService
    ServiceBase <|-- CollaborationService
    ServiceBase <|-- ControlService
    ServiceBase <|-- ShaderService
Loading

SparkEditor

classDiagram
    EditorPanel <|-- AIDebugPanel
    EditorPanel <|-- AIEditorPanel
    EditorPanel <|-- AbilityEditorPanel
    EditorCommand <|-- AddConnectionCommand
    EditorCommand <|-- AddNodeCommand
    EditorPanel <|-- AdvancedAssetPipeline
    EditorPanel <|-- AssetBrowserPanel
    EditorPanel <|-- AudioMixerPanel
    AssetProcessor <|-- AudioProcessor
    EditorPanel <|-- BasicMaterialEditorPanel
    EditorCommand <|-- BatchCommand
    EditorPanel <|-- BuildCookPanel
    EditorPanel <|-- CSGEditorPanel
    EditorPanel <|-- CinematicSequencerPanel
    EditorPanel <|-- CollaborationPanel
    EditorCommand <|-- CommandHistoryAdapterCommand
    EditorCommand <|-- CompositeCommand
    ICommand <|-- CompoundCommand
    EditorPanel <|-- ConditionEditorPanel
    LogTarget <|-- ConsoleLogTarget
    EditorPanel <|-- ConsolePanel
    EditorPanel <|-- CoroutineDebugPanel
    EditorPanel <|-- DebugVisualizerPanel
    EditorPanel <|-- DecalEditorPanel
    EditorPanel <|-- DecorLayoutEditorPanel
    EditorPanel <|-- DedicatedServerPanel
    EditorPanel <|-- DestructionEditorPanel
    EditorPanel <|-- DialogueEditorPanel
    EditorPanel <|-- EventMonitorPanel
    EditorPanel <|-- EventResponsePanel
    EditorPanel <|-- FPSToolsPanel
    LogTarget <|-- FileLogTarget
    EditorPanel <|-- GameModuleSelectorPanel
    EditorPanel <|-- GameViewPanel
    EditorPanel <|-- HierarchyPanel
    EditorPanel <|-- InspectorPanel
    SceneComponentFieldWriter <|-- JSONSceneComponentWriter
    ICommand <|-- LambdaCommand
    EditorCommand <|-- LambdaEditorCommand
    EditorPanel <|-- LevelStreamingSystem
    EditorPanel <|-- LocalizationPanel
    EditorCommand <|-- MaterialCommand
    EditorPanel <|-- MaterialEditorPanel
    AssetMergeHandler <|-- MaterialMergeHandler
    LogTarget <|-- MemoryLogTarget
    AssetProcessor <|-- MeshProcessor
    EditorPanel <|-- ModdingPanel
    EditorPanel <|-- NetworkDebugPanel
    EditorPanel <|-- ObjectPlacementPanel
    EditorPanel <|-- ParticleEditorPanel
    EditorPanel <|-- PerformanceProfiler
    EditorPanel <|-- Physics2DPanel
    EditorPanel <|-- Physics3DPanel
    EditorPanel <|-- PlayControlPanel
    EditorPanel <|-- PlayModeToolbarPanel
    EditorPanel <|-- PrefabEditorPanel
    EditorPanel <|-- ProjectBrowserPanel
    EditorPanel <|-- ProjectSettingsPanel
    EditorPanel <|-- PrototypingPanel
    EditorPanel <|-- RegionMapEditorPanel
    EditorCommand <|-- RemoveNodeCommand
    EditorCommand <|-- ReparentCommand
    EditorPanel <|-- ReplayPanel
    EditorPanel <|-- SaveSystemPanel
    EditorPanel <|-- SceneImportPanel
    AssetMergeHandler <|-- SceneMergeHandler
    EditorPanel <|-- SceneStatisticsPanel
    EditorPanel <|-- SceneViewPanel
    EditorPanel <|-- ScriptDebugPanel
    EditorPanel <|-- ScriptEditorPanel
    EditorPanel <|-- SearchPanel
    EditorPanel <|-- ServiceTopologyPanel
    EditorPanel <|-- SplineEditorPanel
    EditorPanel <|-- SpriteAnimationEditorPanel
    EditorPanel <|-- SpriteEditorPanel
    EditorPanel <|-- StreamingPanel
    EditorPanel <|-- TerrainEditor
    AssetProcessor <|-- TextureProcessor
    EditorPanel <|-- TilemapEditorPanel
    EditorPanel <|-- TimeOfDayPanel
    EditorPanel <|-- TriggerEditorPanel
    EditorPanel <|-- UIDesignerPanel
    EditorPanel <|-- UndoHistoryPanel
    EditorPanel <|-- VRConfigPanel
    SceneComponentFieldWriter <|-- ValidatingSceneComponentWriter
    EditorPanel <|-- VersionControlSystem
    EditorPanel <|-- VisualScriptPanel
    EditorPanel <|-- WeaponEditorPanel
    EditorPanel <|-- WeatherFogPanel
    EditorPanel <|-- WorkflowPanel
Loading

SparkEngine

classDiagram
    ISystem <|-- AIIntegratedSystem
    ISystem <|-- AISystem
    ISystem <|-- AIUpdateSystem
    ISystem <|-- AbilityUpdateSystem
    BTNode <|-- ActionNode
    IPoseModifier <|-- AimIKModifier
    ISystem <|-- AnimationUpdateSystem
    IResourceProvider <|-- ArchiveResourceProvider
    IAssetValidationRule <|-- AssetMetadataValidator
    Asset <|-- AudioAsset
    SequencerTrack <|-- AudioCueTrack
    ISystem <|-- AudioUpdateSystem
    VolumeComponent <|-- BloomVolumeComponent
    ILogSink <|-- CallbackSink
    ISystem <|-- Camera2DFollowSystem
    SequencerTrack <|-- CameraPathTrack
    NoiseNode <|-- CellularNode
    IMovementGenerator <|-- ChargeGenerator
    IMovementGenerator <|-- ChaseGenerator
    VolumeComponent <|-- ColorGradingVolumeComponent
    NoiseNode <|-- CombinerNode
    BTNode <|-- ConditionNode
    EQSGenerator <|-- ConeGenerator
    IOnlinePlatform <|-- ConsolePlatform
    ILogSink <|-- ConsoleSink
    EQSTest <|-- CoverTest
    IBenchmarkScenario <|-- CpuSortBenchmark
    GameObject <|-- CubeObject
    IRHIBuffer <|-- D3D11Buffer
    IRHICommandList <|-- D3D11CommandList
    RHIDeviceBase <|-- D3D11Device
    IRHIPipelineState <|-- D3D11PipelineState
    IRHISampler <|-- D3D11Sampler
    IRHIShader <|-- D3D11Shader
    IRHISwapChain <|-- D3D11SwapChain
    IRHITexture <|-- D3D11Texture
    IRHIBuffer <|-- D3D12Buffer
    IRHICommandList <|-- D3D12CommandList
    RHIDeviceBase <|-- D3D12Device
    IRHIPipelineState <|-- D3D12PipelineState
    IRHISampler <|-- D3D12Sampler
    IRHIShader <|-- D3D12Shader
    IRHISwapChain <|-- D3D12SwapChain
    IRHITexture <|-- D3D12Texture
    ISystem <|-- DecalSystem
    IXAudio2EngineCallback <|-- DeviceLossCallback
    EQSScorer <|-- DirectionScorer
    EQSScorer <|-- DistanceScorer
    EQSTest <|-- DistanceTest
    NoiseNode <|-- DomainWarpNode
    Impl <|-- DynamicPluginHost
    IEngineContext <|-- EngineContext
    SequencerTrack <|-- EntityPropertyTrack
    SequencerTrack <|-- EntityTransformTrack
    IOnlinePlatform <|-- EpicPlatform
    SequencerTrack <|-- EventTrack
    VolumeComponent <|-- ExposureVolumeComponent
    NoiseNode <|-- FBMNode
    SequencerTrack <|-- FadeTrack
    ILogSink <|-- FileSink
    ISystem <|-- FixedTimestepPhysicsSystem
    IMovementGenerator <|-- FleeGenerator
    VolumeComponent <|-- FogVolumeComponent
    IMovementGenerator <|-- FollowGenerator
    IPoseModifier <|-- FootPlacementModifier
    IRHIBuffer <|-- GLBuffer
    IRHICommandList <|-- GLCommandList
    RHIDeviceBase <|-- GLDevice
    IRHIPipelineState <|-- GLPipelineState
    IRHISampler <|-- GLSampler
    IRHIShader <|-- GLShader
    IRHISwapChain <|-- GLSwapChain
    IRHITexture <|-- GLTexture
    IGameplayTagService <|-- GameplayTagRegistry
    EQSGenerator <|-- GridGenerator
    IMovementGenerator <|-- HomeGenerator
    IRHIResource <|-- IRHIBuffer
    IRHIResource <|-- IRHIPipelineState
    IRHIResource <|-- IRHISampler
    IRHIResource <|-- IRHIShader
    IRHIResource <|-- IRHITexture
    IMovementGenerator <|-- IdleGenerator
    LifecycleStage <|-- InitDebugStage
    LifecycleStage <|-- InitGameplayStage
    LifecycleStage <|-- InitNetworkingStage
    BTNode <|-- InverterNode
    BodyFilter <|-- LayerMaskBodyFilter
    IModule <|-- LegacyModuleAdapter
    ISystem <|-- LifecycleSystem
    ReactiveSystem <|-- LightChangeReactiveSystem
    IResourceProvider <|-- LocalFileProvider
    ITelemetryBackend <|-- LocalFileTelemetryBackend
    IPoseModifier <|-- LookAtModifier
    ReactiveSystem <|-- MaterialChangeReactiveSystem
    IAssetValidationRule <|-- MaterialTextureValidator
    MathUtilsExtended <|-- MathUtils
    IBenchmarkScenario <|-- MemoryChurnBenchmark
    Asset <|-- MeshAsset
    IRHIBuffer <|-- MetalBuffer
    IRHICommandList <|-- MetalCommandList
    IRHIDevice <|-- MetalDevice
    IGoldenImageCapture <|-- MetalGoldenImageCapture
    IRHIPipelineState <|-- MetalPipelineState
    Impl <|-- MetalRayTracingSystem
    IRHISampler <|-- MetalSampler
    IRHIShader <|-- MetalShader
    IRHISwapChain <|-- MetalSwapChain
    IRHITexture <|-- MetalTexture
    INetworkService <|-- NetworkManager
    INetworkRuntime <|-- NetworkManagerRuntimeAdapter
    IDenoiser <|-- NeuralDenoiser
    IAudioBackend <|-- NullAudioBackend
    IRHIBuffer <|-- NullBuffer
    IRHICommandList <|-- NullCommandList
    IPlatformInputBackend <|-- NullInputBackend
    IOnlinePlatform <|-- NullOnlinePlatform
    IRHIPipelineState <|-- NullPipelineState
    IRHIDevice <|-- NullRHIDevice
    IRHISampler <|-- NullSampler
    IRHIShader <|-- NullShader
    IRHISwapChain <|-- NullSwapChain
    IRHITexture <|-- NullTexture
    IAudioBackend <|-- OpenALAudioBackend
    ISystem <|-- ParallaxSystem
    BTNode <|-- ParallelNode
    ISystem <|-- ParticleUpdateSystem
    IMovementGenerator <|-- PatrolGenerator
    NoiseNode <|-- PerlinNode
    ISystem <|-- Physics2DUpdateSystem
    ISystem <|-- PhysicsUpdateSystem
    ShaderResource <|-- PixelShaderResource
    GameObject <|-- PlaneObject
    IMovementGenerator <|-- PointGenerator
    EQSScorer <|-- PredicateScorer
    EQSTest <|-- PredicateTest
    Impl <|-- Process
    Impl <|-- Process
    Impl <|-- Process
    ISystem <|-- ProjectileSystem
    GameObject <|-- PyramidObject
    IRHIDevice <|-- RHIDeviceBase
    GameObject <|-- RampObject
    IMovementGenerator <|-- RandomWanderGenerator
    ISystem <|-- RenderSystem
    BTNode <|-- RepeaterNode
    EQSGenerator <|-- RingGenerator
    IDatabaseConnection <|-- SQLiteConnection
    IAssetValidationRule <|-- SceneReferenceValidator
    BTNode <|-- SelectorNode
    BTNode <|-- SequenceNode
    IAssetValidationRule <|-- ShaderCompilationValidator
    LifecycleStage <|-- ShutdownStage
    NoiseNode <|-- SimplexNode
    IDenoiser <|-- SoftwareDenoiser
    BroadPhaseLayerInterface <|-- SparkBPLayerInterface
    BodyActivationListener <|-- SparkBodyActivationListener
    ContactListener <|-- SparkContactListener
    ObjectLayerPairFilter <|-- SparkObjectLayerPairFilter
    ObjectVsBroadPhaseLayerFilter <|-- SparkObjectVsBroadPhaseFilter
    GameObject <|-- SphereObject
    ISystem <|-- SplineFollowerSystem
    IMovementGenerator <|-- SplineGenerator
    ISystem <|-- Sprite2DRenderSystem
    ISystem <|-- SpriteAnimatorSystem
    Node2D <|-- SpriteNode
    ILogSink <|-- StderrSink
    IOnlinePlatform <|-- SteamPlatform
    ITransport <|-- SteamTransport
    SequencerTrack <|-- SubtitleTrack
    TypeAtImpl <|-- Tail
    ITelemetryService <|-- TelemetrySystem
    ISystem <|-- TerrainSystem
    Node2D <|-- TextNode
    Asset <|-- TextureAsset
    ISystem <|-- TilemapRenderSystem
    ITransport <|-- UDPTransport
    UIWidget <|-- UIButton
    UIWidget <|-- UIDropdown
    UIWidget <|-- UIFlexContainer
    UIWidget <|-- UIGridLayout
    UIWidget <|-- UIImageWidget
    UIWidget <|-- UILabel
    UIWidget <|-- UIPanel
    UIWidget <|-- UIProgressBar
    UIWidget <|-- UIScrollView
    UIWidget <|-- UISlider
    UIWidget <|-- UITextInput
    LifecycleStage <|-- UpdateStage
    ShaderResource <|-- VertexShaderResource
    IRHIBuffer <|-- VulkanBuffer
    IRHICommandList <|-- VulkanCommandList
    RHIDeviceBase <|-- VulkanDevice
    IRHIPipelineState <|-- VulkanPipelineState
    IRHISampler <|-- VulkanSampler
    IRHIShader <|-- VulkanShader
    IRHISwapChain <|-- VulkanSwapChain
    IRHITexture <|-- VulkanTexture
    YieldInstruction <|-- WaitForEndOfFrame
    YieldInstruction <|-- WaitForEvent
    YieldInstruction <|-- WaitForFrames
    YieldInstruction <|-- WaitForSeconds
    BTNode <|-- WaitNode
    YieldInstruction <|-- WaitUntil
    GameObject <|-- WallObject
    IMovementGenerator <|-- WaypointGenerator
    IAudioBackend <|-- XAudio2AudioBackend
    void_t <|-- std
    void_t <|-- std
Loading

SparkGateway

classDiagram
    IGatewayAuthenticator <|-- KeyFileAuthenticator
    IAreaControlPlane <|-- LocalAreaControlPlane
    streambuf <|-- ReadOnlyAdmissionBuffer
Loading

Templates

classDiagram
    IModule <|-- Blank3DModule
    IModule <|-- EmptyProjectModule
    IModule <|-- FPSStarterModule
    IModule <|-- MMOStarterModule
    IModule <|-- MultiplayerArenaModule
    IModule <|-- PlatformerKitModule
    IModule <|-- RPGStarterModule
    IModule <|-- ThirdPersonStarterModule
    IModule <|-- TopDownStarterModule
Loading

Tests

classDiagram
    ISystem <|-- AIUpdateSystem
    IEngineContext <|-- ARPGEngineTestContext
    BTNode <|-- ActionNode
    BTNode <|-- ActionNode
    asIBinaryStream <|-- AngelScriptMemoryByteCodeStream
    ISystem <|-- AnimationUpdateSystem
    ISystem <|-- AudioUpdateSystem
    EditorCommand <|-- BatchCommand
    IUndoCommand <|-- BoolFieldCommand
    numpunct <|-- CommaDecimalPoint
    IModule <|-- CompatibleModule
    EditorCommand <|-- ComponentCommand
    ICommand <|-- CompoundCmd
    BTNode <|-- ConditionNode
    IAreaSimulation <|-- CountingSimulation
    ISystem <|-- CountingSystem
    ITelemetryBackend <|-- CountingTelemetryBackend
    IQuestTypeExtension <|-- CraftingQuestExtension
    Base <|-- Derived
    ICommand <|-- DragCmd
    EditorCommand <|-- EntityCommand
    ISystem <|-- EntityCreatorSystem
    IQuestTypeExtension <|-- EscortQuestExtension
    IEditorPlugin <|-- FailingLifecyclePlugin
    IRHIBuffer <|-- FakeBuffer
    IRHIDevice <|-- FakeDevice
    ITelemetryBackend <|-- FixedResultTelemetryBackend
    Asset <|-- FixedSizeAsset
    AssetProcessor <|-- GateProcessor
    IUndoCommand <|-- IntFieldCommand
    BTNode <|-- InverterNode
    ProjectManager <|-- IsolatedProjectManager
    IGameModule <|-- LegacyModuleFixture
    ISystem <|-- LifecycleSystem
    Component <|-- Light
    IEngineContext <|-- MMOTestContext
    Component <|-- MeshRenderer
    INetworkRuntime <|-- MockNetworkRuntime
    IMovementGenerator <|-- Name
    IEngineContext <|-- NullEngineContext
    IEngineContext <|-- NullEngineContext
    IEngineContext <|-- OpenWorldStreamingContext
    ISystem <|-- OrderTrackingSystem
    Base <|-- OtherDerived
    PhaseMM_BaseType <|-- PhaseMM_DerivedType
    ISystem <|-- PhysicsUpdateSystem
    EditorCommand <|-- PropertyChangeCommand
    IDialogueExtension <|-- RPGDialogueExtension
    IEngineContext <|-- RacingTestContext
    IAudioBackend <|-- RecordingAudioBackend
    IEngineContext <|-- RecordingContext
    ISystem <|-- RecordingSystem
    ISystem <|-- RenderSystem
    EditorCommand <|-- ReparentCommand
    IAreaControlPlane <|-- ScriptedControlPlane
    BTNode <|-- SelectorNode
    BTNode <|-- SelectorNode
    BTNode <|-- SequenceNode
    BTNode <|-- SequenceNode
    ICommand <|-- SetIntCmd
    IUndoCommand <|-- SetValueCommand
    IModule <|-- SiblingDependentModule
    GameObject <|-- SphereObject
    IUndoCommand <|-- StringFieldCommand
    IBenchmarkScenario <|-- StubBenchmarkScenario
    IMigrationStep <|-- StubMigrationStep
    ISystem <|-- StubSystemA
    ISystem <|-- StubSystemB
    ISystem <|-- StubSystemC
    IEditorPlugin <|-- SuccessfulLifecyclePlugin
    IGatewayAuthenticator <|-- TestAuthenticator
    IDialogueExtension <|-- TestDialogueExtension
    IQuestTypeExtension <|-- TestQuestExtension
    IAssetValidationRule <|-- TestValidationRule
    IUndoCommand <|-- TextEditCommand
    IPoseModifier <|-- TrackingModifier
    EditorCommand <|-- TransformCommand
    YieldInstruction <|-- WaitForFrames
    YieldInstruction <|-- WaitForSeconds
    YieldInstruction <|-- WaitUntil
    void_t <|-- std
    FixtureClass <|-- testName
Loading

SparkEngine Wiki

Website Entry Points

Getting Started

Engine Subsystems

Gameplay & Tools

Platform Support

Graphics

Advanced

Development & Process

Research & Analysis

Engineering Notes & Audits

Specifications

Reference

Clone this wiki locally