[UE5/Shader] 폴리지 전역 바람 구현

Tony Kim·2023년 9월 30일
0

언리얼로 개발하기

목록 보기
11/16
post-thumbnail

개요

월드 전체에 부는 큰 바람에 따라 폴리지들이 순서대로 기우는 애니메이션을 하려면 월드 좌표를 바탕으로 애니메이팅을 하면 됩니다.

폴리지 전역 바람 구현하기

정규화된 바람 방향 X, Y값을 폴리지 인스턴스의 월드 좌표값의 X, Y값과 각각 곱한 후 더한 값을 바람의 간격 크기로 나눠 인스턴스 액터 위치에서의 바람 애니메이션 시작 시점 오프셋을 나타내는 값을 도출합니다. 이렇게 하면 바람 방향과 월드 좌표에 모두 정비례하는 애니메이션 시작 타이밍이 계산되죠.

위 값을 이용하여 RotateAboutAxis의 축, 회전 각도, 회전 중심점 등을 계산하여 WPO에 연결해주면 아래와 같이 전역 바람이 구현됩니다.


로컬 바람까지 추가한 결과 예제

여기에 SimpleGrassWind와 같은 로컬 바람을 추가하고 애니메이션을 다듬으면 아래와 같이 연출할 수 있습니다.

profile
게임 테크니컬 아티스트

0개의 댓글