언어:
페이지 정보
엔진 버전:
언리얼 엔진
이 문서가 번역된 이후 업데이트된 내용이 있을 수 있습니다. 자세한 내용은 영문 페이지를 참고하세요.

랜드스케이프 머티리얼

언리얼 엔진

랜드스케이프 액터에는 어떤 머티리얼이든 사용할 수는 있지만, 언리얼 엔진 4 (UE4) 안의 머티리얼 시스템은 랜드스케이프의 텍스처를 크게 향상시키는 데 도움이 될 수 있는 특수한 랜드스케이프 전용 머티리얼 노드가 몇 가지 제공됩니다. 이 문서에서는 그 노드에 대해 심도있게 살펴보고, 그 작동 방식 및 랜드스케이프 머티리얼에서의 사용법을 살펴보도록 하겠습니다.

랜드스케이프용 머티리얼은 다른 머티리얼과 마찬가지로 머티리얼 에디터 에서 편집합니다.

레이어 웨이트 및 순서

랜드스케이프는 알파 블렌딩 보다는 웨이트 블렌딩을 사용하므로, 특정 위치에서 모든 레이어에 대한 블렌드 인수 총합은 1.0 입니다. 여기에는 순서에 따른 의존성이 없다는 장점이 있는데, 언제 어느 레이어에 칠하든 그 웨이트가 증가되면서 기존의 다른 레이어는 감소됩니다. 단점은 한 레이어를 100% 까지 칠해버리면, 다른 모든 레이어가 0% 가 된다는 점입니다. 페인트 툴 을 사용하여 이미 100% 인 레이어를 지워보면 명확해집니다. 툴은 제거하려는 레이어를 대체할 다른 레이어가 무엇인지 모르기 때문에, 아무런 일도 벌어지지 않는 것처럼 보입니다.

랜드스케이프 전용 머티리얼 노드

머티리얼 에디터 안에는 랜드스케이프 시스템과 사용할 수 있는 특수 노드가 여섯 개 있습니다. 모두 컨텍스트 메뉴 또는 팔레트 메뉴에서 Landscape 카테고리 아래에서 찾을 수 있습니다.

컨텍스트 메뉴

Material Editor Context Menu

팔레트 메뉴

Landscape_Mat_Palette.png

Landscape Layer Blend 노드

LandscapeLayerBlend 노드는 다수의 텍스처 또는 머티리얼 망을 서로 블렌딩하여 랜드스케이프 레이어로 사용할 수 있게끔 만들어줍니다. LandscapeLayerBlend 는 배열을 사용하여 랜드스케이프 레이어 관련 정보를 저장합니다. 이 배열에 레이어를 추가하려면, 0 엘리먼트 단어 옆에 보이는 더하기 부호 아이콘을 클릭하면 됩니다.

Landscape_Add_To_Array.png

다수의 레이어를 LandscapeLayerBlend 노드에 추가할 때, 다음 이미지와 같은 것이 나옵니다.

LandscapeLayerBlend Node

머티리얼 에디터의 디테일 패널에서 LandscapeLayerBlend 노드의 프로퍼티를 설정할 수 있습니다.

번호

프로퍼티

설명

1:

Layers

레이어 - 노드에 들어있는 레이어 목록입니다. 더하기 (Plus Sign) 아이콘을 클릭하여 레이어를 추가할 수 있습니다.

2:

Layer Name

레이어 이름 - 레이어에 지어주는 고유한 이름입니다. Layer Name 은 랜드스케이프 툴 창의 페인트 모드에 사용되는 레이어 이름에 해당합니다.

3:

Blend Type

블렌드 유형 - LB_AlphaBlend (알파 블렌드), LB_HeightBlend (하이트 블렌드), 또는 LB_WeightBlend (웨이트 블렌드) 입니다. 나중에 자세히 설명하겠습니다.

4:

Preview Weight

프리뷰 웨이트 - 머티리얼 에디터에서 블렌딩을 미리볼 때 레이어에 대한 가중치로 사용되는 값입니다.

