[TIL]2025-07-23 유니티로 만드는 TopDown게임
[TIL]2025-07-23 유니티로 만드는 TopDown게임
✅ 오늘 한 일
- Unity ParticleSystem 학습
- Unity Controller 기능 학습
- Unity Animation 기능 학습
- Unity 이펙트 기능 학습
- C# 기타 문법 학습
- C# 벡터 알고리즘 학습
🗓️ TIL - 메인 : TopDown게임 제작 (영상 시청)
부제 : 정신없이 달려가는 인강
오늘은 Unity 강의중에서 TopDown형식의 게임을
1. Unity Particle System
- Unity Particle System 관련 강의를 시청하고, 영상 흐름대로 따라하면서 설정 변경 및 실습 진행
- 파티클 하나 만들고 다양한 속성 실험하며 익숙해지려고 노력함
주요 속성 정리
| 항목 | 설명 |
|---|---|
| Duration | 전체 파티클 효과의 지속 시간 (loop가 꺼진 경우) |
| Start Lifetime | 개별 파티클의 생존 시간 |
| Start Speed / Size | 파티클의 초기 속도와 크기 |
| Start Color | 기본 색상 |
| Emission | 초당 생성되는 파티클 수 |
| Shape | Cone, Sphere, Box 등 파티클이 퍼지는 형태 |
| Color over Lifetime | 시간 흐름에 따라 색상 변화 가능 |
| Size over Lifetime | 크기 점진 변화 가능 |
| Renderer | 파티클 외형에 사용될 머티리얼, 텍스처 설정 |
실습 중 메모
- Color Over Lifetime을 활용하면 파티클이 생동감 있게 바뀜
- 파티클 하나 만들고, 연기, 불꽃, 마법 느낌으로 계속 수정하면서 테스트해보는 게 제일 익숙해지는 방법이었다
2. Unity Character Controller
- 캐릭터 이동 강의 시청 후, Rigidbody 방식과 비교해보며 CharacterController 실습
- 특히 중력과 점프 적용 시 어떻게 다루는지 직접 확인함
핵심 개념
- CharacterController 컴포넌트를 사용하면 기본적인 충돌 감지와 이동 구현 가능
- 중력은 직접 수동 적용 필요
- isGrounded 속성으로 지면과 닿았는지 판별 가능
```csharp CharacterController controller; Vector3 moveDir; float gravity = -9.8f;
void Update() { float h = Input.GetAxis(“Horizontal”); float v = Input.GetAxis(“Vertical”);
1
2
3
4
5
6
moveDir = new Vector3(h, 0, v);
if (!controller.isGrounded)
moveDir.y += gravity * Time.deltaTime;
controller.Move(moveDir * Time.deltaTime); } 실습 중 메모 Rigidbody보다 코드 흐름 제어가 명확해서 컨트롤러가 더 직관적으로 느껴졌음
계단 오르기, 경사면 등도 stepOffset이나 slopeLimit으로 세부 설정 가능
1. Unity ParticleSystem 학습
2. Unity Controller 기능 학습
3. Unity Animation 기능 학습
4. Unity 이펙트 기능 학습
5. C# 기타 문법 학습
6. C# 벡터 알고리즘 학습
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.