PBR 텍스처

*이 콘텐츠는 AI(베타)를 사용해 번역되었으며, 오류가 있을 수 있습니다. 이 페이지를 영어로 보려면 여기를 클릭하세요.

물리 기반 렌더링 (PBR) 텍스처는 단일 객체에 여러 유형의 텍스처 이미지 또는 을 사용하여 사실적인 음영 및 조명을 표현할 수 있게 해줍니다. 여러 텍스처 맵을 결합하면 어떤 조명 환경에서도 색상, 거칠기 및 반사율을 더 정확하게 시뮬레이션할 수 있으며, 자산 및 환경의 시각적 요소를 향상시킬 수 있습니다.

드레드락을 한 인간형 아바타, 광택이 나는 재킷, 데칼이 있는 청바지, 부츠.
짧은 머리를 한 인간형 아바타, 가죽 재킷, 카프리 바지, 주황색 신발.

PBR 텍스처를 생성하기 위한 다양한 애플리케이션과 워크플로우가 있습니다. 이러한 텍스처는 Roblox Studio가 사용하는 특정 텍스처 맵을 지원하는 경우, 사용자 정의 3D 객체 생성의 모델링 및 텍스처링 단계에서 사용할 수 있습니다.

이 가이드는 PBR 텍스처 맵을 사용하기 위해 메쉬 객체를 설정하는 방법에 대한 지침을 제공하며, Roblox에서 지원하는 PBR 텍스처 맵의 일반적인 사용 사례 및 모범 사례를 설명합니다. 자신만의 표면을 만들 때는 재료 참조를 참조하여 일반적인 재료 값, 이미지 비교 및 의류 예제를 확인하세요.

표면 외관 활성화

MeshPart에 PBR 텍스처를 추가하려면 원래 할당된 텍스처를 덮어쓰는 SurfaceAppearance 객체를 추가해야 합니다. 일반적으로 게임 중에 스크립트를 통해 SurfaceAppearance 속성을 수정할 수 없습니다. 엔진은 이러한 그래픽을 표시하기 위해 일부 전처리가 필요하기 때문입니다. 기본 텍스처를 추가하는 것과 유사하게, 각 텍스처 이미지 맵은 적절한 업로드된 이미지 자산 ID를 가리켜야 합니다.

MeshPart에 대한 표면 외관을 활성화하려면:

  1. 탐색기 창에서 MeshPart 위에 마우스를 올리고 ⊕ 버튼을 클릭합니다.

  2. 컨텍스트 메뉴에서 SurfaceAppearance를 삽입합니다.

    Studio의 탐색기 창에서 MeshPart 내에 부모로 설정된 SurfaceAppearance 객체.

    SurfaceAppearance 객체에 텍스처 맵을 추가할 준비가 되면 속성 창에서 각 맵 속성을 클릭하고 자산 ID를 입력할 수 있습니다.

텍스처 맵

Studio는 현재 5가지 유형의 PBR 텍스처 맵을 지원합니다: 색상, 노멀, 거칠기, 금속성, 및 발광. 이러한 각 맵은 객체의 표면 외관의 중요한 측면에 해당합니다. 텍스처 맵은 시각적 외관만 변경하며 MeshPart 객체의 기하학에는 영향을 미치지 않습니다.

다음 예제를 통해 Roblox에서 지원하는 텍스처 맵 및 추가 리소스에 대한 개요를 확인하세요:

ColorMap 속성은 표면의 색상 데이터를 설정하며, 맵에 존재하는 투명도를 포함합니다. 추가 정보는 색상 (알베도)를 참조하세요.

대부분 빨간색으로 다양한 검은 얼룩과 흰색 긁힘이 있는 완전히 채워진 이미지.
예제 맵
어두운 배경에 빈 흰색 구체.
예제 메쉬
어두운 배경에 검은 얼룩과 흰색 긁힘이 있는 빨간 구체.
메쉬 및 텍스처

색상 (알베도)

색상 또는 알베도 맵은 텍스처의 색상을 결정하며, 대부분 색상 정보로 구성되어 있으며 조명이나 텍스처 정보는 거의 없습니다. 추가 사용자 정의를 위해, 이미지 맵에 불투명도를 추가하여 알베도 텍스처에 투명도를 추가할 수 있습니다.

알파 모드

풀 또는 부분적으로 투명한 섹션이 필요한 객체(예: 풀, 잎, 레이스 또는 먼지 또는 그라지와 같은 데칼)에 대해 다양한 알파 모드를 사용하여 색상 맵에 투명도를 적용할 수 있습니다. 색상 맵 이미지 형식이 알파 채널을 지원하는 경우, 0.0은 투명하고 1.0은 불투명한 회색조 알파 맵을 적용할 수 있습니다. 유사하게, .png와 같은 이미지 형식을 사용할 때 색상 맵의 불투명도는 자산에서 투명도로 적용됩니다.