5:

Const Layer Input

상수 레이어 입력 - 텍스처를 사용하지 않으려는 경우 컬러 값으로 사용할 수치 제공용입니다. 주로 레이어에 문제가 있는 경우 디버깅 용으로 사용됩니다.

6:

Const Height Input

상수 하이트 입력 - 텍스처를 사용하지 않으려는 경우 높이 값으로 사용할 수치 제공용입니다.

7:

Additional Layers

부가 레이어 - 부가 레이어를 접었을 때 어때 보이는지 입니다.

Landscape_LayerBlend_Node.png

다음 표는 Layer Blend 노드의 입력과 출력에 대한 설명입니다.

번호

항목

설명

1:

Layer LayerName

레이어 레이어 이름 - 각 레이어에는 서로 블렌딩하기 위한 입력이 추가됩니다. 이 입력들은 디테일 패널에서 레이어를 추가해 줘야 사용할 수 있습니다.

2:

Height LayerName

하이트 레이어 이름 - 블렌딩할 하이트 맵을 제공해 주는 곳입니다. 참고로 이 입력은 Blend Type 프로퍼티가 LB_HeightBlend 로 설정된 레이어에서만 보입니다.

3:

무제 출력

서로 블렌딩된 레이어 결과입니다.

레이어 블렌드 모드 특정 조합을 사용할 때, 랜드스케이프 다른 레이어가 만나는 부분이 전부 검정색 점으로 보일 수가 있습니다. 이 문제는 특히나 여러 랜드스케이프 레이어에 LB_HeightBlend 모드를 사용할 때 많이 발생하는데요. LB_HeightBlend 는 지정된 높이 값을 사용하는 레이어에 대한 블렌드 인수, 또는 웨이트를 변조시키는 방식으로 작동합니다. 한 지역에 칠해진 레이어가 여럿 있고 그 전부가 LB_HeightBlend 로 설정된 경우, 특정 지역에 칠해진 모든 레이어가 동시에 높이 값이 0 일 수가 있으므로, 각 레이어에 바람직한 블렌드 인수는 0 이 됩니다. 명시적이든 묵시적이든 순서가 없기 때문에, 해당 영역에 공헌도가 있는 레이어가 없으니 결과는 검정 점이 됩니다. 노멀 맵을 블렌딩하는 경우라면 상황은 더욱 나빠집니다. (0,0,0), 즉 유효하지도 않은 노멀 값이 나와 라이팅과 렌더링 문제를 일으킬 것이기 때문입니다. 이 문제를 해결하려면, 다음 예제에서처럼 레이어 중 하나에 LB_AlphaBlend 를 사용하면 됩니다. LB_HeightBlend Problem

왼쪽 이미지에서는 모든 레이어가 LB_HeightBlend 라 일부 지역이 까맣게 나옵니다. 오른쪽에서는 빨강 "1" 레이어를 LB_AlphaBlend 로 바꿔 문제를 해결했습니다.

아래는 다수의 레이어에 대한 Landscape Layer Blend 노드의 프로퍼티를 전부 블렌딩하는 예제입니다. 주목해 볼 것은, Soil 레이어의 블렌드 모드가 LB_AlphaBlend 로 설정된 반면, 다른 레이어는 LB_HeightBlend 로 설정된 것입니다. 위에서 언급한 레이어가 만나는 지점에 검정색 점이 생기는 문제를 피하기 위한 것입니다.

Layer Blend Properties

레이어를 삭제하려면, 레이어의 엘리먼트 번호 오른쪽의 드롭다운 화살표 를 클릭하여 컨텍스트 메뉴를 열고 Delete (삭제)를 선택합니다.

Delete Layer

Landscape Layer Coords 노드

LandscapeLayerCoords (랜드스케이프 레이어 좌표) 노드는 랜드스케이프 터레인에 머티리얼 망을 매핑시키는 데 사용할 수 있는 표현식입니다.

LandscapeLayerCoords Node

디테일 패널에서 LandscapeLayerCoords 노드의 프로퍼티를 설정할 수 있습니다.

