도로가있는 하이트 맵 기반 지형


12

하이트 맵 기반 지형에서 도로와 같은 상세 기능을 구현하는 가장 좋은 방법은 무엇입니까?

여기에 이미지 설명을 입력하십시오

업데이트 : 이미지에서보기는 어렵지만 채석장 꼭대기에서 내려 가서 기지를 만듭니다.

답변:


14

이미지의 장점은 일반적으로 최대 4 개의 채널 (빨강, 녹색, 파랑 및 알파)을 포함한다는 것입니다. 높이 맵에는 하나의 차원 만 필요하므로 빨간색 채널을 사용하여 높이 정보를 저장하고 (높이는 여전히 256 레벨 임) 녹색 채널을 사용하여 도로를 매핑하는 등 다른 목적으로 다른 채널을 사용할 수 있습니다. , 물 / 수분을위한 청색 채널) 등.

이와 같이 지형을 만들 때 도로를 지어야하는 구역이 높이 그라디언트를 따르지 않고 평평하게 보이도록 할 수 있습니다.


1
HDRI 이미지를 사용할 수 있으므로 부동 소수점 숫자를 사용하여보다 정확한 높이 정보를 저장할 수 있습니까?
Quazi Irfan

1
HDRI 이미지는 파일 형식이 아니라 개념이지만 더 정확한 정확도를 위해 특정 파일 형식을 사용할 수 있습니다. 주로 하드웨어 / 소프트웨어에 따라 다르지만 32 비트 또는 64 비트에 저장할 수있는 부동 RG 이미지가 있습니다. 그러나 형식에 상관없이 채널당 더 많은 비트를 사용하면 항상 다음과 같이 int 값을 부동 소수점 숫자로 변환 할 수 있습니다. f = (v / 256.0) 여기서 f는 부동 소수점, v 현재 int 값
XGouchet

지도의 모든 정적 객체를 (높이)지도에 저장하는 것이 좋습니다? 식물, 단풍, 집처럼? 또는 다른 물체가 놓일 포인터? 아니면 다른 방법이 있습니까?
Quazi Irfan

정확한 위치를 저장하지 않고 밀도 정보 만 저장 한 다음 밀도 정보에서 데이터 (식생, 집 등)를 생성합니다. 그러나 가장 좋은 방법은 이러한 객체를 직접 배치하고 이진 데이터 파일 또는 XML 설명 파일을 사용하여 저장하는 것입니다.
XGouchet

1
@iamcreasy 물론 하이트 맵을 사용하여 집이 바닥에 닿도록 할 수 있지만 집 모델이 어떻게 보이는지 설명해야합니다 (벽, 문, 내부의 가구 등). 픽셀로 설명 할 수 없습니다. 또한 jsut 픽셀 정보는 정확한 방향을 제공하지 않으므로 집이 모두 정렬됩니다 (자연 스럽거나 "꽤"보이지 않음).
XGouchet

1

내가하는 방법은 종종 더 큰 해상도가 필요한 하이트 맵 (예 : 513 * 513을 사용)과 splatmap ( "제어 텍스처")을 분리하는 것입니다 (32 비트 bmps, 512x512 사용).

하이트 맵은 메시 (지형, 삼각형)를 만듭니다.

컨트롤 맵은 전체 지형에 걸쳐 있으며 각 레이어 (RGBA)는 지형에서 볼 수있는 Stone, Dirt, Road 등의 정도를 나타냅니다.

이 방법으로 편집기를 사용하여 a) 지형을 만들고 b) 지형을 페인트합니다 (바위, 흙, 도로 등).

'painting heightmap', 'heightmap splatmap'등을 빠르게 살펴 보거나 Unity3D를 통해 다운로드하여 '현실'에서 어떻게 작동하는지 확인하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.