내일배움캠프/TIL

[내배캠][Unity6기][TIL] Unity 입문 (1~5)

binary는 호남선 2024. 10. 7. 20:53

Preview

- Transform 컴포넌트
- Anchor와 Pivot
- GameObject.Find()
- 이벤트 함수 실행 순서


Transform 컴포넌트

- 모든 GameObject가 기본으로 가지고 있는 컴포넌트

- 위치, 크기, 회전 값을 설정

- GameObject는 Transform 컴포넌트를 통해 상속 관계 가짐

Anchor와 Pivot

Anchor

- 부모 요소에 대한 자식 UI 요소의 상대적 위치와 크기 정의

- 부모 요소 위치나 크기가 변하면 자식 요소 어떻게 변경할지 정의

- 상속 관계와 관련됨

Pivot 

-  UI 변형될 때 기준점

ex) hp바의 PivotX는 0으로 설정, 기본 값인 0.5면 hp가 양쪽에서 줄어드는 형태로 감소

GameObject.Find()

public static GameObject Find(string name);

- 이름을 매개변수로 하여 GameObject를 찾는 함수

- 같은 Inspector 내에 없는 컴포넌트 가져올 때 사용

- '/(Slash)'를 포함하면 Hierarchy 상의 경로명으로 인식

public GameObject hand;

void Example()
{
    // 이름이 Hand인 게임오브젝트 반환
    hand = GameObject.Find("Hand");

    // 이름이 Hand인 게임오브젝트 반환
    // Hierarchy view에서 부모가 없어야 함
    hand = GameObject.Find("/Hand");

    // 이름이 Hand인 게임오브젝트 반환
    // Monster의 손주이며 Arm의 자식인 Hand 반환
    // Monster는 Hierarchy view에서 부모가 없어야 함
    hand = GameObject.Find("/Monster/Arm/Hand");

    // 이름이 Hand인 게임오브젝트 반환
    // Monster의 손주이며 Arm의 자식인 Hand 반환
    hand = GameObject.Find("Monster/Arm/Hand");
}

참고 : https://docs.unity3d.com/ScriptReference/GameObject.Find.html

이벤트 함수 실행 순서

- Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행

[ 자주 사용되는 함수 ]

  1. Awake: 게임 오브젝트 생성 시 호출되는 메서드. 주로 초기화 작업 수행.
  2. OnEnable: 게임 오브젝트 활성화 시 호출되는 메서드.
  3. Start: 게임 오브젝트가 활성화되어 게임 루프가 시작될 때 호출되는 메서드. 초기 설정 및 시작 작업을 수행.
  4. FixedUpdate: 물리 엔진 업데이트 시 호출되는 메서드. 물리적인 시뮬레이션에 관련된 작업을 처리할 때 사용.
  5. Update: 매 프레임마다 호출되는 메서드. 게임 로직의 주요 업데이트가 이루어짐.
  6. LateUpdate: Update 메서드 호출 이후에 호출되는 메서드. 다른 오브젝트의 업데이트가 완료된 후에 작업을 수행하는 데 유용.
  7. OnDisable: 게임 오브젝트 비활성화 시 호출되는 메서드.
  8. OnDestroy: 게임 오브젝트 파괴 시 호출되는 메서드. 자원 정리 및 해제 작업 수행.

참고 : https://docs.unity3d.com/kr/2022.3/Manual/ExecutionOrder.html

https://blog.naver.com/lyw94k/221095573973