번호

프로퍼티

설명

1:

Mapping Type

매핑 유형 - 랜드스케이프에 머티리얼( 망)을 매핑시킬 때 사용할 기준을 지정하는 ELandscapeCoordMappingType (E 랜드스케이프 좌표 매핑 유형) 입니다.

2:

Custom UVType

커스텀 UV 유형 - 터레인에 사용할 매핑 장소입니다. CustomUVType 은 주어진 프로퍼티 값에 따라 머티리얼을 랜드스케이프에 매핑시킬 UV 좌표를 출력합니다.

3:

Mapping Scale

매핑 스케일 - UV 좌표에 적용할 균등 스케일입니다.

4:

Mapping Rotation

매핑 회전 - UV 좌표에 적용할 회전 값으로, 도 단위입니다.

5:

Mapping Pan [U]

매핑 [U] 패닝 - UV 좌표에 적용할 [U] 방향 오프셋입니다.

6:

Mapping Pan [V]

매핑 [V] 패닝 - UV 좌표에 적용할 [V] 방향 오프셋입니다.

7:

무제 출력

주어진 속성 값에 따라 랜드스케이프에 머티리얼을 매핑시킬 UV 좌표를 출력합니다.

Landscape Layer Switch 노드

LandscapeLayerSwitch (랜드스케이프 레이어 스위치)는 특정 레이어가 랜드스케이프 리전(region)에 공헌하지 않을 때, 일부 머티리얼 연산을 제외시키는 것입니다. 특정 레이어의 웨이트(가중치)가 0 일 때 불필요한 계산을 제거하여 머티리얼을 최적화시킬 수 있습니다.

LandscapeLayerSwitch Node

디테일 패널에서 LandscapeLayerSwitch 노드의 프로퍼티를 설정할 수 있습니다.

번호

프로퍼티

설명

1:

Parameter Name

파라미터 이름 - 파라미터에 지어주는 고유한 이름입니다.

2:

Preview Used

미리보기 사용됨 - 체크하면, 미리보기를 사용합니다.

3:

LayerUsed

레이어 사용됨 - 노드의 프로퍼티에 지정된 레이어가 현재 랜드스케이프 리전에 사용되고 있을 때 쓸 결과입니다.

4:

LayerNotUsed

레이어 사용안됨 - 현재 랜드스케이프 리전에 레이어가 사용되지 않아 웨이트가 0 일 때 쓸 결과입니다.

5:

무제 출력

레이어가 랜드스케이프 리전에 공헌을 하느냐 마느냐에 따라 LayerUsedLayerNotUsed 입력 둘 중 하나가 출력됩니다.

Landscape Layer Weight 노드

LandscapeLayerWeight (랜드스케이프 레이어 웨이트) 노드는 머티리얼이 적용된 랜드스케이프에서 얻은 연관 레이어에 대한 웨이트에 따라 머티리얼 망을 블렌딩할 수 있는 표현식입니다.

LandscapeLayerWeight Node

디테일 패널에서 LandscapeLayerWeight 노드의 프로퍼티를 설정할 수 있습니다.

번호

프로퍼티

설명

1:

Parameter Name

파라미터 이름 - 이 표현식에 연관시킬 랜드스케이프에 속하는 레이어 이름입니다. 이 레이어에 대한 웨이트는 두 입력 망 블렌딩에서의 알파 값으로 사용됩니다.

2:

Preview Weight

미리보기 가중치 - 머티리얼 에디터에서 미리보기에 사용할 가중치입니다.

3:

Const Base

상수 베이스 - 랜드스케이프가 가졌으면 하는 베이스 컬러를 지정할 수 있습니다.

4:

Base

베이스 - 이 레이어와 블렌딩할 망입니다. 일반적으로는 기존 레이어 블렌딩 결과물이 들어가나, 첫 레이어라면 비어있을 수도 있습니다.

5:

Layer

레이어 - 이 레이어 생성을 위해 블렌딩할 망입니다.

6:

무제 출력

