2015년 2월 26일 목요일

유니티 - 카메라 컴포넌트 설명

목차


Clear Flags

화면의 어디를 클리어 시킬 것인지를 정한다
라고 유니티 공식에 설명되어 있는데
이름도 거지같고 설명도 거지같아서 정확히 뭘 하는지 이해하는 거 자체가 거지같다
클리어가 Skybox이면 Skybox를 클리어한다? 실상 나타나는건 그 반대로 Skybox만 남긴다
반면 Depth Only의 경우는 진짜로 그 Depth만 남긴다.. 이러니 개판이지..
그러니 그냥저냥 알고 넘기자

Skybox

스카이 박스라 불리는 배경전용 셰이더로 빈공간을 채운다

Solid Color

빈공간을 단색으로 칠한다

Depth Only

빈공간을 투명처리한다.
카메라 두 대 이상을 한 화면에 합성할때 주로 사용한다.
아래 설명해놨지만 카메라의 Viewport를 수정하지 않는 이상 카메라를
10대를 놔도 한화면에 각 카메라의 영상을 가져와서 depth 순서대로 차곡차곡 쌓는다
당연히 화면에 투명한 부분이 없으면 뒤의 화면은 암것도 안보이게 되므로
이러한 처리가 반드시 필요하다
이는 또한 밑에서 설명할 Culling Mask와 같이 사용하는 것이 일반적이다
사용예를 하나 들어보자
적외선모드를 키면 벽넘어의 인물을 보이게 할려고 한다.
이때 벽을 랜더링 속성을 꺼버린다거나 하는 수가 있지만 일일이 벽들을 찾아서
그런 짓을 하기가 번거롭기도 하고 성능상으로도 문제가 될 수 있다
이것을 카메라 두 대로 처리하면 매우 간단히 처리가 된다
메인 카메라와 서브카메라를 두고 서브는
모든 사물의 모습을 끄고 단지 인물만 보이도록 해놓는다
그런 후 서브카메라를 Depth Only 설정으로 두고 켜버리면 벽안에 있든 말든
장소든 상관없이 화면 젤 위에 다 노출되게된다. 그런 점을 이용해서
일단 서브카메라를 꺼놓다가 적외선 모드 이런 것을 쓸때만 딱 키면
depth only
위에서처럼 벽넘어의 모습을 탐색하는 것 같은 효과를 줄 수 있는 것이다

Don’t Clear

이건 화면을 새로 갱신하지 않고 이전의 화면 위에다가 다시 그린다
덕분에 오브젝트가 움직이면 잔상이 화면에 잔뜩 남게 된다
일반적으로 게임에 사용하진 않지만 셰이더를 따로 만들어서 스파의 초필살기의
잔상처럼 쓸 순 있는 것 같기도한데.. 해보니까 2D 쪽은 뭔가 잘 안된다. 걍 패스

Background

위의 Clear flags에서 solid Color를 적용할때 나오는 색

Culling Mask

보여질 레이어들. 디폴트는 모든 레이어가 체크되어 있는데 체크를 끄면
해당 레이어의 물체들은 카메라 화면에서 안보이게된다. (모습만.. 그외는 그대로다)

Projection

원근과 직교 투사방식
원근은 가까운 건 크게, 멀리있는 것은 작게 보이는 방식이고
직교는 그딴거 없다.
화면상에 뭔가 보이는 방식은 카메라의 시야각안에서 평면으로 싹뚝짤라서 나오는 방식이다
Perspective
Perspective
A부분을 싹뚝 잘라서 가져오면 가까울수록 빨간 시야각이 좁으므로
화면이 작아서 상대적으로 물체가 차지하는 비중이 크다
B부분은 화면이 커져서 상대적으로 물체가 차지하는 비중이 작다

Orthographic
Orthographic
처음부터 시야각엄청 넓으면서 동일한 Orthographic 방식은 거리가 멀어도 항상
동일한 물체 크기를 가지게된다

Orthographic

Clipping Planes

위에서 싹뚝 자르는 것은 전지역에 걸쳐서 촘촘히 이뤄지는데
무한정 그러다간 컴터 터질 것이고 시작 평면과 끝 평면을 정해놓고 그 안의 것만
랜더링한다. 이 사이에 안들어가면 화면상에 보이지 않게된다

Viewport Rect

