Texture와 Material, Shader

대인공·2022년 10월 11일
0

Unity

목록 보기
1/14
post-thumbnail

Texture

- 3D 모델의 표면에 매핑 시킬 이미지 파일을 지칭한다.
- PSD, PNG, JPEG, TIFF, GIF등 다양한 포멧을 지원한다..
(PSD파일인 경우 여러개의 레이어를 자동으로 평면화 한다.)
- 크기가 가로세로가 2n의 형태일 때 압축을 지원하며 속도가 가장 빠르다.
- [Project]에서 이미지를 선택하면 [Inspector]에 아래와 같이 텍스처의 세부정보를 조회하거나 속성을 설정할 수 있다.

* 해당 Texture의 세부 정보
- 해상도, 적용된 압축 알고리즘, 파일 크기 순으로 나열된다.
- 해상도를 변경하여 파일의 크기를 조절할 수 있다.



Material

- 3D모델과 Texture사이에는 반드시 Material이라는 매개체가 있어야 한다.
- 3D모델에 적용할 Texture의 다양한 속성을 설정하는 역할을 한다.
(ex. 어떤 Texture를 어떤 간격으로 배치, 표면의 재질은 어떠하게 표현하느냐 등)

* Material의 Property
여러 Texture를 적용한 것을 볼 수 있다.



shader및 물리 기반 Shading

- Material에 적용한 Texture를 Rendering할 때 표면의 재질감을 표현하는 방식을 결정한다.
- 유니티에는 내장 셰이더(Built in Shader)와 물리 기반 셰이딩(PBS, Physically-Based Shading)를 제공한다.

  • PBS
    - 물체가 가지고 있는 고유의 특성에 맞게 재질을 표현하는 것으로 여러 재질감을 하나의 Shader에서 표현할 수 있도록 설계되어 있다.

기본 Shader의 Property


  • Rendering Mode
    - Opaque(불투명) : 기본값으로 불투명한 Texture를 표현하는 옵션 / 투명한 부분이 전혀 없는 Solid 객체에 적합하다.
    - Cutout(그물망 표현) : 불투명한 부분과 투명한 부분을 동시에 표현하는 옵션 / 풀 , 그물망과 같은 객체를 표현할때 적합하다.
    - Transparend(투명) : 투명한 플라스틱 또는 유리와 같은 재질을 표현하는 옵션
    - Fade(홀로그램 효과) : 투명 속성값을 갖고 있는 객체를 페이드 아웃시키는 옵션 / 페이드 인, 아웃을 애니메이션 처리할 수 있다. 불투명한 객체를 부분적으로 페이드 아웃시킬 수 있어 홀로그램 효과를 구현하는데 적합하다.

  • Albedo
    - 빛을 반사하는 정도를 말한다. ( *반사율 )

  • Metallic
    - 객체 표면에 금속의 재질을 표현하기 위한 Texture이다.
    - 값이 1에 근접할 수록 금속 재질에 가까워진다.

  • Normal Map
    - 표면의 굴곡을 표현하기 위한 Texture이다.
    - 3D모델링으로 많은 폴리곤을 소모하지 않고 유사한 효과를 낼 수 있다.
    - 값이 커질수록 거친 음영효과를 낸다.

  • Height Map
    - Texture로, 높낮이를 표현하는 것으로 보통 Terrain을 표시할 때 사용된다.
    - Texture가 연결되면 슬라이드가 표시되고 돌출되는 높낮이를 설정할 수 있다.

  • Occlusion
    - 흑백의 Texture로 구성되어 있으며, 간접조명에 의해 생기는 명암을 표시하여 사물의 입체감과 깊이감을 표시할 때 사용된다.

  • Emission
    - 스스로 빛을 방출하는 속성이다.
    - 값을 변경하면 객체의 표면에서 방출되는 빛의 강도와 빛의 색상을 설정할 수 있는 항목이 나타난다.
    - 하단에 전역조명에 반영하기 위한 옵션이 나타난다.

  • Detail Mask
    - Secondary Maps에 적용할 마스크를 설정하는 Texture 슬롯이다.
    - 특정 부분만 세부적인 Texture를 적용 할 때 사용된다.


profile
이제 막 시작하는 유니티 클라이언트

0개의 댓글