관련된 레이어의 레이어 웨이트에 따라 BaseLayer 입력의 블렌딩 결과를 출력합니다.

Landscape Visibility Mask 노드

LandscapeVisibilityMask (랜드스케이프 비저빌리티 마스크) 노드는 랜드스케이프의 부분 가시성을 제거하여, 동굴을 만들 때처럼 구멍을 만듭니다.

LandscapeVisibilityMask Node

디테일 패널에서 LandscapeVisibilityMask 노드의 프로퍼티를 설정할 수 있습니다.

번호

프로퍼티

설명

1:

무제 출력

비저빌리티 마스크의 프로퍼티를 출력합니다.

이 노드가 정상 작동하도록 하기 위해서는 출력시 머티리얼의 오파시티 마스크 슬롯에 연결되었는지, 머티리얼 블렌드 모드Masked 로 설정되었는지만 확인하면 됩니다.

Landscape_VisibilityMaskSetup.png

레이어 블렌딩

다수의 텍스처와 머티리얼 망을 칠할 수 있는 랜드스케이프 레이어로 블렌딩하는 기능은 랜드스케이프 터레인 텍스처를 입히는 데 있어 기본입니다. 다수의 레이어를 블렌딩하기 위해서는, 다수의 LandscapeLayerWeight 노드를 사용하거나 하나( 또는 노멀맵을 사용한다면 두 개)의 LandscapeLayerBlend 노드를 사용하면 됩니다.

LandscapeLayerWeight 노드 사용하기

LandscapeLayerWeight 노드 셋업 및 사용법은 매우 간단하며, 아래와 같습니다.

레이어 이름은 고유해야 하므로, 각 레이어 이름은 가급적 그 자체로 설명이 되는 이름을 짓도록 하는 것이 좋습니다.

  1. 머티리얼 에디터에서 머티리얼 그래프에 LandscapeLayerWeight 노드를 추가합니다. 기본적으로 Parameter Name 이름은 "None" 일 것입니다.

    Landscape_Layer_Weight_Base.png

  2. 디테일 패널에서 Parameter Name 을 레이어에 대한 설명이 되는 이름, 예를 들면 "Rock" 정도로 지어줍니다.

    Layer Name

    Parameter Name 을 입력하면, 노드 자체적으로 업데이트될 것입니다.

    Landscape_Layer_Weight_Named_Layer.png

  3. 머티리얼에 넣고자 하는 각 레이어마다 LandscapeLayerWeight 노드를 추가해 줍니다. 이 예제에서는 그냥 LandscapeLayerWeight 노드를 두 개 사용하겠습니다.

  4. Texture Samples 또는 다른 머티리얼 표현식 망을 추가하고 LandscapeLayerWeight 노드에 연결해 줍니다.

  5. LandscapeLayerCoords 노드를 추가하고, UV 타일링은 원하는 대로 설정한 다음, Texture Sample 노드에 연결합니다.

  6. 각 레이어 노드의 출력 핀을 끌어 다음 레이어 노드의 Base 핀에 놓아 와이어로 연결해 줍니다 (첫 레이어 노드의 Base 핀은 연결되지 않은 채 놔둡니다).

  7. 마지막 레이어 노드의 출력 핀을 끌어 머티리얼 베이스 노드의 Color 입력 핀에 놓아 연결합니다.

완료되면, LandscapeLayerWeight 노드를 사용한 다음과 같은 예제일 것입니다:

Landscape Layer Nodes

LandscapeLayerWeight 노드의 Preview Weight 프로퍼티를 변경하면 머티리얼의 다양한 웨이트 효과를 미리볼 수 있습니다.

LandscapeLayerBlend 노드 사용하기

LandscapeLayerWeight 노드로 레이어들을 수동 블렌딩하는 데 대한 대안으로, LandscapeLayerBlend 노드는 알파 블렌딩 또는 하이트 기반 오프셋을 적용한 알파 블렌딩으로 다수의 레이어를 블렌딩합니다. 높이 기반 오프셋으로 하이트맵 입력에 따라 한 레이어를 다른 레이어와 블렌딩할 수 있습니다.

