DNF LOVE

[Unity기초-2] Object에 Material 씌우기 본문

Programming/Unity

[Unity기초-2] Object에 Material 씌우기

botho 2019. 7. 19. 16:33
반응형

기초-1 에서 우리는 이 상태로 끝맞췄었다. 

TMI이지만 난 밝은것, 흰 색에 많이 약한 편이다 이런놈들 오래보고 있으면 눈이랑 머리가 아프기 때문이다.

또, Player와 Plane을 구분하기 위해 우린 Material을 씌우겠다.

Material은 Object의 재질, 표면, 쉐이더, 색 등등을 설정할 수 있는 3d 게임에서 매우 중요한 요소를 차지하고 있다.

 

우선 나는 Project에서 Material 폴더를 만들었다. (오른쪽 마우스 -> Create -> folder)

또, Material 폴더에 들어가서 Material을 Player와 Plane의 이름으로 2개 생성해 주었다.

쉐이더를 설정할 수 있는 Shader와 첫 번째 파라미터인 렌더링 모드도 설정할 수 있다.

렌더링 모드에서 오브젝트의 투명도 사용 여부와, 사용하는 경우 사용할 블렌딩 모드 타입을 선택할 수 있다.

  • Opaque - 디폴트입니다. 투명한 영역이 없는 일반 솔리드 오브젝트에 적합합니다.

  • Cutout - 투명 영역과 불투명 영역 사이에 하드 에지가 있는 투명 효과를 만들 수 있습니다. 이 모드에서는 반투명 영역이 없고 텍스처가 100% 불투명이거나 보이지 않습니다. 이 모드는 나뭇잎이나 구멍과 찢어진 부분이 있는 옷감 같은 머티리얼의 형상을 만들기 위해 투명도를 사용할 때 유용합니다.

  • Transparent - 투명한 플라스틱이나 유리처럼 투명한 머티리얼을 사실적으로 렌더링하는 데 적합합니다. 이 모드에서는 머티리얼 자체에 (텍스처의 알파 채널과 틴트 컬러의 알파에 기반한)투명도 값이 있지만, 반사 및 조명 하이라이트는 실제 투명 머티리얼과 마찬가지로 계속 완전히 투명하게 보입니다.

  • Fade - 투명도 값으로 오브젝트에 있는 모든 스페큘러 하이라이트 또는 반사를 포함하여 오브젝트를 완전히 페이드 아웃할 수 있습니다. 이 모드는 오브젝트 페이드 인 또는 페이드 아웃을 애니메이션으로 나타내고 싶을 때 유용합니다. 반사와 하이라이트도 페이드 아웃되므로 투명한 플라스틱 또는 유리 등의 투명 머티리얼의 사실적인 렌더링에는 적합하지 않습니다.

(Unity Document를 활용하면 많은걸 알 수 있다 - https://docs.unity3d.com/kr/current/Manual/StandardShaderMaterialParameterRenderingMode.html)

우리는 색상만 수정할 거기 때문에 쉐이더는 스탠다드, 렌더링모드는 Opaque를 사용하겠다.

색상변경은 간단하게 두번째 파라미터에서 Albedo를 누르면 변경할 수 있다. 

Player 는 505050 으로, Plane은 077E4E 이 색으로 각각 설정해 주었다.

Material을 해당 Object 컴포넌트로 붙이는 방법은 간단하다.

Material을 설정하고자 하는 하이라키 내부의 Object에 끌고 오는 것이다.

이런식으로!

두 Material을 각 컴포넌트에 붙여주면 이런식의 모습이 된다.

-끗-

반응형