跳转到内容

Rust 高度图分辨率:各地图大小对应 513 到 4097

简短回答: 高度图分辨率随地图大小分四档:1025 m 以内是 513 × 513,2049 m 以内是 1025 × 1025,4097 m 以内是 2049 × 2049,4098 m 到 6000 m 是 4097 × 4097。Crucible Heightmap 会根据你输入的地图大小自动选好。

地图大小高度图地面纹理网格
1,000 到 1,025 m513 × 513512 × 512
1,026 到 2,049 m1025 × 10251024 × 1024
2,050 到 4,097 m2049 × 20492048 × 2048
4,098 到 6,000 m4097 × 40972048 × 2048

这些档位就是 RustEdit 导入 .raw 高度图时用的,Crucible Heightmap 导出时用的也完全一样。从 2050 m 到 4000 m 的常见大小都落在 2049,4098 m 以上都落在 4097。

地面纹理网格是 .map 文件里其他图层的大小:地面纹理、生物群系和拓扑。它比高度图小一,最大到 2048,所以地图超过 4097 m 时,每个纹理点覆盖四个高度图点。

把地图大小除以二(舍掉半米),向上取到下一个 2 的幂(512、1024、2048 或 4096),再加一。

  • 4000 m: 一半是 2000,下一个 2 的幂是 2048,所以高度图是 2049 × 2049。
  • 4200 m: 一半是 2100,向上取到 4096,所以高度图是 4097 × 4097。
  • 1500 m: 一半是 750,向上取到 1024,所以高度图是 1025 × 1025。

多出来的一,是因为网格数的是方格的角点,不是方格本身。每个高度图像素覆盖 1 到 2 米的地面。地图大小计算器可以算任意大小。

在地图大小框里输入你的世界大小,1000 到 6000 米之间任意值(默认 3800),之后每次导出都会用对应的分辨率。一越过档位分界,分辨率就变,所以 4000 m 的地图导出 2049,4200 m 的地图导出 4097。

Crucible Heightmap 里的地图大小输入框,可以输入 1000 到 6000 米的 Rust 世界大小

状态栏会把大小和分辨率并排显示,例如 3800m · 2049²,导出面板里也会在它自己的地图大小框旁边显示分辨率,那是同一个设置。

.map 导出自带大小和分辨率,所以没什么要对的:在 RustEdit 里打开就是对的。

单独的 .raw 高度图就不一样了。在 RustEdit 的 Create New Map 对话框里,你先设地图大小,再设与之对应的高度图分辨率,然后选文件。分辨率不一样的高度图会被拉伸去适配,比地图小的会在导入时丢细节。所以先在 Crucible 里设好大小,导出,再用同样的大小在 RustEdit 里新建地图。具体步骤:怎么制作 Rust 自定义地图。

Rust 用种子自己生成的地图,可以用比这张表更精细的高度图。例如 3750 m 的程序化地图就是 4097 × 4097。这对自定义地图没有影响:RustEdit 和 Crucible Heightmap 用的就是上面这张表。

地图大小还决定了 Rust 自己的地图能放哪些遗迹,以及服务器通常在上面跑多少人。大小列表、人数和计算器都在 Rust 地图大小。