위의 perspective 화면을 보면
Perspective
사실은 이래야 정상이다. 화면 크기 자체가 달라지는 것이다
하지만 그렇게하면 화면상에 표현하는데 온갖 에로사항이 꽃피게 되고..
의도에도 맞지 않는다
그래서 뷰포트(Viewport )라는 모두에게 적용되는 가상의 화면이 필요하게 되었다
뷰포트는 모두가 같은 화면에서 단지 오브젝트의 비중으로 화면을 정하며
비중은 백분율.. 즉 0부터 1까지만 허용한다

  • X : 가로 원점
  • Y : 세로 원점
  • W (Width) : 가로 넓이
  • H (Height) : 세로 높이

이렇게 되어 있는데 하나의 카메라는 하나의 뷰포트만을 가지며
기본값은 항상 현재 화면의 전체크기이다.
그래서 기본값으로는 카메라가 10대라도 다 겹치게 되는 것이다
하지만 값을 변경하여 카메라 각각의 화면을 보이게 할 수 있다
viewport
xy를 0.7정도로 wh를 0.2 정도로한 미니맵용 카메라

Depth

오브젝트들이 순서가 있듯이 카메라의 보여지는 순서

Rendering Path

랜더링 패스를 지정한다.

Target Texture (Unity Pro only)

카메라 화면을 게임상 오브젝트의 텍스쳐에다가 붙여 넣을 수 있다
야구장에서 중계스크린이 붙어 있는 것 같은 효과

HDR

HDR 랜더링을 한다.

Written with StackEdit.

Related Posts:

  • 2FA와 OTP의 원리목차 2FA (Two-Factor Authentication) OTP OTP 원리 2FA (Two-Factor Authentication) 2FA는 이중인증이라고 불린다. 곧 소개할 OTP 처럼 코인계에선 무조건 필수이다. 정작 스팀 사이트에선 지원하지 않는게 엄청난 에러긴한데 그 대체로써 마스터 패스워드를 컴퓨터와 완전 분리해두는 방법이 있긴하니 숙지해두자. 여튼 … Read More
  • Git 시작하기 4 - reset목차 git reset 명령어 다시 원상태로 reflog git reset 명령어 저번에는 git commit으로 백업을 진행시켰다 (무려 1년도 넘은 저번편이지만..) 백업을 하는 이유 중 하나는 바로 되돌리기를 위해서이다 그 되돌리기를 하는 명령어가 바로 reset 이다 명령어부터 대놓고 쉽다 이걸로 끝이면 좋겠지만 불행해도 쪼끔 더 복잡하다 reset은 3가지 영… Read More
  • 코딩교육에 대한 기대감목차 코딩교육 2박 3일 54만원짜리.. 코딩교육 내년부터 코딩 교육이 의무교육이 됩니다. 코딩은 다른 공부에 비해 결과를 직접 바로바로 볼 수 있으므로 굉장히 재밌고 그러한 재미를 통해서 논리적 사고를 쌓는데 최고의 도구라고 할 수 있죠 ��내 아이 ‘코포자’ 안돼 - 네이버기사 그렇지만 이좋은 교육도 한국패치를 당하고 나면 이렇게 되어버립니다. 그… Read More
  • 비트코인(블록체인) 초보 입문 - 비트코인의 개념목차 돈이란 무엇인가 가상화폐 비트코인의 등장 돈이란 무엇인가 돈이 가치를 지니는 것은 뒤에 누군가가 중재해주기 때문이다. 카지노의 칩을 생각해보라 이런 장난감이 가치를 지닐 수 있는건 해당 카지노가 보증을 서주기 때문이다. 마찬가지로 현실의 돈은 각각의 국가가 보증을 서줌으로써 가치를 지닌다. 만약 전쟁이라도 일어나면 해당 국가의 지폐가치가 확 떨어지는 것은… Read More
  • 컴퓨터와 프로그래밍의 개념원리목차 반도체 아날로그와 디지털 프로그래밍은.. 컴퓨터와 프로그래밍은 긴밀하게 묶여있지만 그것이 어떻게 묶여있는지는 잘모르는 사람이 많다. 원래부터 흥미가 있었던 사람이나 전공에서 일정부분 진행하지 않는 이상 그 실체가 드러나지않기 때문이기도 하지만 근본적으론 한국교육 방식이 글러먹었기 때문이다 왜 그런가로 흥미 유발을 하고 그것을 해결해나가게 한후 그 이후에 더 쉽게 해결… Read More

댓글 2개 :

  1. 우와 카메라 컴포넌트 이해안되는거 몇가지 있던게 싹 이해가되네요..!! 좋은 글 감사합니다 링크 블로그에 저장해서 두고두고 참고할게요 감사합니다!

    답글삭제
  2. 설명 너무 잘하신듯 합니다. 첫문단 공감하네요. ㅋㅋㅋ

    답글삭제