개요
3학년 1학기에 수강한 게임공학 수업의 팀프로젝트는 '게임에 쓰일 수 있는 기술을 다룬 논문을 읽고 기술을 개선해보는 것'이 주제였다. 우리 조는 CUDA를 이용해서 GPU병렬처리를 통한 눈 시뮬레이션을 다룬 논문을 읽고 언리얼로 시각화하는 프로젝트를 1학기 동안 진행했다.
결과
깃허브 링크
프로젝트 설명은 깃허브 Readme에 작성하였다.
내가 기여한 부분
- 언리얼+CUDA연동 후 AWS+Perforce를 이용한 협업 세팅
- 눈 particle의 Compression계산코드 작성
- particle과 rigid body의 충돌코드 작성
- 플레이어 character가 있는 구역에 한해서 눈 시뮬레이션을 동작시켜서 프레임 최적화하는 기술 개발
- 프로젝트 결과 발표
소감
- CUDA를 이용한 GPU병렬 연산에 대해 감을 잡았다.
- 다른 분야에도 CUDA를 적용해보고 싶어졌다.
- 인용수가 적은 논문은 그 이유가 있다.(논문 저자가 DeltaTime을 0.001로 설정해놓고 논문제목에는 Real-Time이라고 작성하는 만행을 저질렀다.)
- 눈을 Particle기반으로 만들지 않는 이유를 확실히 알았다.(결과물이 크게 이쁘지도 않은데 성능은 몇배로 잡아먹음)