320x100
반응형
SMALL
오늘은 먼저 Unity의 URP (Universal Render Pipeline)에 대해 학습했다.
URP는 Unity의 Scriptable Render Pipeline 중 하나로, 다양한 플랫폼에서 높은 성능과 품질을 제공할 수 있도록 설계된 렌더링 시스템이다.
Scriptable Object처럼 스크립트로 제어가 가능하기 때문에 이름이 이렇게 붙었다고 한다.
다음은 URP의 주요 특징이다.
- Cross-Platform Compatibility
모바일, PC, 콘솔, VR/AR 등 Unity가 지원하는 대부분의 플랫폼에서 작동한다. - Performance and Scalability
저사양 디바이스에서도 원활하게 돌아갈 수 있도록 최적화되어 있고, 그래픽 퀄리티 조절도 쉽다. - Modern Rendering Features
주요 라이트 유형, 표준 PBR 셰이딩, 환경 반사 등 현대적인 렌더링 기술을 지원한다. - Customizability
SRP 기반이라 사용자가 렌더링 파이프라인을 직접 커스터마이징할 수 있다. - Graphics Quality
향상된 라이트 모델, 포스트 프로세싱, 쉐이딩 덕분에 높은 품질의 비주얼을 제공한다. - Simplicity
기존 렌더링 파이프라인보다 설정이 간단하고 Shader Graph, VFX Graph도 함께 사용할 수 있어 생산성이 높아진다.
다음은 유한 상태 머신, FSM(Finite State Machine)에 대해 학습했다.
FSM은 게임에서 캐릭터의 상태, AI, 애니메이션 등을 관리할 때 자주 사용되는 행동 기반 시스템이다.
FSM의 작동 원리
- 초기 상태에서 시작
- 입력이나 조건에 따라 상태 전환 발생
- 전환 시, 이전 상태의 종료 로직과 새 상태의 진입 로직 실행
- 현재 상태의 행동을 지속 수행
게임 예시
- 플레이어 FSM
- 상태: 정지, 이동, 점프
- 조건: 키 입력, 땅 충돌 등
- 동작: 애니메이션 재생, 중력 적용, 이동 처리 등
FSM 구현 방법 비교
- Switch-Case 방식의 단점
- 간단하지만, 상태가 많아질수록 코드가 복잡하고 길어진다.
- 유지보수가 어렵고, 중복 코드가 발생한다.
- 새로운 상태 추가 시 매번 case 분기를 만들어야 한다.
- State 패턴의 장점
- 객체지향적 구조로 상태를 독립적으로 관리 가능
- 다형성을 활용하여 각 상태별 행동을 분리 구현
- 상태 간 전환 로직이 깔끔하고 유지보수 용이
- 코드 재사용성과 확장성이 좋음
오늘 이러한 것들을 배우고 깨달은 것에 대해 간단히 정리해보겠다.
1. URP는 단순히 "좋은 그래픽"만을 위한 것이 아니라,
다양한 플랫폼에서 효율적으로 작동하기 위한 렌더링 솔루션이라는 것을 배웠다.
2. FSM은 단순한 로직 제어뿐 아니라, 상태를 기반으로 복잡한 게임 동작을 관리할 수 있는 핵심 구조라는 점을 이해했다.
3. 특히, FSM을 객체지향적으로 구현하면 유지보수와 확장이 훨씬 쉬워진다는 것을 실감했다.
728x90
반응형
LIST
'TIL' 카테고리의 다른 글
| Firebase를 이용한 회원가입 및 로그인 기능 구현 (0) | 2025.07.01 |
|---|---|
| 게임 개발자 입사지원을 위한 준비 (1) | 2025.06.05 |
| Unity URP 퀄리티 설정 (2) | 2025.05.30 |
| 트러블슈팅 - 사이렌 관련 (3) | 2025.05.29 |
| 점프공격하는 좀비 만들기 (2) | 2025.05.28 |