LandscapeLayerBlend 노드를 사용하려면:

  1. 머티리얼 에디터에서 LandscapeLayerBlend 노드를 추가합니다.

    Landscape_LayerBlend_Material_Example_00.png

  2. 디테일 패널에서, Layers (레이어) 옆에 더하기 (Plus Sign) 아이콘을 클릭하여 레이어를 추가합니다.

    Landscape_LayerBlend_Material_Example_01.png

  3. 레이어를 펼쳐 그 프로퍼티를 확인합니다.

    Layer Properties

  4. Layer Name 을 레이어에 대한 설명이 되는 이름, 예를 들어 "Rock" 으로 지어줍니다.

    Layer Name

  5. 레이어를 알파 블렌딩으로 할지 하이트 블렌딩으로 할지 결정한 다음, 그에 따라 Blend Type 을 설정합니다.

    Blend Type

  6. 랜드스케이프 머티리얼에 레이어를 원하는 갯수만큼 추가해 줍니다. 그 이름 및 Blend Types 를 적절히 설정해 줍니다.

  7. LandscapeLayerBlend 노드의 출력을 머티리얼 베이스 노드의 Base Color 입력에 연결해 줍니다.

  8. Texture Sample 노드를 추가하고, 그 주 출력을 LandscapeLayerBlend 노드의 입력에 연결합니다. (또는, 좀 더 복잡한 머티리얼 망을 만들어서 LandscapeLayerBlend 의 Layer 입력에 연결해 줍니다.) 하이트 블렌딩된 레이어의 경우, Texture Sample 의 알파 출력을 LandscapeLayerBlend 의 Height 입력에 연결해 줍니다.

작업이 완료된 랜드스케이프 머티리얼 망 모습은 이렇습니다:

Landscape Blend Node

LandscapeLayerBlend 노드의 Preview Weight 프로퍼티를 변경하는 것으로 머티리얼의 다양한 웨이트 효과를 미리볼 수 있습니다.

Landscape Layer Blend 유형

Landscape Layer Blend 머티리얼 노드에는 세 가지 블렌드 모드 중 하나를 선택할 수 있습니다. 각 레이어 블렌드 유형마다 각기 다른 결과를 내는 데 사용해 볼 수 있습니다.

블렌드 유형

기능

LB Weight Blend

웨이트 블렌드 - World Machine 같은 외부 프로그램에서 만든 레이어가 있을 때, 또는 레이어 순서 걱정 없이 다른 레이어와 무관하게 어떤 레이어를 칠하고자 할 때 사용하기 좋은 모드입니다.

LB Alpha Blend

알파 블렌드 - 칠을 디테일하게 하면서도 레이어 순서를 뚜렷하게 하여, 바위와 풀 위에 눈을 칠하여 덮이도록 하지만, 눈을 지우면 그 아래 바위와 풀이 드러나도록 하고자 할 때 사용하면 좋은 모드입니다.

LB Height Blend

하이트 블렌드 - LB_WeightBlend 와 같지만 하이트맵에 따라 레이어 사이의 전환에 디테일을 더해 줍니다. 이를 통해 바위에서 흙으로 그냥 부드럽게 전환하는 대신, 레이어 전환 지점의 바위 사이 틈에 흙이 나타나도록 할 수 있습니다.

실전에서의 LB Height Blend 예제입니다. 보시듯이 레이어 전환 지점 바위 사이 틈에 흙이 보입니다. 이런 식으로 레이어가 만나는 곳에 부드러운 전환이 가능합니다.

LB_HeightBlend.png

Landscape Layer Blend 기술적 정보

