Introducció
En aquest tema, aprendrem sobre els objectes de joc bàsics i els components en Unity. Els objectes de joc (GameObjects) són els elements fonamentals de qualsevol projecte en Unity, i els components són les peces que defineixen el comportament i les propietats d'aquests objectes.
Objectius
- Entendre què són els objectes de joc (GameObjects) i els components.
- Aprendre a crear i manipular objectes de joc.
- Familiaritzar-se amb els components bàsics i com s'utilitzen per donar funcionalitat als objectes de joc.
- Què és un Objecte de Joc (GameObject)?
Un GameObject és una entitat bàsica en Unity que representa qualsevol objecte en una escena. Pot ser un personatge, un arbre, una llum, una càmera, etc. Els GameObjects no tenen comportament per si mateixos; necessiten components per definir les seves propietats i comportament.
Característiques dels GameObjects
- Transform: Tots els GameObjects tenen un component Transform que defineix la seva posició, rotació i escala en l'espai 3D.
- Components: Els GameObjects poden tenir múltiples components que defineixen el seu comportament i aparença.
- Creant un Objecte de Joc
Pas 1: Crear un Nou Projecte
- Obre Unity i crea un nou projecte.
- Selecciona una plantilla 3D.
Pas 2: Afegir un Objecte de Joc
- A la jerarquia (Hierarchy), fes clic dret i selecciona
3D Object > Cube
. - Veureu que un nou cub apareix a la jerarquia i a l'escena.
Pas 3: Manipular l'Objecte de Joc
- Selecciona el cub a la jerarquia.
- A l'inspector (Inspector), veuràs el component Transform amb les propietats
Position
,Rotation
iScale
. - Modifica aquestes propietats per moure, rotar o escalar el cub.
// Exemple de codi per crear un objecte de joc programàticament using UnityEngine; public class CreateGameObject : MonoBehaviour { void Start() { GameObject myCube = GameObject.CreatePrimitive(PrimitiveType.Cube); myCube.transform.position = new Vector3(0, 0, 0); } }
- Components Bàsics
Els components són les peces que defineixen el comportament i les propietats dels GameObjects. Alguns dels components bàsics inclouen:
Transform
El component Transform és present en tots els GameObjects i defineix la seva posició, rotació i escala.
Mesh Renderer
El component Mesh Renderer fa que un objecte sigui visible a l'escena. Renderitza la malla (mesh) de l'objecte.
Collider
Els colliders defineixen la forma física de l'objecte per a la detecció de col·lisions. Alguns tipus comuns de colliders són:
- Box Collider: Un collider en forma de caixa.
- Sphere Collider: Un collider en forma d'esfera.
- Capsule Collider: Un collider en forma de càpsula.
Rigidbody
El component Rigidbody permet que un objecte sigui afectat per la física, com la gravetat i les forces.
- Afegint Components a un Objecte de Joc
Pas 1: Seleccionar l'Objecte de Joc
- Selecciona el cub que has creat a la jerarquia.
Pas 2: Afegir un Component
- A l'inspector, fes clic a
Add Component
. - Cerca
Rigidbody
i selecciona'l per afegir-lo al cub.
Pas 3: Configurar el Component
- Un cop afegit, pots configurar les propietats del Rigidbody, com la massa, la gravetat, etc.
// Exemple de codi per afegir un component a un objecte de joc programàticament using UnityEngine; public class AddComponentExample : MonoBehaviour { void Start() { GameObject myCube = GameObject.CreatePrimitive(PrimitiveType.Cube); myCube.AddComponent<Rigidbody>(); } }
Exercicis Pràctics
Exercici 1: Crear i Manipular un Objecte de Joc
- Crea un nou objecte de joc (per exemple, una esfera).
- Canvia la seva posició, rotació i escala utilitzant el component Transform.
Exercici 2: Afegir Components
- Crea un cub i afegeix-li un component Rigidbody.
- Observa com el cub cau a causa de la gravetat quan executes l'escena.
Solucions
Exercici 1
- Crea una esfera:
3D Object > Sphere
. - Modifica les propietats del Transform a l'inspector.
Exercici 2
- Crea un cub:
3D Object > Cube
. - Afegeix un component Rigidbody:
Add Component > Rigidbody
.
Conclusió
En aquest tema, hem après què són els objectes de joc (GameObjects) i els components en Unity. Hem vist com crear i manipular objectes de joc, així com afegir components per definir el seu comportament. Aquests conceptes són fonamentals per a qualsevol projecte en Unity, ja que tots els elements del joc es basen en aquests principis bàsics. En el proper tema, explorarem la programació bàsica en Unity utilitzant C#.
Curs de Unity
Mòdul 1: Introducció a Unity
- Introducció a Unity i Instal·lació
- Visió General de la Interfície de Unity
- Creant el Teu Primer Projecte
- Objectes de Joc Bàsics i Components
Mòdul 2: Programació Bàsica en Unity
- Introducció a C# per a Unity
- Creant i Adjuntant Scripts
- Entenent MonoBehaviour
- Gestió Bàsica d'Entrades
Mòdul 3: Treballant amb Actius
- Important i Gestionant Actius
- Utilitzant la Botiga d'Actius
- Creant i Utilitzant Prefabs
- Animació Bàsica
Mòdul 4: Física i Col·lisions
- Introducció a la Física de Unity
- Rigidbody i Col·liders
- Detecció Bàsica de Col·lisions
- Utilitzant Materials de Física
Mòdul 5: Interfície d'Usuari (UI)
- Introducció a la UI de Unity
- Creant i Personalitzant Elements de UI
- Gestió d'Esdeveniments de UI
- Creant Menús i HUDs
Mòdul 6: Àudio en Unity
- Introducció a l'Àudio en Unity
- Important i Utilitzant Clips d'Àudio
- Programació Bàsica d'Àudio
- Àudio 3D i So Espacial
Mòdul 7: Programació Avançada
- Conceptes Avançats de C# per a Unity
- Coroutines i Programació Asíncrona
- Objectes Scriptables
- Editors Personalitzats i Gizmos
Mòdul 8: Física Avançada i IA
- Tècniques Avançades de Física
- Pathfinding i Navegació
- Programació Bàsica d'IA
- Màquines d'Estats i Arbres de Comportament
Mòdul 9: Optimització i Rendiment
- Tècniques de Perfilat i Optimització
- Gestió de Memòria
- Reduint Draw Calls
- Optimitzant Física i Col·lisions