월드 제작한지 얼마 안된 뉴비들이
반드시
전부 하고있을 실수임.
왜냐면 이걸 내가 그저께 알았으니까,,
이 글의 중요성은 앞에다 별 몇개를 붙여도 부족하지 않다.
아마 맵 만든지 얼마 안됐으면
광원은 실시간 광원(real time) 을 쓰고 있을것이고
맵에 있는 고정 오브젝트는
static에 체크하면 최적화가 된다는 말을 어디서 듣고는
땅이나 가구처럼 고정된, 혹은 들고다닐 픽업 물체에까지 스태틱을 박았을것이다.
하지만 실시간 광원과 스태틱을 같이 쓰는 경우엔
이건 부작용을 불러오게됨.
RTX ON
말로만 듣던 레이트레이싱인가 뭔가하는거랑
비슷한 효과를 볼수있게된다.
지금 저 스폿라이트에서 나간 빛이 뒤에 빨간 큐브와 초록기둥에 반사되어
공 뒷편에 색이 묻어난 거임.
저걸 간접광 이라고함.
내가 보여주기 쉽게 간접광수치를 쫙 올려서 그렇지
기본값으론 티 잘 안나기 때문에
너도 모르는새에
니 월드가 RTX ON 월드가 되었버렸다. 이말임.
실시간 광원이 사양 많이 먹는다는건 들었지만
그럼 스태틱은 무슨 상관인데?
이 짤을보자. 빨간큐브는 static 상태이며 (정확히 말하면 lightmap static)
초록 기둥은 static에 체크를 하지 않았다.
바닥에도 초록색이 묻어나지 않으며
공에도 초록이랑 노랑색이 묻어나지 않는걸 볼수있음.
실시간 광원 | 다이나믹(스태틱 노체크) | 스태틱 |
명암 | 실시간 적용 | 실시간 적용
|
그림자 | 실시간 적용 | 실시간 적용 |
간접광 (GI) | 무시 | 실시간 적용
|
간단하게 표로 나타내면 이렇다.
같은 실시간 광원을 받고있어도
다이나믹 오브젝트 (스태틱 노체크, 혹은 아바타)
한것들은 그림자, 밝기 등에만 영향을 받지만
월드제작시 스태틱 체크된 물체는
빛을 조사 받으면 간접광 까지 반사하게된다..
문제는 따로 설정을 건드리지 않으면
자동으로 켜져 있기때문에.
티는 안나지만 너도 모르는 사이에 리소스가 낭비되고 있다는거임.
실시간 광원자체를 최대한 줄이는게 좋지만
굳이 써야 한다면
반드시 아래 두 절차중 하나를 따르도록하자.
1. 라이트맵 스태틱 끄기
스태틱 옆에 화살표를 눌러
라이트맵 스태틱 체크 풀기
이렇게되면 이 오브젝트는 실시간 광원을 받았을때
그걸 뿌리지도
받지도 않게된다.
2.월드에서 실시간 GI 자체를 꺼버리기.
제일 확실한 방법
유니티 상단 윈도우 탭에서 라이팅 창을 열어준후
리얼타임 GI 항목 체크해제를 해주면
월드 전체에서 이 효과를 제거해준다.
자동적으로 켜져있을
무거운 기능이므로
반드시 반드시
꺼주도록 하자.