졸업프로젝트

유니티 기본강좌_7. 라이트

luminousmoonjj 2021. 11. 24. 17:53

Type

-Directional : 현실세계의 태양과 같은 것. 전 범위에 걸쳐서, 동일한 세기와 각도로 빛을 내리쬐는 것. 

-Spot : spotlight처럼 쭉 뻗어있다.

-Point : 일반 전구라고 생각하면 됨. 동그랗게 빛이 퍼져나간다. 

-Area: bake 전용인데, tv라고 생각하면 됨. 직사각형 모양에서 빛이 새어나온다고 생각하면 됨.

 

Color: 말그대로 조명의 색을 바꾸는 것.

 

Mode

-Realtime: 매 프레임마다 광원을 계산해서, 어느 위치에 그림자를 뿌리고, 밝기조정을 해주는 것. 매 프레임마다 계산하므로, 과부하가 걸리기 쉬움. 최적화를 시킬 때는 realtime을 되도록 사용하지 않아야 한다. 

-Mixed: Realtime과 Baked가 섞였다. 

-Baked: 최적화를 위해 나온 것. 조명을 최초 1회 계산하고, 그 다음부터 계산하지 않고 그 상태 그대로 보여주는 것.

(한 번 고정된 배경 등에 많이 활용됨)

baked 된 상태에서 새로운 객체가 추가되면, 빛에 영향을 받지 않게 됨. (새객체를 추가하고, game object를 생성해서, game object에 light probe group을 추가해서 주변 광을 흡수할 수 있게 해줄 수 있음 - chap5. 참조)

 

Intensity : 빛의 세기. 올릴수록 빛의 세기가 커짐

 

Indirect Multiplier : 간접광의 세기.

직접광: 태양에서 나오는 빛. 이 직접광이 표면에 반사되어 object를 비추게 될 때 그 빛을 간접광이라고 한다. (Indirect Multiplier가 클수록 간접광의 영향을 많이 받는다.)

 

Shadow Types

- No Shadow : 그림자가 사라짐

- Hard Shadow : 테두리가 선명한 그림자

- Soft Shadow : 테두리가 흐릿한 그림자

strength : 빛의 세기

resolution : 그림자의 퀄리티

bias : 그림자자체를 밀어낸다. (버그나, 부자연스러운 그림자가 있을 때 사용)

normal bias: 그림자를 쪼글어들게(?) 한다. (버그 체크 시 사용)

near plane: 태양의 경우에는 해당되지 않고, clipping 같은것. 가까이 있는 것부터 멀리있는 것까지 사라지도록 하는 것. 

 

Cookie : 빛을 방해하는 존재

 

Draw Halo : 광원효과(후광)

Flare : 카메라가 태양을 바라봤을 때, 어떤 렌즈 효과가 생기는지

이런식의 flare가 생기게 할 수 있다. 

 

RenderMode

- Important : 품질이 좋아짐

- Not Important : 대충처리 (배경 등)

 

Culling Mask : 특정 layer를 비출지 안비출지 (조명에 영향을 받을 layer를 고르는 것)

 

Window> rendering> lightning settings에 들어가면 아래와 같은 화면이 뜬다. 

Lightmapper 

-Enlighten : bake과정이 끝날 때까지 결과를 보여주지 않음

-Progressive : bake과정을 실시간으로 보여줌.

 

Prioritize View : 지금 바라보고 있는 시선의 것들이 먼저 baked되게 함

 

Direct samples, InDirect samples : 직접광과 간접광에 대한 quality 조절. 높을수록 quality좋아지고, 시간 오래걸림

 

Bounce : 반사광에 튕기는 개수

 

Lightmap Resolution: 실질적인 해상도

 

Ambient Occlusion: 지하와 지상의 극명한 (빛의 세기)대비를 위해 사용

 

Compress lightmap: 압축

 

Indirect Intensity: 간접광에 대한 세기

Albedo Boost: 간접광에 대해 튕겨나온 개수

 

[Script를 이용해서 light의 intensity와 range를 조절하는 방법]

이렇게 코드를 작성하면,  빛이 반짝거리는 효과를 줄 수 있다. 

위의 코드는 유니티 엔진에서 다음과 같이 작동한다.