1. Inspector 직접 연결
- 필드 맴버로 연결할 클래스를 선언해 필드를 생성한 후, Hierachy에 등록된 게임 오브젝트를 Inspector에 연결
= 게임 오브젝트에 컴포넌트를 추가해 기능을 구현한다.
- 오류 가능성이 낮고
- 이름이 바뀌어도 유지된다.
GameObject.GetComponent
public T GetComponent();
- 컴포넌트를 찾으려면 해당 컴포넌트를 갖고 있는 게임 오브젝트를 먼저 알아야 한다.
- 모든 게임 오브젝트는 씬 위에 위치하기 때문에 Transform(위치, 회전, 크기) 컴포넌트를 갖는다.
- c# 스크립트는 게임 오브젝트에 붙어 있는 컴포넌트다. MonoBehavior을 상속 받는다. (new로 불러올 수 없음)
- App
using System.Collections;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using Unity.VisualScripting;
using UnityEngine;
public class App : MonoBehaviour
{
public Controler controler; // 필드 맴버를 선언해 게임 오브젝트가 등록될 필드를 뚫어놓는다.
void Start()
{
controler.Control();
}
}
- Controler
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Controler : MonoBehaviour
{
public enum State
{
Go, Stop
}
public State state;
void Start()
{
state = State.Go;
Debug.Log($"start State: {state}");
}
public void Control( )
{
state = State.Stop;
Debug.Log($"Con State: {state}");
}
}
'게임 클라이언트 프로그래밍' 카테고리의 다른 글
Audio Source 등록 (0) | 2024.08.22 |
---|---|
게임 오브젝트인 스크립트 컴포넌트의 매서드 실행하기 (0) | 2024.08.22 |
게임 오브젝트에 연결된 클래스에 접근 하는 방법 GameObject.Find(); (0) | 2024.08.21 |
게임 오브젝트에 연결된 클래스에 접근 하는 방법: FindObjectOfType<T>(); (0) | 2024.08.21 |
Vector(x,y,z) (1) | 2024.08.20 |