
프로젝트의 머티리얼 관리
Tutorial
Beginner
+10XP
25m
(565)
Unity Technologies

머티리얼을 사용하여 3D 오브젝트에 컬러, 텍스처, 스타일을 적용하는 등 더욱 예술적인 작업을 많이 진행할 수 있습니다. 이 튜토리얼에서는 머티리얼의 작동 방식과 프로젝트에서 머티리얼을 사용하고 문제를 해결하며 정리하는 방법을 알아봅니다.
이 튜토리얼에서 배울 내용은 다음과 같습니다.
- 머티리얼을 정의합니다.
- 새 머티리얼 만들기
- 게임 오브젝트에 머티리얼을 할당합니다.
- 머티리얼을 프로젝트 에셋의 일환으로 관리합니다.
- 손상된(마젠타) 머티리얼을 수정합니다.
Resources
Languages available:
1. 개요
셰이더는 렌더링 프로세스에서 매우 중요한 부분이지만, 제작 작업의 상당 부분은 머티리얼을 사용하여 진행됩니다. 머티리얼은 메시의 외형을 정의하는 컬러, 이미지 및 기타 프로퍼티를 포함하는 에셋이며, 프로젝트와 함께 저장되고 Project 폴더에서 관리됩니다.
이 튜토리얼에서는 머티리얼을 사용하여 제작 작업을 진행하고 프로젝트에서 머티리얼을 관리하는 방법을 알아봅니다. 머티리얼 에셋을 잘 관리하면 항상 기대한 결과를 얻고 프로젝트를 체계적으로 유지할 수 있습니다. 이 과정에서 정물 구도를 만들기 시작할 것입니다.
2. 셰이더와 머티리얼의 관계
셰이더는 용도가 매우 구체적일 수도 있고 상당히 다양할 수도 있습니다. 셰이더는 게임 오브젝트의 컬러를 설정하거나 머티리얼을 통해 컬러를 설정하는 데 사용할 수 있습니다. 실제로 하나의 셰이더만으로 여러 오브젝트를 완전히 다른 서브스턴스처럼 보이게 하면서도 씬에 통일된 느낌을 줄 수 있습니다.
유니티 갤러리에서 보이는 모든 것은 URP/릿 셰이더를 사용합니다! 각 게임 오브젝트가 서로 다르게 보이는 이유는 컬러와 평활도를 비롯해 머티리얼이 셰이더에 제공하는 프로퍼티 때문입니다.
셰이더와 머티리얼은 한 팀처럼 함께 작동합니다. 셰이더는 표면이 어떻게 보일 수 있는지를 정의하고, 머티리얼은 실제로 어떻게 보이는지를 정의합니다.
3. 마젠타 머티리얼 수정
워크벤치에 주의를 기울여야 할 문제가 있습니다. 바로 밝은 마젠타색 오브젝트입니다. 이 오브젝트는 이 컬러로 설계된 것이 아닙니다. 마젠타(분홍색) 컬러는 수정이 필요한 오류를 나타냅니다.
각 머티리얼은 특정 셰이더에 맞게 작성됩니다. 한 프로젝트에서 다른 프로젝트로 에셋을 임포트하는 것은 일반적인 방식이지만, 때로는 해당 프로젝트의 렌더 파이프라인이 일치하지 않아 셰이더도 일치하지 않는 경우가 있습니다. 머티리얼에 현재 렌더 파이프라인과 맞지 않는 셰이더가 있으면 경고의 의미로 밝은 마젠타색(분홍색)이 표시됩니다.
레몬을 수정하세요.
1. 씬 뷰에서 밝은 마젠타색 레몬을 선택합니다.
2. 인스펙터에서 머티리얼을 살펴봅니다. 셰이더가 Standard로 설정되어 있습니다. Unity에서 셰이더 이름이 Standard로 표시되면 빌트인 렌더 파이프라인용 스탠다드 셰이더일 가능성이 높으며, 이 셰이더는 유니버설 렌더 파이프라인에서 작동하지 않습니다. 이를 URP 셰이더로 변경해야 합니다.
3. Shader 드롭다운에서 Universal Render Pipeline > Lit을 선택합니다. 레몬이 제대로 보입니다!
이제 손상된 머티리얼이 수정되었습니다. 하지만 손상된 머티리얼이 모두 이렇게 쉽게 수정되는 것은 아닙니다. 이 경우 두 셰이더의 머티리얼 프로퍼티가 비슷했기 때문에 머티리얼을 쉽게 전환할 수 있었습니다. 다른 경우에는 이름이 매우 다른 머티리얼 프로퍼티나 완전히 다른 프로퍼티를 접할 수 있으며, 이때는 수동으로 재설정해야 합니다.
URP용 자동 머티리얼 업그레이드
이 프로젝트에는 손상된 다른 머티리얼도 몇 개 있으므로, 손상된 머티리얼을 전환하는 URP의 빌트인 툴을 시연해 보겠습니다. 프로젝트 창의 Assets > CreativeCore_Shaders > Materials > Standard 폴더에서 해당 머티리얼을 볼 수 있습니다.
프로젝트의 모든 머티리얼을 업그레이드하려면 다음 지침을 따르세요.
1. 메인 메뉴에서 Window > Rendering > Render Pipeline Converter로 이동하여 Render Pipeline Converter 창을 엽니다. 이 창에서는 여러 유형의 에셋을 최신 URP 표준으로 업데이트할 수 있습니다.
2. 창 상단 근처에는 기본적으로 Built-in to URP로 표시되는 드롭다운 메뉴가 있습니다. 이 옵션으로 설정되어 있는지 확인합니다.
3. 창을 아래로 스크롤하여 Material Upgrade 섹션을 찾고 해당 섹션을 활성화합니다.
4. 창 아래쪽에서 Initialize Converters를 선택합니다. 업그레이드할 머티리얼 목록이 Material Upgrade 섹션에 표시됩니다.
5. 창 아래쪽에서 Convert Assets 버튼을 선택하여 머티리얼을 URP로 업데이트합니다. 마젠타색 머티리얼이 의도한 컬러와 텍스처로 바뀝니다.
이 기능은 유니버설 렌더 파이프라인을 사용하는 Unity 프로젝트에서 사용할 수 있습니다. 다른 렌더 파이프라인에서 개발된 에셋 패키지를 임포트하거나, 프로젝트를 다른 렌더 파이프라인에서 URP로 전환할 때 이 방법을 기억하세요.
팁: 단일 머티리얼도 업그레이드할 수 있습니다. 프로젝트 창에서 머티리얼을 선택한 다음 메인 메뉴로 이동하여 Edit > Rendering > Materials > Convert Selected Built-in Materials to URP를 선택하세요.
4. 기본 머티리얼 확인
이제 예술 작품을 만들어 보겠습니다. 다음으로, 머티리얼을 적용할 수 있도록 워크벤치에서 작업할 새로운 3D 오브젝트를 만듭니다. 새로운 게임 오브젝트이므로 기본 머티리얼이 적용되어 있습니다.
새 게임 오브젝트의 머티리얼을 살펴봅시다.
1. 워크벤치에서 방해 요소가 없는 공간을 확보할 수 있도록 씬 뷰의 위치를 조정합니다.
2. 계층에서 상단의 더하기(+) 버튼을 사용하여 3D Object > Sphere(또는 다른 프리미티브 셰이프)를 선택합니다.
3. 씬 뷰에서 새 프리미티브 게임 오브젝트를 선택하고 잘 보이도록 위치를 조정합니다.
4. 인스펙터 창에서 머티리얼 인스펙터를 확장합니다. 새 프리미티브에 적용된 머티리얼의 이름이 Lit이고, 유니버설 렌더 파이프라인/릿 셰이더를 사용하고 있음을 확인할 수 있습니다. 이것이 유니버설 렌더 파이프라인의 기본 머티리얼입니다.
참고: 여기 있는 모든 항목이 회색으로 표시되는 이유는 이 Lit 머티리얼이 셰이더의 기본 머티리얼이기 때문입니다. 이 머티리얼은 편집할 수 없습니다(코드를 통해서는 가능). 새 게임 오브젝트를 만들 때마다 이 기본 머티리얼이 표시됩니다.
다음으로 기본 머티리얼을 다른 머티리얼로 바꿔 보겠습니다.
5. 프로젝트 창에서 머티리얼 찾기
Unity 프로젝트에는 일반적으로 프로젝트 창을 통해 액세스할 수 있는 Materials 폴더가 포함됩니다. 하지만 에셋 스토어나 다른 소스에서 에셋을 임포트하면 다른 위치에 추가 Materials 폴더도 임포트될 수 있습니다. 프로젝트에서 어떤 머티리얼이든 찾을 수 있는 몇 가지 방법이 있습니다. 아트 작업에 필요한 머티리얼을 찾으려면 다음 팁과 기법을 활용해야 합니다.
Favorites
프로젝트 창에서 Two Column 레이아웃을 사용하여 Favorites > All Materials를 선택하면 프로젝트의 모든 머티리얼을 볼 수 있습니다.
이를 선택하면 프로젝트 창의 검색 상자에 t:Material이 나타납니다. t:를 사용한 검색은 에셋의 type을 나타냅니다. (프로젝트의 모든 스크립트를 검색하려면 t:Script를 입력하면 됩니다.) 지금은 그대로 두겠습니다.
프로젝트 창 상단의 옵션을 선택하여 검색 범위를 In Packages의 머티리얼, In Assets(Assets 폴더)의 머티리얼 또는 선택한 폴더의 머티리얼로 좁힐 수 있습니다. 프로젝트의 머티리얼만 보려면 In Assets를 선택합니다.
검색
프로젝트 창의 검색 표시줄에서 검색어에 ‘red’를 추가하여 쿼리를 t:Material red로 만들면 이름에 ‘red’가 포함된 모든 머티리얼을 찾을 수 있습니다.
AppleRed를 찾아보세요.
6. 게임 오브젝트에 머티리얼 적용
이미 게임 오브젝트에 머티리얼을 적용했지만, 더 다양한 적용 방법을 알고 싶을 수 있습니다. 아직 선호하는 방법을 찾지 못했다면 아래 목록을 참고하세요.
다음 방법으로 머티리얼을 적용해 보세요.
1. 프로젝트 창에서 씬 뷰의 오브젝트로 머티리얼을 드래그합니다.
2. 프로젝트 창의 머티리얼을 인스펙터 창에 있는 Mesh Renderer 컴포넌트의 Materials 프로퍼티로 드래그합니다.
3. 인스펙터 창에서 오브젝트 선택자(⊙)를 사용하여 다이얼로그 창을 연 다음, 스크롤하거나 머티리얼을 검색하여 원하는 머티리얼을 선택합니다.
4. 원하는 머티리얼이 적용된 게임 오브젝트를 선택하고, 인스펙터 창에서 해당 머티리얼의 썸네일을 씬 뷰의 게임 오브젝트로 드래그합니다.
AppleRed 머티리얼을 새 게임 오브젝트에 적용하고 흰색 사과에도 적용합니다. 원한다면 다른 오브젝트에도 적용해 보세요!
참고: 사과 게임 오브젝트는 AppleBody라는 자식이 있는 부모 오브젝트입니다. AppleBody 자식 오브젝트에 머티리얼이 적용됩니다.
하나의 머티리얼, 여러 게임 오브젝트
하나의 머티리얼을 여러 게임 오브젝트에 사용하면 편리합니다. 시간을 절약하고 게임 오브젝트에 일관된 외형을 적용할 수 있습니다. 그러나 머티리얼은 프로젝트에 저장되는 에셋이라는 점을 기억해야 합니다. 한 게임 오브젝트에서 머티리얼을 변경하면 그 머티리얼이 사용된 모든 게임 오브젝트에서 변경됩니다!
게다가 여러 씬의 여러 게임 오브젝트에서 하나의 머티리얼을 사용할 수 있으며, 한 씬에서 머티리얼을 변경하면 모든 씬에 반영됩니다!
머티리얼을 어떻게 사용하고 정리하는지 알지 못하면 문제가 될 수 있습니다. 다음 단계에서는 이 내용을 실제로 확인하고 관리하는 방법을 알아봅니다.
7. 머티리얼 변경
AppleRed 머티리얼의 컬러를 변경하세요.
1. 워크벤치의 둘 이상의 오브젝트에 AppleRed 머티리얼을 적용했는지 확인합니다.
2. AppleBody(Apple의 자식 오브젝트)를 선택하고 인스펙터 창에서 머티리얼 인스펙터를 확인합니다.
3. 컬러 피커가 있는 Base Map 프로퍼티를 찾습니다. 이 컬러 피커를 사용하여 AppleRed 머티리얼의 컬러를 변경합니다. 이 머티리얼이 적용된 다른 오브젝트도 변경됩니다!
게임 오브젝트를 선택하고 머티리얼 인스펙터를 사용하면 선택한 게임 오브젝트만이 아니라 해당 머티리얼이 사용된 모든 곳에서 머티리얼이 변경된다는 점을 기억해야 합니다!
지금은 사과의 새로운 컬러를 선택하여 초록색 그래니 스미스나 노란색 골든 딜리셔스 사과를 만들어 보세요.
8. 게임 오브젝트에 적용된 머티리얼 찾기
이제 컬러를 변경했으므로 AppleRed라는 이름은 더 이상 이 머티리얼에 맞지 않습니다. 다음으로, 프로젝트 에셋에서 해당 머티리얼을 찾아 이름을 변경하세요.
씬 뷰를 사용하여 프로젝트에서 머티리얼을 찾을 수 있습니다.
1. 프리미티브 오브젝트를 선택합니다.
2. 인스펙터에서 Mesh Renderer 컴포넌트의 Materials 하위 섹션을 찾습니다.
3. AppleRed 머티리얼이 적용된 요소를 찾아 선택합니다. 프로젝트 창에서 해당 머티리얼이 포함된 폴더가 열리고 머티리얼 이름이 강조 표시됩니다.
4. 프로젝트 창에서 AppleRed 머티리얼을 오른쪽 클릭하고 Rename을 선택한 다음, 머티리얼의 새 컬러를 설명하는 이름을 지정합니다.
9. 새 머티리얼 만들기
이제 컬러가 같은 오브젝트가 둘 이상 있지만, 좋은 구도를 위해서는 다양한 컬러가 필요합니다.
다음으로, 사과를 복제하고 새 머티리얼을 생성하세요.
1. 씬 뷰에서 사과 중 하나를 선택하고 Ctrl+D(Windows) 또는 Cmd+D(macOS)를 눌러 복제합니다.
2. 새 사과의 위치를 워크벤치의 빈 공간으로 옮깁니다.
3. 새 머티리얼을 이 위치에 생성하려면 프로젝트 창에서 Assets > CreativeCore_Shaders > Materials 폴더를 엽니다.
4. Materials 폴더에서 오른쪽 클릭하고 Create > Material을 선택합니다.
5. 이 머티리얼의 이름을 ‘AppleRed 2’로 지정합니다.
6. Base Map 프로퍼티의 컬러 피커를 사용하여 사과에 어울리는 빨간색 음영을 선택합니다.
7. 이 머티리얼을 새 사과에 적용합니다.
10. 머티리얼 복제
여러 오브젝트가 아닌 하나의 오브젝트 외관만 변경하는 또 다른 방법은 기존 머티리얼을 복제하여 오브젝트에 적용한 다음 중복된 머티리얼을 변경하는 것입니다.
새 AppleRed 2 머티리얼을 복제하여 씬에 더욱 다양한 변화를 줄 새 머티리얼을 생성하세요.
1. 씬 뷰에서 새로운 빨간 사과를 선택하고, 부모 오브젝트가 선택되어 있는지 확인합니다.
2. Ctrl/Cmd+D를 사용하여 빨간 사과를 복제합니다.
3. 두 빨간 사과를 나란히 볼 수 있도록 새 사과를 이동합니다. 이제 같은 머티리얼을 사용하는 동일한 빨간 사과가 두 개 있습니다.
4. 프로젝트 창에서 Materials 폴더로 돌아가 AppleRed 2 머티리얼을 선택하고 Ctrl/Cmd+D를 사용해 복제합니다.
5. 새 머티리얼의 이름을 ‘AppleRed Light’로 바꾸거나, 원하는 컬러를 설명하는 다른 이름을 선택합니다.
6. 이 새 머티리얼을 복제된 사과에 적용합니다. 지금은 여전히 동일하게 보입니다.
7. 새 머티리얼의 Base Map 컬러를 변경합니다. 이제 변경 사항이 새 사과에만 영향을 주는 것을 확인할 수 있습니다.
이제 정물 구도에 사용할 수 있는 사과가 여러 개 있습니다. 구도에 새 오브젝트를 추가하고 싶을 때마다 빈 받침대로 옮기세요.
11. 머티리얼 탐색 및 제작 시작
워크벤치에서 이 프로젝트의 다른 흥미로운 머티리얼을 적용해 보세요. 단, 프로퍼티는 변경하지 마세요. 각 머티리얼의 다양한 프로퍼티를 살펴보세요. 여러 머티리얼을 다양한 오브젝트에 적용하다 보면 다소 이상한 결과가 나올 수 있지만, 이 튜토리얼을 완료할 때쯤에는 각 머티리얼이 게임 오브젝트의 외관을 어떻게, 왜 바꾸는지 이해하게 될 것입니다.
12. 다음 단계
구도에 배치할 사과를 만들면서 머티리얼을 찾고, 적용하고, 변경하고, 생성하고, 복제하는 방법을 배웠습니다. 이어지는 튜토리얼에서 머티리얼에 대해 더 배우고 이를 활용해 제작하면 머티리얼을 능숙하게 다룰 수 있게 됩니다.