跳转到内容

Celestia/3D 模型/CMS 文件

来自维基教科书,开放世界中的开放书籍

CMS 文件参考

[编辑 | 编辑源代码]

CMS 模型格式已过时。这意味着不鼓励使用它,并且它很可能会在 Celestia 的未来版本中消失。

什么是 CMS 文件?

[编辑 | 编辑源代码]

"Celestia? Model? Simple?" 文件通过变形球体来定义简单的形状。虽然已过时,但它们仍然用于一些通用对象,如小行星、小卫星等。

它们位于 Celestia 根目录的“models”目录中,或者位于附加组件的根子目录(本身位于 Celestia 的“extra”目录中)。

它们是纯文本文件,因此可以使用您喜欢的文本编辑器进行修改。

井号开始注释:该符号之后直到下一个回车符之间的所有内容都会被 Celestia 忽略。

"SphereDisplacementMesh" { ... }

[编辑 | 编辑源代码]

所有 cms 内容都位于此块中。花括号内出现的参数是

"Size [x y z ]"

[编辑 | 编辑源代码]

当模型放置在没有旋转设置(因此它是潮汐锁定)且平均经度为 0 的围绕母体的天体圆形轨道中时,

  • x 是径向轴(从母体天体运行到模型并穿过它:近-远)
  • y 是极轴(垂直于轨道平面运行:北-南)
  • z 是轨道轴(平行于轨道运行:前-后)

它默认为[1.0 1.0 1.0].

"NoiseOffset [a b c ]"

[编辑 | 编辑源代码]

这是一种 Perlin 噪声的实现方式,NoiseOffset(可能)移动了噪声的原点。

它默认为[10 10 10].

"FeatureHeightf"

[编辑 | 编辑源代码]

这控制着凸起的 height。像 0.2 这样的小数字定义一个大体上是球形的物体,带有低矮的山丘,而像 1.0 这样的更大的数字定义一个带有高大山丘的物体。

它默认为0.0.

"Octavesi"

[编辑 | 编辑源代码]

这定义了模型的凹凸程度。像 1 这样的小值定义一个具有相当规则扭曲的物体,而像 9 这样的大值定义一个非常凹凸不平的物体。值为零将产生一个球形的物体。

它默认为1.

"Slicesi"

[编辑 | 编辑源代码]

Slices 参数控制经线数。与 Rings 一起,这定义了网格中的细节程度。默认值为20定义了一个块状网格,而 200 定义了一个更平滑的网格,首次显示时可能需要几秒钟才能渲染。

将 Slices 设置为低值,并将 Rings 设置为高值,将产生一个像剥皮的橙子形状的网格。

Rings 参数控制纬线数。与 Slices 一起,这定义了网格中的细节程度。它也默认为20.

将 Slices 设置为高值,并将 Rings 设置为低值,将产生一个像一堆不同厚度的甜甜圈形状的网格,这些甜甜圈彼此堆叠。

华夏公益教科书