常见参数

以下参数和标志适用于 所有 //ezspline 子命令。


半径渐变:<radii>

定义样条线的粗细(路径)。

可接受的值为: 一个或多个以逗号分隔的条目,其中每个条目可以是:

  1. 一个 半径值(例如:106.9)。半径值必须大于 0。

  2. 一个 位置与半径,以冒号分隔,其中位置是 0 到 1 之间的十进制小数(例如:0:100.5:15.5)。

其中,如果指定了 位置,则每个位置必须严格递增,且第一个和最后一个条目的位置必须分别为 01。如果省略了位置,它们将被自动设置并插值。

例如:

  • 0.5:10,2 是非法的,因为 第一个 条目(位置始终为 0.0)被指定为了位置“0.5”。

  • 5,0.6:10,15,0.4:20,5 是非法的,因为位置不是严格递增的(0.4 出现在 0.6 之后)。

chevron-right示例hashtag

//ezsp rope clay`` <radii>

单个半径条目:GIF 展示从 //ezsp rope clay`` 5 变化到 //ezsp rope clay`` 10

两个半径条目://ezsp rope clay`` 1,12。样条线以半径 1 开始,并逐渐变粗,到末端达到半径 12:

三个半径条目://ezsp rope clay **1,12,1**。样条曲线以半径 1 开始,并逐渐变大,直到样条曲线的中点(路径的 50%)达到 12,然后向末端移动时恢复到半径 1:

由于第一个和最后一个值始终定义样条曲线的起点和终点半径,并且中间所有未指定的对应位置都会被插值,这意味着当你执行命令时,1,12,1(未指定位置)会被扩展为 0:1,0.5:12,1:1。当然,你也可以自行指定位置。

使用命令 //ezsp rope clay **1,0.1:12,1**,并从 1,0.1:12,1 变化到 1,0.9:12,1。这会在整个样条曲线中移动半径为 12 条目的“关键帧位置”(起点和终点仍固定为半径 1):

多个半径条目://ezsp rope clay 2,10,2,12,2,10,2。你可以定义任意数量的条目及其各自的位置:


Kochanek-Bartels 参数:-p <kbParameters>

用于控制样条曲线流向的参数。决定了样条曲线通过给定节点位置时采取的路径。

默认值为 0:0:0

请按此顺序提供以冒号分隔的 <tension>:<bias>:<continuity>。每个参数的预期取值范围为 [-1..1]

circle-info

这张图表arrow-up-right展示了每个参数的作用。

(注意:图表中的顺序 (c,t,b) 与 ezspline 要求的顺序 (t,b,c) 不同。)

chevron-right示例:hashtag

//ezsp polygon clay 10 4`` -p <kbParameters>

-p 0:0:0

-p 0:-1:0

-p -1:0:0

-p 0:1:0


质量 (Quality): -q <quality> (v0.13.0 或更高版本)

决定生成样条曲线形状的精确度,在精确度和运行时间之间进行权衡。

共有四种模式:

  1. FAST (比 balanced 快约 1.5 倍)

  2. BALANCED

  3. HIGH (比 balanced 慢约 3 倍)

  4. EXACT (甚至更慢...)

默认为 BALANCED(它可以相对快速地生成近乎完美的结果)。

chevron-right示例 (适用于 v0.13.0 或更高版本)hashtag

//ezspline rope clay 10`` -q <quality>

-q BALANCED

-q FAST


质量 (Quality): -q <quality> (v0.12.0 或更旧版本)

circle-info

v0.13.0 引入了一种显著更好且更快的样条曲线算法。此部分仅适用于仍在使用 ezEdits 0.12.0 或更旧版本的用户。新版本的行为请参阅上方

设置每个方块在每个维度上的形状采样数量。必须大于 0。

默认为 2.0(可以较快地生成效果平平的结果)。

如果出现空气间隙,或出现噪点/不平滑的外观,请将质量设置为更高的值,例如 -q 5.0

circle-exclamation
chevron-right示例 (适用于 v0.12.0 或更旧版本)hashtag

//ezspline beads clay 10`` -q <quality>

GIF 从 -q 1 开始并增加到 -q 7

在此示例中,-q 2 耗时不到一秒,而 -q 7 运行耗时 20 秒。


初始翻滚角 (Initial roll): -r <startRoll>-r <startRoll>,<endRoll>

允许围绕样条轴旋转样条形状,即滚动(Rolling)。参数应为以度为单位的角度。

