• Studio

  • Studio API

  • Bots

  • Web API

  • Designer Resources

  • Host Resources

  • GameObject

    Inherits from: Object

    In Unity, a GameObject refers to an object existing in your game's world -- everything from characters, buildings, landscapes, to lights, cameras, and more can be GameObjects. It acts as encompassing container or entity that could carry multiple types of components that dictate how this GameObject behaves and interacts in your game.

    A GameObject can be as simple as a single point of light in a dark room or as complex as a character with AI-driven behaviors, interactive elements, physical properties, etc. It just depends on what kind of components you attach to it. Examples of components include scripts (pieces of code that dictate GameObject behavior), physics components like Rigidbodies or Colliders, audio sources, and much more.

    Understanding GameObjects is vital to building anything in Unity, as they comprise the functional elements of all scenes, mechanics, and interactions within the game engine. For more extensive understanding, consider perusing the official Unity documentation.

    Properties

    ServerAndClient

    This property is used to access the Transform of the GameObject. The Transform controls the position, rotation, and scale of the GameObject in the scene. For more details, check out the official Unity documentation.

    ServerOnly

    The owner is the player associated with this GameObject. nil if there is no owner

    layer

    number

    This property allows you to manipulate the layer that the GameObject is part of. Layers can be used for various purposes such as rendering and collision detection. Refer to the official Unity documentation for more information.

    activeSelf

    boolean

    The activeSelf property indicates whether the GameObject is active in the scene or not. If a GameObject is inactive, it will not be rendered and will not trigger any of its script events. For more information, visit the official Unity documentation.

    The activeInHierarchy property checks if the GameObject is active in its hierarchy. If a parent GameObject is inactive, then all of its children will also be inactive regardless of their activeSelf status. Find more details in the official Unity documentation.

    isStatic

    boolean

    The isStatic property is used for designating whether a GameObject is static. A static GameObject will not move, rotate, or scale throughout its existence. This is useful for objects like buildings or landscape features. More information here.

    tag

    string

    The tag property is a custom and flexible way of classifying GameObjects for quick and easy reference. You could tag a GameObject as a 'Player', 'Enemy', or any other descriptor. This can be largely beneficial when dealing with specific groups of objects. Details can be found in the official Unity documentation.

    The sceneCullingMask property includes information about which scenes should be included in or excluded from certain operations. It is essentially a filter that can be applied to the scene. Additional information can be found in the official Unity documentation.

    The gameObject property is a reference to the GameObject itself. This is often used when a script attached to a GameObject needs to refer to the GameObject it is attached to. Here is the link for more details.

    Methods

    The GetComponent method allows you to access a component attached to the GameObject, if it exists. This includes built-in components like a Transform or Collider, or custom scripts that you've written. For more information, refer to Unity's official documentation.

    Returns

    Component

    Returns the requested component attached to the GameObject, if it exists.

    ServerAndClient

    The AddScript method enables you to attach a new LuaScript to the GameObject during runtime. This allows the GameObject to exhibit the defined behaviors in the script and execute it immediately.

    Parameters

    script
    LuaScript

    The LuaScript to be attached to the GameObject.

    Returns

    Component

    Returns the Class.LuaBehaviour component that has been added to the GameObject hosting your script.

    ServerAndClient

    The FindGameObjectsWithTag method returns all active GameObjects with the specified tag. It allows you the convenience of accessing multiple GameObjects at once based on their tags in a single method. For more information, refer to Unity's GameObject.FindGameObjectsWithTag Documentation.

    Parameters

    tag

    string

    The tag to search GameObjects for.

    Returns

    GameObject[]

    Returns an array of GameObjects tagged with the specified string.

    The GetComponentInChildren method is similar to GetComponent, but it also searches through all the GameObject's children to find the requested component. This can be helpful when dealing with complex structures like character rigs. Learn more from the official Unity Documentation.

    Parameters

    type
    Type

    The type of Component to search for.

    includeInactive

    boolean

    If set to true, the method will search within inactive GameObjects as well.

    Returns

    Component

    Returns the requested component found within the GameObject's children, if it exists.

    The GetComponentInParent method allows you to fetch a specific component from the GameObject's parent. If there are multiple instances of the same component, it will return the first component it finds. For more details, refer to Unity's official documentation.

    Parameters

    type
    Type

    The type of Component to search for.

    includeInactive

    boolean

    If set to true, the method will search within inactive GameObjects as well.

    Returns

    Component

    Returns the requested component found within the GameObject's parent, if it exists.

    With the AddComponent method, you can add a new component of a specified type to a GameObject during runtime. This is useful for dynamically altering the behavior of GameObjects. Click here for more information.

    Parameters

    componentType
    Type

    The type of the Component to be added.

    Returns

    Component

    Returns the newly added component to the GameObject.

    The GetComponentCount method allows you to get the total number of components attached to the GameObject. This can be useful when you want to know how many components a GameObject has for debugging or optimization purposes. To learn more, visit Unity's GameObject.GetComponentCount Documentation.

    Returns

    number

    Returns the number of components attached to the GameObject.

    The GetComponentAtIndex method is used to access a specific component attached to the GameObject based on its index. This can be helpful when dealing with multiple components of the same type. For additional details, visit Unity's GameObject.GetComponentAtIndex Documentation.

    Parameters

    index

    number

    The index of the Component to access.

    Returns

    Component

    Returns the component at the specified index.

    The GetComponentIndex method returns the index of a specific Component attached to the GameObject. This is useful when you need to know the order of components attached to the GameObject. More information can be found at Unity's GameObject.GetComponentIndex Documentation.

    Parameters

    component
    Component

    The Component to find the index of.

    Returns

    number

    Returns the index of the specified component if it exists on the GameObject, else -1.

    The SetActive method is used for activating or deactivating a GameObject during runtime. An inactive GameObject will not render in the scene and its scripts will not run. For further details, refer to the Unity's official documentation.

    Parameters

    value

    boolean

    The state to set the GameObject to. True for active, false for inactive.

    Returns

    void

    The method does not return any value.

    The CompareTag method allows you to determine if a GameObject's tag matches a specified string. It's a helpful tool when you want to perform certain operations on a specific group of GameObjects. Details found here.

    Parameters

    tag

    string

    Tag to compare the GameObject's tag with.

    Returns

    boolean

    Returns true if the GameObject's tag matches the specified string, false otherwise.

    The FindWithTag method returns the first active GameObject tagged with a specified string. This can be particularly useful to quickly access specific GameObjects in the scene. More information can be found in the Unity documentation.

    Parameters

    tag

    string

    The tag to search GameObjects for.

    Returns

    GameObject

    Returns the first active GameObject tagged with the specified string.

    The 'FindGameObjectWithTag' method looks for an active GameObject in the scene that has the specified tag. If multiple GameObjects have the given tag, only the first one will be returned. Check out the official Unity documentation for more information.

    Parameters

    tag

    string

    The tag to look for among the GameObjects in the scene.

    Returns

    GameObject

    Returns the first active GameObject with the specified tag.

    The 'Find' method allows you to search for an active GameObject by name in the entire scene. It is recommended to avoid using this method frequently as it can be performance intensive, especially in large scenes. More details can be found in the official Unity documentation.

    Parameters

    name

    string

    The name of the GameObject to find.

    Returns

    GameObject

    Returns the first active GameObject with the specified name.

    Updated about 1 month ago

    PocketWorlds Icon

    © 2024 Pocket Worlds. All rights reserved.