Unity C# > 카메라

Date:     Updated:

카테고리:

태그:


image

Clear Flags

  • SkyBox
    • 스카이 박스라 불리는 배경으로 빈 공간을 채운다.
  • Solid Color
    • 단색으로 빈 공간을 채운다.
  • Depth Only
    • 빈 공간을 투명 처리한다.
    • 이와 같은 특성 때문에 여러 대의 카메라를 한 화면에 합성할 때 주로 사용한다.
    • 각 여러 카메라들의 영상들을 합성하기 위해선 각각의 카메라가 찍는 화면의 빈 공간은 투명해야 하기 때문이다.
    • 유니티는 여러대의 카메라가 있으면 depth 값이 낮은 카메라부터 먼저 렌더링 하여 차곡 차곡 쌓아서 그린다. 즉, depth 값이 낮은 카메라가 가장 먼저 그려지고 그 위에 depth 값이 높은 카메라가 덮어 씌워져 그려지게 된다.
  • Don’t Clear
    • 화면을 새로 갱신하지 않고 이전의 화면 위에다가 다시 그린다. 때문에 오브젝트가 움직이면 잔상이 화면에 남는다.

Background

  • Solid Color를 선택하여 빈 공간을 배경 색으로 채우기로 했을 때 설정할 배경 색.

Field Of View

카메라 시야 각도. 60도가 디폴트다.

Culling Mask

  • 렌더링 할 레이어들을 다중 선택한다. 오직 체크된 Layer를 가진 오브젝트들만 이 카메라에 렌더링 된다.
    • 예를들어 “A” 레이어만 선택했다면 해당 카메라는 “A” Layer를 가진 그 오브젝트만 렌더링하여 화면에 담는다.
      • Culling Mask 에 체크 되지 않은 레이어를 가진 오브젝트는 그림자조차 렌더링 되지 않는다.
    • Solid Color를 선택했다면 빈공간은 단색, Depth Only를 선택햇다면 빈공간은 투명할 것이다.
  • Clipping Planes
    • 카메라는 모든 공간을 다 렌더링 하지 않는다. Near 평면과 Far 평면 사이에 해당하는 3 차원 공간만 렌더링 하여 카메라 화면에 담는다.
    • Near 값을 최소값인 0.01로 설정하여 최대한 카메라와 가까운 거리도 다 렌더링 될 수 있도록 하였다.
      • 팔을 뻗을 때 팔 아랫부분이 렌더링 되지 않고 잘렸던 이유는 Near 값이 높아 카메라가 렌더링 하는, 즉 찍는 시작점이 카메라로부터 멀었기 때문이다. Near 값을 줄여 카메라 바로 앞 거리도 렌더링 하게 됨으로써 팔 아랫부분이 렌더링 되지 않는 현상을 해결하였다.
      • image
  • Depth 👉 해당 카메라가 그려지는 순서.
  • 유니티니는 카메라 오브젝트가 여러개일 때, Depth 값이 낮은 카메라가 찍는 화면부터 렌더링을 먼저 하고 그 위에 차곡 차곡 쌓아 Depth 순서대로 카메라들의 화면을 렌더링 한다.
  • depth 값이 낮은 카메라일 수록 먼저 렌더링 된다. depth 값이 높은 카메라일 수록 제일 나중에 렌더링 되므로 가장 나중에 덮어 씌우는 격이 된다. 더 우선시 되는 꼴.
    • 메인 카메라는 기본 디폴트 Depth 값이 -1로서 주로 가장 먼저, 동시에 가장 밑에서 렌더링 된다는 것을 의미한다.

Projection

  • Perpective
    • 하얀색 투영 선이 대각선이며 한 점으로 모인다.
    • 멀리 있는건 작게 보이고 가까이 있는건 크게 보인다. 원근감 O
  • Orthographic
    • 하얀색 투영 선들이 평행하다.
    • 멀리 있으나 가까이 있으나 크기가 똑같이 보인다. 원근감 X
      • 2D 에서 많이 사용된다.
      • 3D 에서 사용하면 ‘길건너 친구들’ 게임 처럼 3D면서도 원근감이 없는 독특한 시점이 연출 된다.

Target Texture

카메라가 찍는 화면을 텍스처로서 만들 수 있다. 예를 들어 게임 내에서 CCTV를 사용한다면 그 CCTV 화면 텍스처를 실제로 뭐 다른 카메라 오브젝트가 촬영하는 화면으로 담을 수도 있고 캐릭터 선택 화면 등등 다양한 곳에서 사용할 수 있다. 미니맵 또한 이 기능으로 만들 수 있다! 맵 전체를 촬영하는 카메라를 두고 이 카메라가 찍는 화면을 텍스처로 만들면 될 듯 하다.

카메라에 기본으로 붙는 Audio Listener 컴포넌트는 마이크 같은 기능을 수행한다. 게임 주변의 소리를 녹음하고 플레이어의 스피커를 통해 재생한다. 이 AudioListener은 한 Scene에 한개만 존재해야 한다. 따라서 카메라를 여러개 생성하는 경우에는 일일이 다 이 Audio Listener 컴포넌트를 삭제해주자.



🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우 
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄

맨 위로 이동하기

댓글남기기