默认为 0

有两种方式来扭曲/滚动你的样条:

  • 你可以使用 -r 定义起始滚动角度,并使用 -t 定义扭曲角度,从而实现单位长度的恒定扭曲。

  • 或者通过向 -r 传递两个以逗号分隔的角度来定义起始滚动角度和结束滚动角度。如果这样做,-t 将被忽略。

chevron-right示例hashtag

//ezspline 2d Re(Y1:-0.2,Y2:0.2) clay 10`` -r <angle>

GIF 从 -r 0 开始并移动到 -r 180


拉伸(Stretch): -s <stretchFactor>

允许沿样条路径的方向拉伸或压缩样条形状。

默认为 1

circle-info

注意://ezspline structure//ezspline expressions-z 标志会覆盖此标志。如果开启了 -z,则 -s 不起作用。

chevron-right示例:hashtag

//ezsp 3d Chainlink clay 10`` -s <stretchFactor>

GIF 从 -s 0.2 开始,在 -s 1 处短暂暂停,并增加到 -s 4


扭曲(Twist): -t <angle>

定义沿样条线扭曲形状的幅度。输入值为以度为单位的角度。

默认为 0。(//ezsp rope 除外,其默认值为 90)

具体说明:角度决定了形状在样条线当前直径的长度内旋转的幅度。这意味着,如果直径为 30 个方块,那么在路径长度经过 30 个方块后,形状将旋转给定的角度。

如果你向 -r 同时传递了起始角度和结束角度,则此参数将被忽略。

chevron-right示例:hashtag

//ezsp 2d Polygon(S:4) clay 10`` -t <angle>

GIF 从 -t 0 开始,一直增加到 -t 90


法线模式:-n <normalMode>

共有三种模式:

  1. CONSISTENT 旨在通过在曲线中“滚动”样条形状,使外观看起来平滑且一致。

  2. HORIZONTAL 防止样条形状“侧向滚动”,保持其初始朝向。

  3. UPRIGHT 使样条内部形状的 y 轴与世界的 y 轴保持一致。

默认值为 CONSISTENT

chevron-right示例:hashtag

//ezspline expression black,red,blue,white,yellow 5 -o`` -n <normalMode> ``((z%2)>1.5?5:2*(x>0)+(y>0))+0.001

-n CONSISTENT:默认值。样条线以平滑的方式沿路径弯曲。到末端时,可以观察到累积了明显的滚动量。(在起始处 white+red 是顶面,而到末端时 white+blue 位于顶部 -> 样条线发生了“滚动”)。

-n HORIZONTAL:样条线尝试使原本朝上的表面保持向上,防止自身“侧翻”。你可以看到,在整个样条线中,白色+红色的面始终朝上。

-n UPRIGHT:内部 y 轴始终与世界的 y 轴保持一致,而不是垂直于路径。请注意,现在的黄色条纹不是垂直于路径,而是完全垂直于地面的。

另一个更显着的例子(相同的命令,不同的路径):

-n CONSISTENT

-n HORIZONTAL:样条线在陡峭/垂直路段会被强制扭转以保持水平。(在这里,它总是尝试将白色+红色的表面置于顶部)。

-n UPRIGHT:正如你所料,当样条线的 y 轴完全垂直时,它在处理陡峭/垂直的路径段时表现不佳……


结束样式:-e <endMode>

设置样条线两端的形状。

共有五种模式:

  1. FLAT 样条曲线在路径的精确终点处突然结束。

  2. SOFT 样条曲线以柔和的形状结束,切入样条内部,在末端以平滑的方式逐渐变细。

  3. SPIKE 样条曲线以一个超出路径终点的圆锥体结束。

  4. ROUND 样条曲线以一个超出路径终点的半球体结束。

  5. CUBE 样条曲线以一个超出路径终点的立方体形状结束。

默认值为 FLAT

chevron-right示例hashtag

//ezsp rope ice 15 6`` -e <endMode>

-e FLAT

-e SOFT \

-e SPIKE \

-e ROUND \

-e CUBE

红石块线条显示了所使用的凸面选区。

//ezsp 2d square ice 15`` -e <endMode>

-e FLAT

-e SOFT

-e SPIKE

-e ROUND

-e CUBE


平滑方块 (Smoothblocks): -w <smoothblocks>

请参阅 平滑方块


游戏内帮助页面: -h

打印游戏内帮助页面。等同于 //help ezspline ... 的快捷方式。


最后更新于