내부적으로 이 레이어 노드들은 머티리얼의 한 부분을 사용하던 것을 다른 부분을 사용할 수 있도록 해 주는 Static Switch Parameter 처럼 작동합니다. 랜드스케이프의 각 컴포넌트는, 주 랜드스케이프 머티리얼에서 생성되어 딱 그 컴포넌트에만 적용되는 MaterialInstanceConstant 를 자체적으로 갖습니다. 특정 랜드스케이프 컴포넌트에 특정 레이어가 사용되지 않는다면, 레이어에 연결된 노드의 하위 트리는 버려집니다. 이로써 전체적인 머티리얼 복잡도를 줄여, 개별 컴포넌트에 사용되는 샘플 수가 셰이더 모델 사양으로 지정된 최대치(SM 3.0 은 16 개)를 넘지 않는 한도 내라면, 랜드스케이프에 적용된 머티리얼은 샘플을 몇 개든 가질 수 있습니다. 즉 랜드스케이프 어디서든 사용되는 텍스처나 망이 모두 포함된 마스터 머티리얼을 구성하는 것도 가능합니다. 이로써 매우 복잡한 망 집합체를 구성하면서도, 랜드스케이프 컴포넌트에 적용되는 최종 머티리얼의 비용을 하드웨어 허용 한도 내에 맞출 수 있습니다.

Layer 입력들에는 단순한 TextureSample 대신 머티리얼 표면식 망을 연결할 수 있습니다. 레이어 관찰자와의 거리에 따라 세밀한 텍스처에서 커다랗고 거친 텍스처로 전환하는 등의 복잡한 효과를 내는 것도 가능한 것입니다.

랜드스케이프 홀 머티리얼

랜드스케이프에 구멍을 만드는 것은 관리 모드 에서도 할 수 있지만, 랜드스케이프 컴포넌트 전체를 한 번에 지워야지만 가능합니다. 그에 대한 우회법으로, 랜드스케이프 홀 머티리얼을 사용하여 랜드스케이프 특정 위치의 비저빌리티와 콜리전을 마스크로 걸러내면 됩니다. 산 측면에 동굴 입구같은 것을 만들고자 할 때 좋습니다.

랜드스케이프 머티리얼과 랜드스케이프 홀 머티리얼에 같은 머티리얼을 사용할 수는 있지만, 오파시티 마스크를 사용하는 머티리얼은 퍼포먼스 비용이 더 듭니다. 그래서 별도의 랜드스케이프 홀 머티리얼을 만드는 옵션이 있는 것입니다.

랜드스케이프 홀 머티리얼 만드는 법:

  1. 먼저 머티리얼 에디터에서 기존 머티리얼을 열거나 새 머티리얼을 만듭니다. 머티리얼이 열리면, 디테일 패널을 확인하여 Blend ModeMasked 로 설정합니다.

    Landscape_BaseNodeOpacity.png

  2. 다음, 머티리얼 그래프에 LandscapeVisibilityMask 를 검색 추가한 다음 그 출력을 오파시티 마스크 입력에 연결합니다.

    Landscape_VisibilityMaskNode.png

  3. 이제 평소처럼 나머지 랜드스케이프 머티리얼을 구성한 다음 완료되면, 아래와 비슷한 모습일 것입니다.

    Landscape_VisibilityMaskSetup_In_Material.png

  4. 머티리얼 컴파일이 완료되면, 이제 랜드스케이프에 할당하여 사용할 수 있도록 해 줄 차례입니다. 이 작업은 디테일 패널의 Landscape Hole Material 섹션에서 가능합니다.

    Landscape_Hole_Materail_Assign.png

  5. 모든 것이 완료되면 이제 다음 비디오처럼 터레인의 비저빌리티에 마스크를 적용했다 해제했다 할 수 있을 것입니다.

페인트 툴로 랜드스케이프에 구멍을 만드는 법은 오파시티 마스크로 구멍 만들기 문서를 참고하세요.

랜드스케이프에 머티리얼 할당하기

랜드스케이프에 대한 머티리얼을 생성하고 나면, 그 머티리얼을 레벨의 랜드스케이프 액터에 할당해야 사용 및 확인이 가능합니다. 랜드스케이프에 머티리얼을 할당하는 방법은 다음과 같습니다.

