유니티 마스터즈 2기 활동중 하나로 Asset store, Essential Pack의 Art&Design의 리뷰를 진행하기로 했습니다.
날짜가 이미 오버 되었지만 여차저차해서 급하게 리뷰하게 되었는데.....
에셋들 하나하나가 살펴볼수록 분량이 장난이 아닙니다...;;;;
대충 살펴보는 후기로는 아마도 별 도움이 안될듯해서 시간나는대로 좀 꼼꼼히 살펴서 올리도록 하겠습니다.
Fog volume 3
https://www.assetstore.unity3d.com/kr/#!/content/81802
전작에 비해 개선된 안개/구름 효과를 보여주는 Asset 이라고 하는데 VR에서 모바일까지 광범위하게 지원한다는 설명이 들어있습니다(진짜???). 동영상 소개는 에셋스토어에 들어가면 확인할수 있고...
우선, 한가지 체크해두어야 할 것이
Game창을 Scene 창과 같은 화면에 겹치고 Maximize On play를 체크해줘야 frame drop이 일어나지 않습니다. 이는 VR 장비(오큘러스나 바이브)를 PC에 물려 유니티에서 즉시 실행해서 확인할때도 생기는 문제인데(아마도 여러 창에 동시에 렌더링 해서 그런지...) 이경우 60FPS선을 잘 유지하나(GTX 1060) 따로 창을 띄워서 확인할 경우에는 한자리수 프레임이 나옵니다.(Fast Clouds나 Stero같은 부하가 적은 SCene은 그럭저럭 나옵니다)
환경마다 다를수 있지만 프레임 드랍이 일어날 경우에는 위 방법을 적용해보시길 바랍니다.
Sample Scene은 총 11개이며 Scene 파일 리스트는 이렇게 생겼습니다.
Asset을 import 하면
상단 윈도우에 Fog volume이라고 메뉴가 생성됩니다. 이를 선택하면 Fog Volume이라는 컴포넌트가 생성됩니다. 그리고 이 컴포넌트를 생성하면
짜잔.... 하고 이런 멋진 구름과 안개가.. 안생깁니다...... 와놔.. 기왕 만들거 그냥좀 자동으로 생성되게 만들것이지..
권장하는 방법은 하이라키에 scene 파일을 드래그하면 이렇게 복수의 scene을 열수가 있습니다. 이런식으로 하이라키를 비교해서 어떻게 적용을 했는지 살펴보는것이 좋은 방법입니다(이 리뷰에서 모든걸 쓰기엔 분량이 너~~~~무 많습니다.....)
우선 Fast Clouds를 생성한 상태에서 play 버튼을 누르면 Fog volume Data가 생성되고 그제서야 시뮬레이션이 됩니다.
[ExecuteInEditMode]를 선언하면 꼭 플레이를 안해도 될거 같은데 전 프알못이라 그냥 넘어가겠습니다...(코드 다 뜯어볼 시간도 없고...)
우선 Add component를 통해 Fog를 검색하면 관련 컴포넌트가 검색이 됩니다. 이중에 Priority를 선택해 추가해주고
위치가 될만한 메쉬를 하나 지정해주면 이 위치를 중심으로 생성됩니다.
Tutorial 영상에서는 이렇게 보면서 진행하는 것처럼 보이지만 실제로는 Reflection probe static이 강제로 체크가 되기 때문에 움직일수가 없습니다. 나머지 Scale과 사이즈 조정 및 세부 옵션 조정은 영상 및 내용을 참고하면 됩니다.
옵션은 대부분 실제 라이팅에 사용하는 용어와 크게 차이가 없습니다. Cloud를 만들어 내는건 Noise를 활용합니다.
True sky와 좀 비슷하네요...
이외에도 Interior primitives
Nebula
Nebula 4
등 여러가지 예제를 포함하고 있습니다.
그중에 제일 가벼워 보이는 FastCloud를 노트5에 빌드해 보았습니다.
빌드에는 조건이 있습니다.
1) Linear Colorspace 사용 : AutoAPI 사용이 불가하며 ES2.0 을 제거해야 합니다. 역시 Minimum API 레벨도 올려줘야 합니다.
2) 그래도 Android에서 제대로 나오지 않는 셰이더가 존재합니다.(세세하게 손보면 수정이 가능할것 같기는 합니다만...)
노트5에서 14~30 프레임 정도 왔다갔다 하는걸 보면 모바일에서 사용할만한건 아닌듯 합니다. 제한적인 컨텐츠나 PC, VR에서의 사용을 권장합니다.
'Technical Report > Graphics Tech Reports' 카테고리의 다른 글
GLSL WrapCore (0) | 2017.10.16 |
---|---|
Unity 2017.1.1 Relese Note (0) | 2017.09.12 |
Cg에서 Uber Shader 구성 (0) | 2017.08.18 |
동적 셰이더 조합 (0) | 2017.08.18 |
OpenGL shading Language Quick Reference Guide(GLSL) (0) | 2017.08.14 |