다음 AlphaMode 값을 설정하여 두 가지 다른 방식으로 투명도를 적용할 수 있습니다:

  • 불투명ColorMap의 알파 채널을 무시하고 색상 맵에서 직접 색상 값을 사용합니다.
  • 오버레이ColorMap를 기본 메쉬의 MeshPart.Color 위에 오버레이합니다. 오버레이 모드를 사용하는 색상 맵은 투명도가 있는 곳에서 메쉬의 기본 색상을 드러냅니다. 이것이 기본 설정입니다.
  • 투명도ColorMap의 투명도에 따라 보이는 메쉬를 제거합니다. 이는 메쉬를 투명하게 렌더링하며, 투명도가 있는 경우 원래 메쉬 색상을 드러내지 않습니다.
  • 틴트 마스크 — 색조가 없는 ColorMap 위에 색조가 있는 ColorMap을 혼합합니다.
불투명

Enum.AlphaMode.Opaque 모드를 사용하여 ColorMap의 알파 채널을 완전히 무시할 수 있습니다. 이 경우 알파 값은 1(완전히 불투명)으로 간주됩니다.

다음 예제는 파란색 객체를 참조로 사용하여 Opaque 모드가 어떻게 작동하는지 보여줍니다:

투명도가 있는 물방울 무늬 텍스처. 배경은 완전히 투명합니다.
투명도가 있는 색상/알베도 맵
평면 위에 있는 파란색 구체.
예제 메쉬 객체
구체의 표면에 물방울 무늬가 흩어져 있습니다. 투명도 값은 무시됩니다.
AlphaModeOpaque로 설정됨
오버레이

Enum.AlphaMode.Overlay를 사용하여 메쉬의 원래 색상의 섹션을 드러낼 수 있습니다. 색상 맵의 투명한 영역이 기본 색상을 노출하므로, 사용자 정의 피부 톤이나 고유한 색상이 있는 다른 상황을 위해 메쉬의 Color 속성을 부분적으로 또는 완전히 드러내는 독특한 텍스처 맵을 설계할 수 있습니다.

다음 예제는 연한 파란색 구체를 참조로 사용하여 Overlay 모드가 어떻게 작동하는지 보여줍니다:

작은 연한 파란색 정사각형이 있는 반복 패턴의 완전히 채워진 이미지. 배경은 투명도를 나타내기 위해 체크무늬입니다.
투명도가 있는 색상/알베도 맵
어두운 배경 위에 빈 청록색 구체.
예제 메쉬 객체
표면에 작은 파란색 정사각형이 흩어져 있는 흰색 구체.
AlphaModeOverlay로 설정됨

다음 예제는 사용자 정의 캐릭터에 대해 Overlay 모드를 사용하여 캐릭터의 원래 피부 톤을 드러냅니다:

3D 인간형 모델을 위한 텍스처 맵의 완전히 채워진 이미지. 이미지의 다양한 부분이 체크무늬 또는 부분적으로 체크무늬로 되어 있어 다양한 투명도를 나타냅니다.
원래 메쉬 색상을 드러내기 위해 섹션에 투명도가 있는 색상 맵
다양한 피부 톤을 가진 동일한 인간형 모델 4개: 연한 갈색, 검은색, 흰색, 어두운 녹색.
Overlay 모드를 사용하는 단일 색상 맵을 가진 여러 캐릭터 변형

피부 및 유사한 응용 프로그램을 위한 오버레이 최적화에 대한 추가 세부정보는 사용자 정의 피부 톤을 참조하세요.

투명도

Enum.AlphaMode.Transparency 모드를 사용하여 레이스나 그물과 같은 복잡하거나 매우 섬세한 객체를 만들 수 있으며, 메쉬의 가시 부분을 제거하여 메쉬 기하학을 조각하는 대안으로 사용할 수 있습니다. 이는 메쉬 객체의 기하학에 영향을 미치지 않으므로 복잡한 메쉬 모델의 성능 영향을 받지 않고도 세부적인 객체를 만들 수 있습니다.

다음 예제는 이 모드에서 부분적 및 전체 투명도가 메쉬의 섹션을 시각적으로 제거하는 방법을 보여줍니다:

바구니 같은 표면을 가진 구체.
투명도 없음
표면에 정규 삼각형 패턴이 있는 구체가 부분적으로 보이지 않습니다.
부분적 투명도
표면에 정규 삼각형 패턴이 있는 구체가 완전히 보이지 않습니다.
전체 투명도

