Currently there is a maximum of 65536 GameObjects at any given time. These are statically allocated at startup.
struct GameObject
A 32 bit handle.
enum GameObjectState
One of
GameObjectStateNull
,
GameObjectStateEnabled
,
GameObjectStateDisabled
,
GameObjectStateDestroyed
GameObject_Create(void)
: GameObject
Create a new GameObject.
GameObject_CreateInactive(void)
: GameObject
Create a new GameObject that is disabled.
GameObject_Instantiate(
GameObject
source )
: GameObject
Clone the GameObject at source recursively.
GameObject_Destroy(
GameObject
object )
: void
Destroy the GameObject, if it exists.
GameObject_Exists(
GameObject
object )
: bool
Returns true if the GameObject is non-null.
GameObject_Status(
GameObject
object )
: GameObjectState
Returns the state of this GameObject.
GameObject_ActiveSelf(
GameObject
object )
: bool
Returns the active status of the object independent of the hierarchy. Returns false if the GameObject is null.
GameObject_ActiveInHierarchy(
GameObject
object )
: bool
Returns the active status of the object taking the hierarchy into account. Returns false if the GameObject is null.
GameObject_Parent(
GameObject
object )
: GameObject
Returns the object’s parent. If the object is null, a warning is logged and a null object is returned.
GameObject_FirstChild(
GameObject
object )
: GameObject
Returns the object’s first child. If the object is null, a warning is logged and a null object is returned.
GameObject_NextSibling(
GameObject
object )
: GameObject
Returns the object’s next sibling. If the object is null, a warning is logged and a null object is returned.
GameObject_PreviousSibling(
GameObject
object )
: GameObject
Returns the object’s previous sibling. If the object is null, a warning is logged and a null object is returned.
GameObject_LocalPosition(
GameObject
object )
: Float3
Returns the local position of this object. If the object is null, a warning is logged and NaN is returned.
GameObject_WorldPosition(
GameObject
object )
: Float3
Returns the world position of this object. If the object is null, a warning is logged and NaN is returned.
GameObject_LocalRotation(
GameObject
object )
: Quaternion
Returns the local rotation of this object. If the object is null, a warning is logged and NaN is returned.
GameObject_WorldRotation(
GameObject
object )
: Quaternion
Returns the world position of this object. If the object is null, a warning is logged and NaN is returned.
GameObject_LocalScale(
GameObject
object )
: float
Returns the local scale of this object. If the object is null, a warning is logged and NaN is returned.
GameObject_WorldScale(
GameObject
object )
: float
Returns the world scale of this object. If the object is null, a warning is logged and NaN is returned.
GameObject_TransformPoint(
GameObject
object,
Float3
point )
: Float3
Transform the point from game-object-local to world space, using scale, rotation, and position. If the object is null, a warning is logged and NaN is returned.
GameObject_TransformFloat(
GameObject
object,
Float3
Float )
: Float3
Transform the Float from game-object-local to world space, using scale and rotation. If the object is null, a warning is logged and NaN is returned.
GameObject_TransformDirection(
GameObject
object,
Float3
direction )
: Float3
Transform the direction from game-object-local to world space, using rotation. If the object is null, a warning is logged and NaN is returned.
GameObject_InverseTransformPoint(
GameObject
object,
Float3
point )
: Float3
Transform the point from world to game-object-local space, using scale, rotation, and position. If the object is null, a warning is logged and NaN is returned.
GameObject_InverseTransformFloat(
GameObject
object,
Float3
Float )
: Float3
Transform the Float from world to game-object-local space, using scale and rotation. If the object is null, a warning is logged and NaN is returned.
GameObject_InverseTransformDirection(
GameObject
object,
Float3
direction )
: Float3
Transform the direction from world to game-object-local space, using rotation. If the object is null, a warning is logged and NaN is returned.
GameObject_TransformMatrix(
GameObject
object, float asset_scale )
: Float4x4
Returns the matrix transforming points from local to world space, scaled by asset_scale
. If the object is null, a warning is logged and NaN is returned.
GameObject_InverseTransformMatrix(
GameObject
object, float asset_scale )
: Float4x4
Returns the matrix transforming points from world to local space, scaled by asset_scale
. If the object is null, a warning is logged and NaN is returned.
GameObject_LastModifiedFrame(
GameObject
object)
: uint64_t
Returns the last frame this object was modified. If the object is null, a warning is logged and 0 is returned.
GameObject_Activate(
GameObject
object )
: GameObjectState
Activates the object if possible and returns the state of the object. This will recursively update children.
GameObject_Deactivate(
GameObject
object )
: GameObjectState
Deactivates the object if possible and returns the state of the object. This will recursively update children.
GameObject_SetParent(
GameObject
object,
GameObject
parent )
: bool
Set the object’s parent. Returns true if the operation succeeds. Returns false if either object is null or destroyed, or the operation would create a cycle.
GameObject_MakeRoot(
GameObject
object )
: bool
Set the object to be a root. This will unparent the object from its parent, if it has one. Returns true if the operation succeeds. Returns false if the object is null or destroyed.
GameObject_SetLocalPosition(
GameObject
object,
Float3
position )
: bool
Set the object’s local position and update the hierarchy. Returns false if the object is null.
GameObject_SetWorldPosition(
GameObject
object,
Float3
position )
: bool
Set the object’s world position and update the hierarchy. Returns false if the object is null.
GameObject_SetLocalRotation(
GameObject
object,
Quaternion
rotation )
: bool
Set the object’s local rotation and update the hierarchy. Returns false if the object is null.
GameObject_SetWorldRotation(
GameObject
object,
Quaternion
rotation )
: bool
Set the object’s world rotation and update the hierarchy. Returns false if the object is null.
GameObject_LookAt(
GameObject
object,
Float3
point )
: bool
Set the object’s rotation to face point
and update the hierarchy. Returns false if the object is null.
GameObject_SetLocalScale(
GameObject
object, float scale )
: bool
Set the object’s local scale and update the hierarchy. Returns false if the object is null.
GameObject_SetWorldScale(
GameObject
object, float scale )
: bool
Set the object’s world scale and update the hierarchy. Returns false if the object is null.