[C# Unity] Physics

Dog발자·2024년 2월 22일

Unity

목록 보기
1/3

1. Physics(충돌시키고 싶은 레이어만)

edit -> project Setting ->Physics

2. 조명(Light)


1. Directional Light 방향광(태양) - Directional는 되고 Point는 안됨

Vertex Color(꼭짓점 색깔) x Texture Color(오브젝트 색깔) x Light Color(빛의 색깔)
2. Point Light : 확산광(빛이 퍼져나간다) = 랜턴
3. Spot Light : 집중광(한 곳을 보여준다) - 스포트라이트
4. Area Light : 면광원 광원의 전체 표면에서 발산되어 부드러운 그림자를 생성하는 산란광을 만듭니다.

  1. Type
    a. Directional Light =향광(태양)
    b. Point Light = 확산광(빛이 퍼져나간다) = 랜턴
    c. Spot Light = 집중광(한 곳을 보여준다) - 스포트라이트
    d. Area Light = 면광원 광원의 전체 표면에서 발산되어 부드러운 그림자를 생성하는 산란광을 만듭니다.

2.Range(범위) - 빛 퍼치는 멈위

3.Color -> 색깔 바꾸기
4.Mode

  • RealTime => 실시간
  • Mixed => 다른 조명과 섞였다
  • Baked => 굽다(고정되어있다)
  1. Intensity -> 빛

  1. Shadow Type(그림자) - 그림자는 비용이 비싸다.
    게임에서 가장 중요합니다 - 그림자에 의해 캐릭터가 어디 서있는지 확인 할수 있습니다.
    바닥에 판대기(그림자)가 붙혀서 캐릭터가 점프하면 그림자는 가만히 있는다.

(기본)

Projective Shandow(해의 위치에 따라 그림자가 바뀐다.)

지형이 평평할 때는 괜찮은데
지형이 다를 때(계단)는 이상해 진다.

그래서 이러한 단점 때문에

Shadow Volume(그림자에 부피를 생성한다)생겼다
(자세한 설명 : https://en.wikipedia.org/wiki/Shadow_volume)

Shadow Volume을 하면 SelfShadow() 할 수 있다.

대표적으로 둠3가 있다.

Shadows Light도 있다.
(자세한 설명https://en.wikipedia.org/wiki/Volumetric_lighting)

testure shadow도 있다.

Shadow Type

flare는 아래 사진처럼 나오게 만드는 겁니다.


노란색깔선이 보이는데 확산광이라고 부른다

Point와 Directional의 차이

1.Point - Range는 빛이 벛어날 거리

2.Directional

  1. SpotLight

    집중적으로 보여주게 만드는 것입니다. 무대 조명이라고 생각하시면 됩니다.

난반사광(Diffuse Reflection) 정반사광(Specluar Reflection)

https://en.wikipedia.org/wiki/Diffuse_reflection

빛의 반사는 대표적으로 2가지로 난반사와 정반사를 볼 수 있습니다.
난반사는 빛이 표면에 닿을떄 여러 방향으로 퍼져나가는 빛을 말합니다.
정반사는 입사-반사의 법칙에 의해 반사되는 한방향으로 반사하는 빛이다.

난반사는 물체의 표면에 닿은 빛의해 확산되고 산란된 빛에 의해 가시성이 높아진다.
난반사의 공식은  입사각과 표면의 법선벡터의 의해 결정되며
빛의 입사광 벡터과 법선벡터의 내적하는 cos을 구하면 난반사광의 양을 구할 수 있다.
출처: https://xtar.tistory.com/36 [EXTAR:티스토리]

Ambient - 주변에는 오는 광
(소리에도 Ambient도 있는데 소리가 왕왕왕 이렇게 들리는 거다.)

PBR = 표면의 재질에 따른 빛의 반사가 물리적으로 어떻게 이루어지는지를 시뮬레이션해서 그래픽을 표현하는 기법이다.

유니티는 PBR(hysically Based Rendering)(물리 기반 렌더링)가 기본적으로 들어가 있지만 처리하는데 컴퓨터 자원이 많이 들어갑니다.

Photon Mapping
아주 작고 많은 입자들인 Photon를 쏴서 반사되는 걸로 그림을 만든다고 생각하면 될 것 같다.
https://en.wikipedia.org/wiki/Photon_mapping

Global Illumination(전역 조명) - 만약 동굴에 들어왔을 때 빛이 산란되서 나옵니다.

ray tracing
ray tracing은 빛을 게속적으로 반사를 합니다. 쉽게 설명하면
"게속적으로 반사하는 빛을 최대한 현실처럼 똑같이 흉내내고자 하는 그래픽 작업" 라고 생각 하시면 됩니다.

NVIDIA RTX(Raytracing Texel eXtreme)에서 Ray-tracing 기법을 지원한다.

조명을 굽어준다(외국에서 기록을 한다를 굽는 거라고 뉘양스가 있다)=>조명을 기록으로 남긴다

조명을 텍스처만 만듭니다.

조명이 없어도

baking한 물체가 움직이면 그림자는 가만히 있기 때문에

baking은 가만히 있는 물체에만 있어야 한다

0개의 댓글