본문 바로가기
유니티 엔진

유니티 신 버전 라이트맵 사용하기 7 ( Using Unity 2017 Lightmap - 7)

by 대마왕J 2017. 12. 26.

Mixed Lighting


이제 그다지 오래 지나지 않아 인라이튼은 사라진답니다! 오예! 

임시로 들어가 있던 프로그래시브 라이트매퍼가 인라이튼을 대체한답니다! 오예! 이 글을 쓰는 나는 망했다!! 망했다고!!! 

누가 쓰라고 하지도 않았는데!! 왜 쓴걸까 난!! 난 망했어!!! 이 글은 이제 곧 쓸모없는 글이 될거야!!! 




망하는건 망하는거고.. 쳇.


하여간 하던건 마무리 지어야 하니까. 


이제 드디어 Mixed Lighting 입니다. 여기서는 또 3개 (4개) 로 나눠서 설명해야겠네요 


어쨌건 Mixed Light로 설정하는 법은 다음과 같습니다. 


- 조명은 Mixed로 

- GI 적용을 원하는 오브젝트는 Static으로 

- Realtime Lighting은 끄고 (안꺼도 상관없지만 끄는걸 권장) Mixed Lighting은 켜고 원하는 Lighting Mode를 선택 


즉 조명은 전부 아래처럼 설정해 주시면 됩니다. [각주:1]





이제 드디어 Mixed Lighting 입니다. 여기서는 또 3개 (4개) 로 나눠서 설명해야겠네요

이 메뉴 부분은 2편에서 설명했으니 다시 설명하지는 않겠습니다. 


 



그리고 냅다 구우면 이렇게 됩니다. 세부 옵션들은 다시 초기화 시켜놨습니다. 



Mixed Lighting - Baked Indirect



Mixed Lighting 에서 첫 번째 선택 매뉴는 Baked Indirect 입니다

이전에 설명해 놓은 것 처럼, 이 옵션은 'GI만 굽고 그림자는 실시간' 이라는 옵션입니다. 


그래서 이렇게 나왔네요 


드디어 다이나믹 오브젝트에도 빛과 그림자가 받아지기 시작합니다 ㅎㅎ 

 

라이트맵은 어떻게 구워졌는지 볼까요 


확실히. GI 와 엠비언트 라이트 밖에 보이지 않습니다. 


Directional Light와 그림자는 구워지지 않았어요 



그럼 이제 이 전 시간에 배웠던 대로 라이트맵 옵션을 올려서 퀄리티를 올려 봅시다 

어차피 구워지는 부분은 Baked랑 완전히 동일하니까요 


옵션은 이걸 참고하시고요. 

여기서 원하는대로 개량하셔도 좋을 것 같습니다. 라이트맵 사이즈라던가 말이죠 



이렇게 구웠는데도, 안쪽에 왠 빛줄기가 보입니다. 


저것은 리얼타임 라이트와 셰도우의 문제로, 라이트맵의 문제가 아니라 실시간 쪽의 문제입니다. 


실시간 그림자 (Shadowmap) 의 정밀도 문제로 오차가 생긴 거지요 


이걸 해결하려면, 실시간 그림자의 해상도를 올리거나 ( = 거리를 줄이거나) 

아니면 실시간 라이트의 Bias를 줄여서 처리해야 합니다. 



여기서는 거리보다는 Normal Bias가 훨씬 효과가 있군요. 물론 저렇게 되면 지글대는 Fight가 나오지 않을까 걱정해야 합니다만.. 



어쨌건 이렇게 해서 잘 완성 되었습니다. 




물론, 욕심을 더 부리고 싶다면... 


캐릭터가 녹색 벽 근처에 가면 자기도 녹색 GI를 받고, 

붉은 벽 근처에 가면 자기도 붉은 GI를 받게 해주고 싶을 수도 있습니다. 

지금은 그건 안되지요. GI는 이미 텍스쳐로 구워진 상태니까요 


물론 이 때에는 라이트 프로브를 이용하면 가능해 집니다. 그건 정말 다음 기회에.. 





  1. 물론 Baked 라이트와 섞어서 사용도 가능합니다. 그렇게 하면 각각 작동합니다. 심지어 Realtime과도 동시에 구울 수 있습니다. [본문으로]
반응형

댓글