Workflow: Components
Every GameObject has a Transform. Add only the Components that own required data or behavior; a smaller component set is easier to validate and consumes less serialized and runtime state.
Add and Remove Components
Select a GameObject and use Add Component in the Inspector. Search and category groups use the same display names shown in the component header. Right-click a component header to remove it. Removal clears that component's authored data, so use Undo immediately if it was accidental.
Component Groups
| Group | Components |
|---|---|
| Rendering | Mesh Renderer, Camera, Directional Light |
| Physics | Collider, Character Controller |
| Scripting and media | Lua Behaviour, Audio Source, Particle System |
| Animation | Transform Animator, Animator, Player Animator |
| Native player | Player Input, Player Motor, First Person Controller, Third Person Controller, Camera Rig, Camera Zone |
| Interaction | Interaction Ray, Interactable, Spawn Point |
| World authoring | Room, Portal, NavMesh Surface, Navigation Modifier, NavMesh Agent |
World-authoring components are configured through View > Advanced Scene Authoring. UI elements belong to UI Canvases and are not GameObject Components.
Common Compositions
| Goal | Typical Components |
|---|---|
| Static wall or floor | Mesh Renderer, Collider |
| Trigger pickup | Mesh Renderer, trigger Collider, Lua Behaviour, optional Audio Source |
| Interactive terminal | Mesh Renderer, Collider, Interactable, Lua Behaviour, optional Audio Source |
| First-person player | Character Controller, Player Input, Player Motor, First Person Controller, Camera Rig, Interaction Ray, Spawn Point |
| Third-person skinned player | Character Controller, Player Input, Player Motor, Third Person Controller, Camera Rig, Mesh Renderer, Animator, optional Player Animator |
| Transform-animated door | Mesh Renderer, Collider, Transform Animator, Lua Behaviour; optional Portal |
| Ambient effect | Particle System or looping Audio Source |
| Runtime path follower | Root GameObject with NavMesh Agent; separate root with NavMesh Surface |
These are starting points, not required genre templates. A project can implement inventory, interactions, AI state, menus, and progression in Lua by composing the public APIs rather than depending on a game-specific engine module.
References and Validation
Assign imported assets through GUID-backed Inspector fields. Use exposed Lua properties for scene references, and use the object picker rather than copying IDs when one is available. After changing Components:
- run Validate Project;
- resolve missing companion Components and references;
- inspect Show PS1 Budget for new persistent memory and count use;
- test Play Mode, then the packaged CUE.
See Components for properties and runtime behavior, Lua Scripting for the scripting contract, and Advanced Scene Authoring for world systems.