포스트

[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초당 생성되는 파티클 수
ShapeCone, 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 라이센스를 따릅니다.