[IGC 2017] 펄어비스 민경인 - Mmorpg를 위한 voxel 기반 네비게이션 라이브러리 개발기강 민우
펄어비스의 MMORPG, 검은사막에 적용되어있는 AI 네비게이션 기능은 VOXEL 기반으로 자체 개발한 엔진을 이용해 구현되어 있습니다. 기존의 대다수 상용 라이브러리들이 네비 메쉬라고 하는 이동가능한 평면을 표현하는 폴리곤 기반의 데이터를 이용해 길찾기를 수행해주는 것에 비해 근간이 다릅니다. 이 강연에서는 검은사막의 네비게이션 엔진을 구현하고, 서버 / 클라이언트에 적용하면서 얻게된 노하우와 적용된 결과물들을 소개합니다.
[IGC 2017] 펄어비스 민경인 - Mmorpg를 위한 voxel 기반 네비게이션 라이브러리 개발기강 민우
펄어비스의 MMORPG, 검은사막에 적용되어있는 AI 네비게이션 기능은 VOXEL 기반으로 자체 개발한 엔진을 이용해 구현되어 있습니다. 기존의 대다수 상용 라이브러리들이 네비 메쉬라고 하는 이동가능한 평면을 표현하는 폴리곤 기반의 데이터를 이용해 길찾기를 수행해주는 것에 비해 근간이 다릅니다. 이 강연에서는 검은사막의 네비게이션 엔진을 구현하고, 서버 / 클라이언트에 적용하면서 얻게된 노하우와 적용된 결과물들을 소개합니다.
The guided policy search(GPS) is the branch of reinforcement learning developed for real-world robotics, and its utility is substantiated along many research. This slide show contains the comprehensive concept of GPS, and the detail way to implement, so it would be helpful for anyone who want to study this field.
18. 특징 및 장점
□ 입력에 따른 다양한 결과 생성
□ 모션의 추가/삭제, 수정 용이
□ 자연스럽고 다양한 상호 작용
□ 애니메이션 제작 비용 절약
■ 비슷한 종류의 애니메이션 최소화
▪ Ex) 구조가 서로 다른 n 개의 캐릭터 걷는 애니메이션: n x [전진, 후진, 회전, 게걸음] x [평지, 오르막, 내리막]
23. 실버바인 모션 엔진
□ 완전히 절차적인(fully-procedural) 애니메이션 시스템 개발 시도
■ 오로지 코드로만 애니메이션을 생성
■ 애니메이션 품질이 프로그래머 역량에 깊게 의존
■ 생성된 모션이 불안정함
24. 실버바인 모션 엔진
□ 준 절차적(semi-procedural) 애니메이션 시스템
■ Automated Semi-Procedural Animation for Character Locomotion 논문 기반
■ 샘플 애니메이션 분석을 통한 로코모션의 실시간 생성
■ 게걸음, 후진, 회전, 속도 변화 …
25. 작년 발표 리뷰
□ 로코모션을 중점적으로 개발 진행
■ 게이머가 실제로 가장 많이 보게 될 부분
■ 모션엔진의 필수 기능
■ 개발 난이도 ↑
98. 시뮬레이션 결과 적용방법
□ 강체의 로컬 트랜스폼 변화량을 척추에 적용
■ 로컬 트랜스폼은 회전 성분만 고려 (척추의 길이는 불변)
99. 시뮬레이션 결과 적용방법
□ 강체의 로컬 트랜스폼 변화량을 척추에 적용
■ 로컬 트랜스폼은 회전 성분만 고려 (척추의 길이는 불변)
■ 초기 로컬 트랜스폼:
■ 변형 후 로컬 트랜스폼: R 𝑡 = C 𝑡P𝑡
−1
R0 = C0P0
−1
100. 시뮬레이션 결과 적용방법
□ 강체의 로컬 트랜스폼 변화량을 척추에 적용
■ 로컬 트랜스폼은 회전 성분만 고려 (척추의 길이는 불변)
■ 초기 로컬 트랜스폼:
■ 변형 후 로컬 트랜스폼:
■ 로컬 트랜스폼 변화량: ∆R = R0
−1
R 𝑡
R 𝑡 = C 𝑡P𝑡
−1
R0 = C0P0
−1
101. ∆R = P0C0
−1
C 𝑡P𝑡
−1
시뮬레이션 결과 적용방법
□ 강체의 로컬 트랜스폼 변화량을 척추에 적용
■ 로컬 트랜스폼은 회전 성분만 고려 (척추의 길이는 불변)
■ 초기 로컬 트랜스폼:
■ 변형 후 로컬 트랜스폼:
■ 로컬 트랜스폼 변화량: ∆R = R0
−1
R 𝑡
R 𝑡 = C 𝑡P𝑡
−1
R0 = C0P0
−1
131. 향후 계획
□ 포즈 블렌딩 개선
■ Inertialization: High-Performance Animation Transitions in Gears of War, GDC
2018
▪ 스냅샷 포즈와 타겟 포즈를 블렌딩
▪ 스냅샷 포즈의 관성을 타겟 포즈에 적용
132. 마치며...
□ 모션엔진의 새로운 기능들 소개
■ 지면의 경사 적용: 다양한 지형과 캐릭터에 적응적인 모션 생성
■ 물리적 반응 모션: 척추의 움직임에 자연스러움 추가
■ 애니메이션 전환: 포즈 블렌딩, 발 위치 제어를 통한 자연스러운 애니메이션 전환
133. 마치며...
□ 모션엔진의 새로운 기능들 소개
■ 지면의 경사 적용: 다양한 지형과 캐릭터에 적응적인 모션 생성
■ 물리적 반응 모션: 척추의 움직임에 자연스러움 추가
■ 애니메이션 전환: 포즈 블렌딩, 발 위치 제어를 통한 자연스러운 애니메이션 전환
□ 발전 가능성과 개선의 여지가 많음
134. 마치며...
□ 모션엔진의 새로운 기능들 소개
■ 지면의 경사 적용: 다양한 지형과 캐릭터에 적응적인 모션 생성
■ 물리적 반응 모션: 척추의 움직임에 자연스러움 추가
■ 애니메이션 전환: 포즈 블렌딩, 발 위치 제어를 통한 자연스러운 애니메이션 전환
□ 발전 가능성과 개선의 여지가 많음
□ 효율적이고 실용적인 절차적 애니메이션 시스템!