Beam(光束)简介

Time:5 分钟

Beam(光束)是一种特殊效果对象,其作用为在两个 Attachment 对象之间渲染纹理。开发者可以对颜色、透明度、宽度、纹理和纹理速度等光束属性进行配置。

创建光束

光束的起点和终点都需要附着到一个部件。开始创建光束之前,需要通过 Model(模型) > Constraints(约束) > 启用 Constraint Details(约束详细信息),以确保 Attachment 可见。启用后,它将以灰色突出显示。

  1. 创建两个部件作为光束的起点和终点。
    游戏视图中的两个部件

  2. 将两个部件编组为一个 Model(选择两个部件然后按 Ctrl+G 或 ⌘+G)。
    在管理器窗口中由两个部件组成的模型

  3. 使用 + 按钮为每个部件插入附件
    使用 + 按钮插入附件

在管理器窗口中,两个部件,每个带有两个附件

  1. 一个 Beam 插入模型。
    将一个光束插入模型

  2. 选择光束,然后在属性窗口中向下滚动到 Attachment0/Attachment1 属性。单击该属性,然后单击先前创建的附件来设置附件。注意不要将附件属性分配给同一附件!
    点击附件后的属性分配 Attachment0

  3. 最后结果应为这样:
    光束连接的两个部件

移动部件或其附件也会移动光束,因为附件点决定了光束的起点/终点。现在就可以开始测试光束属性了!开发者可以通过选择模型并按 Ctrl+D 或 ⌘+D 来复制该模型。创建光束时,请经常对其进行复制,以便可以比较所做出的修改。

视觉属性

光束最有用的属性或许就是 Beam/Texture|Texture 了,它沿光束的长度渲染 Texture(纹理)。下图中,绿色/粉色的三角形纹理被渲染。Texture 属性是一个 articles/Content 属性,如 rbxassetid://3259097211(如下图所示)。

一个绿色/粉色三角形纹理,旁边是原始光束和应用了纹理的光束

使用序列的颜色和透明度

在光束上,有两个视觉属性您可以使用序列来定义:透明度和颜色。在 Studio 中,您可以通过单击属性窗口中的 […] 来配置这些属性。透明度属性是一个 datatype/NumberSequence,需使用折线图编辑。X 轴是沿光束长度的位置,Y 轴是该位置的透明度。单击图形上的任意位置可以添加一个新的关键点,拖动现有的关键点可以编辑或删除它们,Reset(重置)按钮会将序列更改回窗口打开时的状态。

光束的透明度序列,范围为 0 到 1

Beam/Color 的工作原理与此类似,但使用的是色标渐变。纹理沿光束长度以与 ImageLabel/ImageColor3 相同的方式着色。单击序列栏可以添加更多色标,单击色标可以选择它们,以更改它们的颜色、位置或删除它们。

一个以从红到蓝的颜色渐变着色的光束

光束几何形状

3D 内容都是用三角形渲染的;光束通过在两个分段之间绘制两个三角形来渲染其纹理。分段布置在两个 Attachment 方向之间,因此如果附件朝向不同的方向,分段就会扭曲。默认情况下光束使用 10 个分段,但您可以通过配置 Beam/Segments|Segments 属性进行更改。

具有 5 个分段的两个光束,其中前景光束由于附件的方向而扭曲

上面的屏幕截图显示了两个光束,每个光束有 5 个分段。绿色/粉色三角形纹理在 5 个分段之间渲染 4 次。前景光束由于附件的轻微扭曲而扭曲。

FaceCamera

开启 Beam/FaceCamera|FaceCamera 属性后,光束会自动调整角度面向镜头。

两个光束,背景光束面向镜头

Width0 和 Width1

您可以通过配置 Beam/Width0|Width0/Beam/Width1|Width1 属性在每个端点设置光束的宽度。

一个在每个端点有不同宽度的光束

CurveSize0 和 CurveSize1

您可以使用 Beam/CurveSize0|CurveSize0/Beam/CurveSize1|CurveSize1 属性来使光束相对附件的方向向上或向下弯曲。

一个又大又漂亮的曲线光束

***Roblox官方链接:Beam(光束)简介