Transparency 모드의 두 가지 결과가 있으며, 이는 MeshPart.Transparency0으로 설정되었는지 또는 최소한 0.02로 설정되었는지에 따라 다릅니다. 그러나 수치 정밀도 때문에 0.01과 같은 작은 값이 불투명 투명도를 유발할 수 있습니다.

  • 알파가 주로 불투명한 객체의 모양을 잘라내는 데 사용되는 경우(예: 잎사귀, 레이스 원단 및 그물), MeshPart.Transparency0으로 설정합니다. 표면의 일부가 완전히 불투명할 때, Roblox 엔진은 적절한 깊이 기반 폐색으로 렌더링할 수 있습니다. 불투명 표면은 일반적으로 DepthOfFieldEffect, 유리 및 물 굴절, 물 반사와 같은 깊이 기반 효과와 더 잘 작동합니다.
  • 알파가 반투명 객체 또는 부드러운 투명도 그라디언트가 있는 객체에 세부 사항을 추가하는 데 사용되는 경우, MeshPart.Transparency최소한 0.02로 설정합니다. 이는 더러운 창 및 부드러운 가장자리의 깃털과 같은 객체의 혼합 품질을 향상시키지만 모든 효과와 함께 작동하지는 않습니다.
틴트 마스크

Enum.AlphaMode.TintMask 모드를 사용하여 표면의 선택된 영역에 SurfaceAppearance.Color 색조를 적용할 수 있습니다. 색조는 알파 채널이 완전히 보이는 곳에서 가장 강하며, 알파 채널이 투명한 곳에서는 적용되지 않습니다.

어두운 회색 텍스처의 벽돌 텍스처.
벽돌 면과 벽돌 사이의 그라우트에서 색상 세부 사항을 보여주는 예제 벽돌 텍스처.

색상 색조

SurfaceAppearance.Color 속성을 수정하여 색상 맵에 색조를 적용할 수 있습니다. 색조는 성능에 영향을 미치지 않으며, 다양한 색조로 단일 색상 맵을 재사용하여 메모리를 절약할 수 있습니다. 색상 색조를 사용하여 MeshPart PBR 텍스처 간의 추가 저비용 변형을 생성하거나 실시간으로 PBR 표면 색상을 프로그래밍 방식으로 수정할 수 있습니다.

기본 노란색 색조와 반사성 비취 같은 특성을 가진 조각상.
Duvall Drive의 미스터리에서 가져온 조각상 메쉬, 색조 없음.
빨간색 색조가 있는 조각상, 다른 텍스처 맵에서 반사성 특성을 계속 유지합니다.
Color가 빨간색으로 설정된 조각상 메쉬.
초록색 색조가 있는 조각상, 다른 텍스처 맵에서 반사성 특성을 계속 유지합니다.
Color가 초록색으로 설정된 조각상 메쉬.

SurfaceAppearance.Color 색조는 곱셈으로 적용되므로 최종 외관은 Color3 (텍셀 색상) 곱하기 SurfaceAppearance.Color의 함수입니다. 이는 원래 SurfaceAppearance.ColorMap을 거의 흰색의 회색조 색상으로 작성하면 이 속성이 적용될 때 가장 강한 색조 효과를 생성함을 의미합니다.

색조는 SurfaceAppearance.ColorMap에만 적용되며 MeshPart.Color에는 적용되지 않습니다. 투명도를 적용할 때 알파 채널을 계속 사용할 수 있습니다.

SurfaceAppearance.AlphaModeOverlay로 설정되고 알파 채널이 존재하는 경우, 기본 MeshPart.Color가 드러나고 SurfaceAppearance.Color 색조는 보이는 SurfaceAppearance 색상 맵에만 적용됩니다.

SurfaceAppearance.AlphaModeTintMask로 설정되고 알파 채널이 존재하는 경우, 알파 채널이 SurfaceAppearance.Color 색조의 양을 제어합니다. 색조는 알파 채널이 완전히 보이는 곳에서 가장 강하며, 알파 채널이 투명한 곳에서는 적용되지 않습니다.

왼쪽에서 완전히 투명한 청록색 슬레이트 텍스처의 떠 있는 정사각형 평면이 오른쪽에서 완전히 불투명하게 변합니다. 떠 있는 평면 아래의 얇은 수평 막대는 왼쪽에 검은색, 오른쪽에 흰색으로 그라디언트를 가지고 있습니다.
AlphaModeTransparency로 설정됨. 아래의 회색조 그라디언트 막대는 알파 값을 나타냅니다. MeshPart.Color는 빨간색으로 설정되고 SurfaceAppearance.Color는 청록색으로 설정됩니다.

노멀

노멀 또는 표면 맵은 표면에 텍스처 깊이를 추가하며, 높이 맵과 유사하게 작동합니다. 결과적으로 효과는 시청 각도와 조명 환경에 따라 희미해지거나 강해질 수 있습니다.

