Study
_Time 함수를 이용한 흐르는 물 만들기
YujinK
2019. 10. 5. 20:14
1. 맥스에서 모델링을 해줍니다.
2. uv 좌표에 맞춰 텍스쳐가 흐르듯 움직일 것입니다. 유의하며 uv를 펴줍니다. 늘어진 uv, 텍스쳐는 빠르게 흐르듯 보일 것이므로 물의 유속이 빠른 부분은 uv 체커가 늘어지도록 핍니다. 이후 fbx 파일로 익스포트하여 유니티에서 불러옵니다.
3. 유니티에서 머터리얼과 스텐다드 셰이더를 각각 하나씩 만들고, 셰이더를 머터리얼에 적용시켜줍니다. 머터리얼에는 물 텍스쳐를 입힙니다.
4. 셰이더 스크립트를 열고, _Time 를 이용해 텍스쳐가 흐르도록 만들 것입니다.
(스크립트 전문)
중요한 것은 이 부분입니다. 메인 텍스쳐의 y좌표값에 _Time 함수를 적용하여 텍스쳐가 y축 방향으로 흐르도록 합니다.
오늘 작업에서는 '+'_Time 을 해주어야 적절한 결과를 볼 수 있습니다.
'*'_Time 으로 적용 시 y좌표값이 매우 빠른 속도로 증가하여 ...텍스쳐가 굉장히 빠른 속도로 흐르게 되는 것 같습니다.
5. 모델링 데이터에 쉐이더를 적용시키고, 텍스쳐를 타일링 해줍니다.
완성입니당
**참고로, 이펙트에 적용할 텍스쳐에선 mip map 옵션을 꺼주어야 합니다. 이는 LOD와 비슷한 개념. 일단 텍스쳐가 필터링되어 깨지는 상황을 방지하기 위해서 라고 이해 중. 정확한 것은 아직 잘 모르겠음