애니메이션 추가하기
애니메이션을 추가할 오브젝트를 선택 후
window - Animation - Animation 클릭.
Create New Clip 클릭해서 애니메이션을 만든다
Animator창에 Model 오브젝트에 적용한 flap, die 애니메이션 노드가 뜬다.
트랜지션 추가하기
트랜지션이란 ? 하나의 애니메이션 상태에서 다른 상태로 넘어가는 연결선
flap 우클릭 - Make Transition
Parameters - + - int - IsDie 입력
flap -> die 트랜지션을
IsDie - Equals - 1로 만든다.
(=> IsDie가 1이 되면 die애니메이션이 실행된다)
has exit time - Animator
체크 - 애니메이션이 끝날 때까지 기다림
체크 해제 - 즉시 다른 애니메이션으로 전환됨
V키
V키를 누른 상태로 오브젝트를 드래그하면
자석처럼 달라붙는다.
스프라이트 렌더러 소팅오더
스프라이트의 렌더링 순서를 결정하는 값.
Order in Layer 값이 높을수록 다른 스프라이트보다 앞에 렌더링된다.
Sorting Layer와의 관계
스프라이트는 먼저 Sorting Layer를 기준으로 그룹화된 뒤, 해당 그룹 내에서 Sorting Order 값으로 순서를 조정한다.
리지드바디(Rigidbody)
오브젝트에 물리 엔진의 영향을 적용하기 위해 사용되는 컴포넌트.
- 중력 적용
예) 공이 떨어지거나 캐릭터가 바닥으로 내려오는 동작
- 힘과 속도
외부에서 힘을 가하거나 속도를 설정하여 오브젝트를 움직일 수 있다.
예) 폭발 효과로 오브젝트가 밀려나는 경우
-충돌 처리
예) 캐릭터가 벽에 부딪히거나 적과 충돌하는 동작
Rigidbody의 주요 속성
Mass: 오브젝트의 무게를 설정한다.
Drag: 공기 저항을 시뮬레이션하여 속도를 줄인다.
Constraints: 특정 축의 움직임이나 회전을 제한한다.
GetComponent<타입>
[Player (GameObject)]
├── SpriteRenderer
├── Rigidbody2D
└── Player.cs (내가 만든 스크립트)
여기서 GetComponent<Rigidbody2D>() 를 하면 Rigidbody2D를 꺼내오고,
GetComponent<Player>() 하면 Player.cs 스크립트를 꺼내온다.
GetComponentInChildren<타입>
하위 오브젝트의 컴포넌트까지 확인한다.
GetComponent로 어떤 값을 가져오는데?
컴포넌트의 인스턴스(주소)를 준다.
(못 찾으면 null이 나옴. null 체크는 꼭 하자)
Rigidbody2D rb = GetComponent<Rigidbody2D>();
- 내 오브젝트에 붙어 있는 Rigidbody2D 컴포넌트를 찾는다.
- 컴포넌트는 실제로 메모리 어딘가에 저장되어 있음.
- 그 위치(주소)를 변수 rb에 저장한다. (참조)
- 이제 rb.velocity, rb.AddForce() 등으로 Rigidbody2D 컴포넌트를 조작할 수 있다.
'내일배움캠프 Unity 9기 > TIL' 카테고리의 다른 글
[Unity/TIL] - 맵 그리기(타일맵) (0) | 2025.05.02 |
---|---|
[Unity/TIL] - Rigidbody / Quaternion / 이벤트함수 / 카메라 움직이기 / 오브젝트 무한생성 (0) | 2025.04.30 |
[Unity/TIL] - new로 생성한 객체는 클래스와 동기화 되나요? (1) | 2025.04.23 |
[Unity/TIL] - static (0) | 2025.04.22 |
[Unity/TIL] - 오류해결모음 (0) | 2025.04.18 |