다음 그림에서는 메쉬 참조와 맵 참조 간에 전환하여 노멀 맵 값을 비교할 수 있습니다:

점토 색상의 매끄러운 구체.
점토 색상의 표면이 다소 바위 같은 구체.
점토 색상의 표면이 매우 바위 같은 구체

이미지의 R, G, 및 B 채널은 각각 로컬 표면 벡터의 X, Y, 및 Z 구성 요소에 해당합니다. 색상이 [127, 127, 255]인 균일한 이미지는 완전히 평평한 노멀 맵으로 변환됩니다. Roblox는 OpenGL 형식 - 탄젠트 공간 노멀 맵만 지원합니다.

노멀 맵은 메쉬의 시각적 표면에 두드러진 영향을 미치며 텍스처의 어색한 이음새를 강조할 수 있습니다. 가능하면 텍스처 이음새를 숨겨서 메쉬의 시각적 문제를 피하세요.

거칠기

거칠기 또는 미세 표면 맵은 모델의 표면에 빛이 퍼지는 방식을 결정합니다. 거칠기가 0%일 때, 표면은 빛을 전혀 산란시키지 않으며, 재료의 반사 및 광택이 훨씬 더 선명하고 밝아집니다. 100%일 때, 빛과 반사는 모델에 고르게 산란되어 덜 반사적인 매트한 표면이 됩니다.

다음 그림은 다양한 거칠기 맵 값의 비교를 보여줍니다:

파란색 광택이 나는 구체.
0%
파란색 반광택 구체.
50%
파란색 매트 구체.
100%

거칠기는 프레넬 효과라고 하는 다양한 각도에서 객체의 반사성에 영향을 미칠 수 있습니다. Studio의 프레넬 처리 방식은 물리적 현실 정확성을 목표로 하지만, 거칠기 표면에서도 특정 각도에서 예상치 못한 스페큘러 기여를 얻을 수 있습니다. 경우에 따라, 재료와 일관된 조명 반응을 얻기 위해 거칠기 맵 값을 약 0.1 더 거칠게 증가시킬 수 있습니다.

Roblox는 이 조명 효과를 정확하게 렌더링하지만, 표면의 밝기와 반사성은 Substance Painter와 같은 텍스처 콘텐츠 생성 소프트웨어와 Studio 간에 일관되게 반응하지 않을 수 있습니다. 애플리케이션 간의 렌더링 차이에 대한 예는 의류 예제를 참조하세요.

금속성

금속성은 표면의 반사성을 결정합니다. 대부분의 경우 이 값을 0% (비금속) 또는 100% (금속)으로 설정해야 하지만, 새틴이나 실크와 같은 중간 반사 특성을 가진 표면을 만들 때 부분 금속성 값을 사용할 수 있습니다. 이 방법은 재료의 반사를 미세하게 조정하여 색상/알베도 맵에서 반사된 색상보다 색상을 강조할 수 있습니다.

다음 그림은 다양한 금속성 맵 값의 비교를 보여줍니다:

빛 얼룩이 있는 갈색 구체.
0%
빛 얼룩과 약간의 반사성이 있는 갈색 구체.
50%
중간 얼룩과 많은 반사성이 있는 갈색 구체.
100%

다양한 PBR 렌더러는 반사성을 처리하기 위해 다양한 워크플로우를 사용합니다. Studio는 금속성 워크플로우만 사용하여 재료가 비금속인지 금속인지 결정합니다. 때때로 이는 절연체 또는 전도체라고도 불립니다.

발광 마스크

회색조 EmissiveMaskContent 콘텐츠 텍스처는 표면에 발광 마스크를 적용합니다. 이를 통해 모든 또는 아무것도 아닌 Neon 재료보다 더 예술적인 제어를 위해 텍스처를 사용하여 발광성을 제어할 수 있으며, 조명된 텍스트, 미래형 갑옷 또는 생물 발광 생물과 같은 세부적인 발광 효과를 생성할 수 있습니다.

연관된 EmissiveTint 속성은 발광 기여의 색조를 결정하며, EmissiveStrength는 발광 기여의 강도를 결정합니다.

50% 강도의 잭오랜턴 발광 마스크가 있는 주황색 구체.
EmissiveStrength가 50%일 때
100% 강도의 잭오랜턴 발광 마스크가 있는 주황색 구체.
EmissiveStrength가 100%일 때
마젠타 색조로 틴트된 잭오랜턴 발광 마스크가 있는 주황색 구체.
EmissiveTint = [255, 0, 255]
©2026 Roblox Corporation. Roblox 및 Roblox 로고, 'Powering Imagination'은 미국 및 기타 국가 내 당사의 등록 및 미등록 상표입니다.