랜드스케이프에 머티리얼을 할당하려면:

  1. 콘텐츠 브라우저에서 사용하고자 하는 랜드스케이프 머티리얼을 찾아 선택합니다.

  2. 뷰포트 또는 월드 아웃라이너 에서 랜드스케이프를 선택합니다.

  3. 레벨 에디터의 랜드스케이프에 대한 디테일 패널에서, Landscape 섹션 아래 Landscape Material 옆 할당 화살표 (Assign arrow) 아이콘을 클릭하여 선택된 머티리얼을 할당합니다.

    Assigned Material

Landscape Hole Material (랜드스케이프 홀 머티리얼)에 다른 머티리얼을 할당할 수도 있습니다. 이는 특정한 오파시티 세팅으로 된 머티리얼로, 랜드스케이프의 특정 섹션에 적용하여 제거, 동굴같은 홀을 만드는 것입니다.

랜드스케이프에 랜드스케이프 홀 머티리얼을 할당하려면:

  1. 콘텐츠 브라우저에서 사용하고자 하는 랜드스케이프 홀 머티리얼을 찾아 선택합니다.

  2. 뷰포트 또는 월드 아웃라이너 에서 랜드스케이프를 선택합니다.

  3. 레벨 에디터의 랜드스케이프에 대한 디테일 패널에서, Landscape 섹션 아래 Landscape Material 옆 할당 화살표 (Assign arrow) 아이콘을 클릭하여 선택된 머티리얼을 할당합니다.

    Landscape_HoleSettings.png

랜드스케이프 홀 머티리얼 사용법 관련 정보는 오파시티 마스크로 구멍 만들기 문서를 참고하세요.

Tessellation 및 Displacement

머티리얼의 Tessellation MultipliersWorld Displacement 채널은 랜드스케이프가 카메라에 가까이 있을 때 랜드스케이프 터레인과 함께 사용하여 디테일과 디포메이션(변형)을 더하는 데 사용할 수 있습니다. 이는 다른 표준 머티리얼과 함께 했을 때와 마찬가지로 작동할 것이며, 레이어 블렌딩도 베이스 컬러, 노멀 등의 채널과 마찬가지로 함께 사용할 수 있습니다. 랜드스케이프는 최고 레벨 오브 디테일(LOD)에서만 하드웨어 테셀레이션을 렌더링하는데, 랜드스케이프가 두 번째 LOD 에 접근하면서 페이드 아웃 됩니다. 그 이후의 LOD 는 더이상 테셀레이션이 켜지지 않아 랜드스케이프 터레인의 디스플레이스먼트에 테셀레이션을 켤 때 퍼포먼스가 크게 향상됩니다.

이 기능은 DirectX 11 이 있어야 사용할 수 있는 기능입니다. 그러므로 DirectX 하드웨어만을 노린 것이 아니라면, 2차적인 폴리시 이펙트로만 사용해야 할 것입니다. 프로젝트에 테셀레이션을 켜고 사용하는 법에 대해서는 1.12 - 테셀레이션 멀티플라이어 문서를 참고하세요.

Landscape_HW_Tess.png

위 시각화에서 최고 (흰색) LOD 는 테셀레이션을 켜고 렌더링한 것인 반면, 다른 (다른 색) LOD 는 테셀레이션 없이 렌더링된 것입니다.

모바일 랜드스케이프 머티리얼

모바일 랜드스케이프는 더이상 랜드스케이프 레이어가 3 개로 제한되지 않습니다. 물론 최적화를 위해서는 여전히 3 개가 최적이지만, 텍스처 샘플러만 충분하다면 레이어는 몇 개든 지원됩니다. 랜드스케이프 레이어 할당은 이제 Feature Level Switch 머티리얼 노드 를 받아 단일 PC 또는 콘솔 랜드스케이프 머티리얼에 모바일 버전을 줄 수 있습니다. FNBR PC 및 콘솔 버전에서 사용된 랜드스케이프를 모바일 디바이스에 사용했을 때 어떻게 보이는지는 다음 이미지와 같습니다.

MobileLandscape_FeatureLevel.png