유니티 3D 에서 반사효과 내기
유니티에서는 Shader 설정을 통해 거울이나 반사경 등에서 주변 환경이 반사되어 보이는 효과를 매우 쉽게 구현할 수 있다.
여기서는 헬기모델의 앞 유리(캐노피)에 주변 하늘의 풍경이 반사되어 보이는 효과를 내보려고 한다.
사용된 3D 모델은 TF3DM 사이트에서 다운로드할 수 있다
유니티 Project 뷰의 Assets 폴더 아래에 Gazelle 폴더를 생성하고 그 안에 Tex 폴더를 생성한 다음 Tex 폴더 안으로 모델에 포함된 텍스쳐 이미지를 모두 임포트한다
텍스쳐 이미지를 한개씩 임포트하기가 귀찮다면 탐색기에서 유니티 프로젝트 폴더 안으로 이동하여 Tex 폴더를 찾아서 그 곳에 텍스쳐 이미지를 모두 복사해 넣으면 좀더 간편하고 시간도 줄일 수 있다
이어서 Project 뷰의 Gazelle 폴더에 FBX 모델을 임포트하면 아래의 그림처럼 모델에 텍스쳐가 적용되어 Scene 뷰에 보이게 된다
위의 그림에서 헬기의 캐노피(앞유리)가 투명해서 안쪽이 보이는 것을 확인할 수 있다.
유니티에서 앞유리를 찾아내서 선택하고 Shader 설정을 통해 투명한 효과 대신 반사효과로 교체 설정하고자 한다.
Hierarchy 뷰에서 헬기모델의 삼각형 아이콘을 눌러 하위 메시들을 나열하고 맨 위의 메시부터 마우스로 클릭하여 Scene 뷰에서 선택된 부위를 확인한다.
마우스로 일단 선택한 이후에는 키보드에서 아래쪽 화살표를 이용하여 신속하게 다음 메시로 선택을 이동할 수 있으므로 좀더 편리하게 찾아 나갈 수 있다
다음과 같이 캐노피를 찾아내고 Inspector 뷰의 하단을 보면 Shader 설정에 Transparent/Diffuse 로 설정된 것을 볼 수 있는데 이 부분의 설정을 Reflective/Diffuse 로 변경하면 된다
Reflective / Diffuse 로 설정된 캐노피는 다음과 같은 상태가 되고 유니티는 Reflective Cubemap 을 설정할 것을 요청하고 있다.
유니티는 반사효과를 내기 위해 Cubemap 설정을 요청하고 있으므로 Cubemap을 생성하고 위의 Cubemap 란에 배정해야 한다
다음과 같이 Cubemap 을 생성하는 작업을 시작한다
위와 같이 설정하면 Project 뷰에 새로운 Cubemap 이 생성되고 Inspector 뷰에는 6개의 이미지를 배정할 수 있는 항목이 나타난다. 각 6개 항목의 Select 버튼을 눌러서 텍스쳐 이미지를 배정하면 된다
Cubemap 을 구성하는 6개의 텍스쳐 이미지를 모두 배정하면 아래의 그림과 같이 Cubemap 이 완성된다
다시 Hierarchy 뷰에서 헬기의 캐노피에 해당하는 메시를 선택하고 Inspector 뷰 하단에 Cubemap을 설정할 수 있는 섹션이 보이면 Project 뷰에 생성된 Cubemap을 드래그하여 Inspector 뷰의 Cubemap 란에 배정하면 된다
위의 설정을 마치면 다음과 같은 장면을 확인할 수 있다