본문으로 바로가기

Unity3D light probes

category Technical Report/Graphics Tech Reports 2014. 7. 31. 07:00
반응형


Unity3D light probe는 scene내에 라이트가 없더라도 실시간 라이팅과 유사한 효과를 줄 수 있다.(엄밀하게 말하면 실시간 라이팅은 아니지만 씬내에 배치된 probe에 기록된 색을 diffuse texture에 덧 씌워 그린다 생각하면 쉽다. 색의 값은 구체간의 거리에 영향을 받는다.)


Probe lighting에 대한 unity 문서 : http://docs.unity3d.com/Manual/LightProbes.html





1. 우선 Create Empty로 빈 슬롯을 만들어 준다.




2. 빈 슬롯이 생성되면 좌표값을 0,0,0으로 만들어준다(유니티 맘에 안드는것중에 하나가 빈 슬롯 생성시에 왜 좌표값을 가지고 생성되는지 원....) 여튼 만든다.




3. 생성된 빈 슬롯 이름을 F2를 눌러 적당히 이름을 바꿔주고(Probe lighting이라던가  뭐 맘대로...) Component>>Light Probe Group을 눌러 Probe Group을 생성해주면 inspector 창에 Light Probe Group이 생성된다.


Add Probe : 구체를 추가한다.(Ctrl+D 누르면 생성된 프로브 복사가 된다. 처음 만들때 빼고는 쓸일이 없다..)

Select All : 모두 선택. Ctrl+shift 드래그로도 선택 가능

Delete selected : 선택된걸 지운다. 그냥 del 키 눌러도 된다.

duplicate Selected : 선택된걸 복사한다. 이거도 Ctrl+D 눌러도 된다)





4. 어쨌건 Add probe 누르면 퍼런게 하나 생긴다. 못찾겠으면 잘 찾아보면 있다.

Probe는 최소 4개가 있어야 동작하며 Probe light를 사용하는 유닛의 이동경로에 존재해야 한다.





5. 적당히 유닛의 이동경로(정확하게는 level에서 probe 영향을 받는 유닛이 움직이는 모든곳에)에 배치한 후 light mapping menu에서 구워주면 된다. Bake Scene을 선택할시에 hierachy에 Light probe group이 있다면 자동으로 구워지며 Bake Probes로 probe만 따로 구울수 있다.





6. 당근 mesh에 Use Light Probes 항목이 체크 되어야 하며 shader에서 지원해줘야 한다.(Unlit 기반 shader에서는 안먹히는게 있다)




7. 생성된 파일은 scenes 폴더내 scene name 폴더안에 lightmap texture와 같은 위치에 LightProbes.asset으로 저장된다.

이걸 SVN이나 다른걸로 올려줘야 한다.(lightprobe가 구워지지 않으면 이 파일은 삭제된다)



8. Tips


1) Probe가 너두 길게 혹은 어긋나게 배치되었을시 영향을 받는 mesh가 이러한 영역을 통과할때에 싸이키 조명을 받는 효과가 나타나면서 나이트나 클럽 분위기가 연출될수 있다. 또한 게임내 FPS가 무지하게 드랍되는 경우도 생긴다.. 빌드전 꼼꼼히 확인을 안해주면 나중에 한자릿수 프레임 뜨는걸 볼 수 있다. 또한, 유닛이 있는데 probe가 없으면 새카맣게 보인다.(Probe가 잘못배치되어 제대로 연산이 안될경우 부하가 걸리는 것으로 보임)


2) lightmapping 과는 다르게 Probe light를 setting 해주는게 좋다. 또한 플랫폼에 따라 좀 차이가 난다.(PS3, Xbox, Steam, mobie..). 귀찮더라도 조절해주는게 좋다. 내 경우는 scene별 lighting setting과 probe lighting setting을 프랍을 나누어 따로 관리 했다.


3) 생각보다 퍼포먼스 안 깎아 먹는다만 그래도 타켓 디바이스에 올리기전 probe check 했을시와 아닐시 비교해보고 쓸지 말지 결정하는걸 권장



4) 뭔가 길게 써놨는데 한번만 해보면 쉽다.


Sprite lamp URL : http://www.snakehillgames.com/spritelamp/





반응형

'Technical Report > Graphics Tech Reports' 카테고리의 다른 글

141106 KGC 2014 Enlighten  (0) 2014.11.07
140830 Havok 2014 conference  (0) 2014.08.31
Unity5 preview  (0) 2014.03.19
KGC2013 Defense Technica Mobile Converting  (0) 2014.03.05
physical based shader 관련 자료  (0) 2013.07.14