Komodo Engine
C PROJECT_LOGO=
Komodo.Core.ECS.Components.Component Class Reference

Abstract class defining all Components. A class derived from Component will be managed by an appropriate Komodo.Core.ECS.Systems.ISystem. More...

Inheritance diagram for Komodo.Core.ECS.Components.Component:
Komodo.Core.ECS.Components.BehaviorComponent Komodo.Core.ECS.Components.CameraComponent Komodo.Core.ECS.Components.Drawable2DComponent Komodo.Core.ECS.Components.Drawable3DComponent Komodo.Core.ECS.Components.PhysicsComponent Komodo.Core.ECS.Components.SoundComponent Komodo.Core.ECS.Components.SpriteComponent Komodo.Core.ECS.Components.TextComponent Komodo.Core.ECS.Components.RigidBodyComponent Komodo.Core.ECS.Components.DynamicBodyComponent Komodo.Core.ECS.Components.KinematicBodyComponent Komodo.Core.ECS.Components.StaticBodyComponent Komodo.Core.ECS.Components.TriggerBodyComponent

Protected Member Functions

 Component (bool isEnabled=true, Entity parent=null)
 

Properties

GameGame [get]
 Each Component maintains a reference to the Komodo.Core.Game instance. More...
 
Guid ID [get]
 Unique identifier for the Component. More...
 
bool IsEnabled [get, set]
 Enabled Components are managed by their corresponding Komodo.Core.ECS.Systems.ISystem, otherwise the Component is ignored. More...
 
bool IsInitialized [get, set]
 Uninitialized Components are initialized by their corresponding Komodo.Core.ECS.Systems.ISystem, otherwise the Component is initialized on the next Komodo.Core.ECS.Systems.ISystem.Initialize, Komodo.Core.ECS.Systems.ISystem.PreUpdate, or Komodo.Core.ECS.Systems.ISystem.PostUpdate methods. More...
 
Entity Parent [get, set]
 Each Component belongs to a Komodo.Core.ECS.Entities.Entity and maintains a reference to the parent Komodo.Core.ECS.Entities.Entity. More...
 
Vector3 Position [get, set]
 Each Component has a position relative to their Parent. More...
 
Vector3?? WorldPosition [get]
 The sum of Position and the Parent's Komodo.Core.ECS.Entities.Entity.Position, representing the Component's position in world space. More...
 
Vector3?? Rotation [get, set]
 Derived from the Parent's Komodo.Core.ECS.Entities.Entity.Rotation. More...
 
Matrix?? RotationMatrix [get]
 Derived from the Parent's Komodo.Core.ECS.Entities.Entity.RotationMatrix. More...
 
Quaternion?? RotationQuaternion [get]
 Derived from the Parent's Komodo.Core.ECS.Entities.Entity.RotationQuaternion. More...
 
Vector3?? Scale [get, set]
 Derived from the Parent's Komodo.Core.ECS.Entities.Entity.Scale. More...
 

Detailed Description

Abstract class defining all Components. A class derived from Component will be managed by an appropriate Komodo.Core.ECS.Systems.ISystem.

Property Documentation

◆ Game

Game? Komodo.Core.ECS.Components.Component.Game
get

Each Component maintains a reference to the Komodo.Core.Game instance.

◆ ID

Guid Komodo.Core.ECS.Components.Component.ID
get

Unique identifier for the Component.

◆ IsEnabled

bool Komodo.Core.ECS.Components.Component.IsEnabled
getset

Enabled Components are managed by their corresponding Komodo.Core.ECS.Systems.ISystem, otherwise the Component is ignored.

◆ IsInitialized

bool Komodo.Core.ECS.Components.Component.IsInitialized
getset

◆ Parent

Entity Komodo.Core.ECS.Components.Component.Parent
getset

Each Component belongs to a Komodo.Core.ECS.Entities.Entity and maintains a reference to the parent Komodo.Core.ECS.Entities.Entity.

◆ Position

Vector3 Komodo.Core.ECS.Components.Component.Position
getset

Each Component has a position relative to their Parent.

◆ Rotation

Vector3?? Komodo.Core.ECS.Components.Component.Rotation
getset

◆ RotationMatrix

Matrix?? Komodo.Core.ECS.Components.Component.RotationMatrix
get

◆ RotationQuaternion

Quaternion?? Komodo.Core.ECS.Components.Component.RotationQuaternion
get

◆ Scale

Vector3?? Komodo.Core.ECS.Components.Component.Scale
getset

◆ WorldPosition

Vector3?? Komodo.Core.ECS.Components.Component.WorldPosition
get

The sum of Position and the Parent's Komodo.Core.ECS.Entities.Entity.Position, representing the Component's position in world space.