几何体画刷Actor

指导如何使用画刷在虚幻编辑器中创建关卡几何体。

Windows
MacOS
Linux

BSPHouse.png

本文档细述在关卡创建中使用 几何体画刷 的方法。

几何体画刷是虚幻编辑器中最基本的关卡构建工具。从理论上讲,最好将几何体画刷看作是在关卡中填充和雕刻空间体积。很久以前,几何体画刷被用作关卡设计的主要构件。然而,现在这个角色已经被传递到静态网格体,后者的效率要高得多。但是,在产品的早期阶段,几何体画刷仍然是非常有用的,它可以快速原型化关卡和对象,也可以用于那些无法使用3D建模工具的关卡构建。本文档将介绍几何体画刷的用途以及如何在关卡中使用它们。

一般来说,您可以把几何体画刷看作是一种创建基本形状的方法,在关卡设计过程中使用,它可以是永久性的固定工具,也可以是艺术家完成最终网格体创建时用来测试的临时工具。

几何体画刷的用途

虽然静态网格体现在主要用于用几何体填充关卡,但是几何体画刷仍然有它们的用处。下面是一些典型的几何体画刷用法:

概略画出关卡

创建关卡的标准工作流程可能是这样的:

  • 概略画出关卡和设计关卡路径

  • 游戏测试流程和游戏进程

  • 修改布局并重复测试

  • 初始网格体通道

  • 初始照明通道

  • 碰撞和性能问题的游戏测试

  • 完善通道

ElementalBSP.png

ElementalComplete.png

画刷绘制/草拟

最终关卡

第一步是在使用静态网格体和其他完成的艺术资源填充关卡之前,先画出关卡草图,以确定布局和流程。这个过程通常是使用几何体画刷为关卡创建一个外壳,然后通过测试和迭代,在最终布局上达成一致。几何体画刷完美适用于关卡设计过程的这个方面,因为它不需要艺术团队花费任何时间和精力。关卡设计师可以简单地使用虚幻编辑器中内置的工具来创建和修改几何体画刷,直到他们满意关卡的布局和玩法。

随着测试的结束和网格体化的开始,几何体画刷逐渐被静态网格体所取代。这可实现快速的初始迭代,同时也为艺术团队的构建工作提供了一个很好的参考。

简单的填充器几何体

关卡设计师在创建关卡时,经常会遇到一种情况,即他们需要一个相当简单的几何体来填补间隙或空间。如果没有现成的静态网格体来填充空间,设计师可以简单地使用几何体画刷来填充该空间,而不必麻烦美术团队创建自定义网格体。尽管静态网格体的性能更好,但只要所需几何体比较简单,偶尔也可以使用几何体画刷,而不会造成严重影响。

创建画刷

使用 放置模式(Place Mode) 面板中的 几何体(Geometry) 选项卡创建画刷:

  1. 使用该面板底部的单选按钮选择画刷类型(添加型或挖空型):

    add_subtract.png

  2. 将列表中的一个基元类型拖放到 视口(Viewport) 中:

    BoxBrush.png

  3. 修改 画刷设置(Brush Settings),使用变换工具,或激活 几何体编辑模式(Geometry Editing Mode) 来重新塑造画刷并调整其大小。详情请参阅修改画刷

画刷基元

基元

说明

BSP_Box.png

创建一个盒体形状的几何体画刷Actor,然后可以在 详细信息(Details) 面板中进行自定义。选项包括:

盒体构建器设置

X

X轴上的大小。

Y

Y轴上的大小。

Z

Z轴上的大小。

墙壁厚度(Wall Thickness)

画刷的内壁厚度。仅在选中 中空(Hollow) 时才相关。

中空(Hollow)

设置画刷是实心的还是内部是中空的,这是一种快速创建房间的方法。使用 墙壁厚度(Wall Thickness) 进行控制。

曲面细分(Tessellated)

盒体的边是否形成三角形,而非保持四边形。

BSP_Cone.png

创建一个锥体形状的几何体画刷Actor,然后可以在 详细信息(Details) 面板中进行自定义。选项包括:

锥体构建器设置

Z

Z轴上的高度。

Cap Z(@@@)

Z轴上内盖的高度。仅在选中 中空(Hollow) 时才相关。

外半径(Outer Radius)

锥体底座的半径。

内半径(Inner Radius)

锥体内壁的半径。仅在选中 中空(Hollow) 时才相关。

边数(Sides)

锥体形状周围的边数。

边对齐(Align to Side)

是沿X轴对齐一条边的旋转,还是让其中一个角指向轴下方。

中空(Hollow)

设置画刷是实心的还是内部是中空的,这是一种快速创建房间的方法。使用 墙壁厚度(Wall Thickness) 进行控制。

BSP_Cylinder.png

创建一个圆柱体形状的几何体画刷Actor,然后可以在 详细信息(Details) 面板中进行自定义。选项包括:

圆柱体构建器设置

Z

Z轴上的高度。

外半径(Outer Radius)

设置圆柱体的半径。

内半径(Inner Radius)

设置圆柱体内部中空空间的半径。仅在选中 中空(Hollow) 时才相关。

边数(Sides)

圆柱体形状周围的边数。

边对齐(Align to Side)

是沿X轴对齐一条边的旋转,还是让其中一个角指向轴下方。

中空(Hollow)

设置画刷是实心的还是内部是中空的,这是一种快速创建房间的方法。使用 内半径(Inner Radius) 进行控制。

BSP_CurvedStair.png

创建一个曲线型楼梯形状的几何体画刷Actor,这意味着楼梯可以弯曲成一个角度,但不能环绕自身 - 为此,您需要一个螺旋式楼梯。曲线型楼梯一直延伸到地面。形状可以在 详细信息(Details) 面板中自定义。选项包括:

曲线型楼梯构建器设置

内半径(Inner Radius)

阶梯围绕的内柱的半径。

阶梯高度(Step Height)

每级阶梯从顶部到底部的高度。

阶梯宽度(Step Width)

每级阶梯从一边到另一边的宽度。

曲线角度(Angle of Curve)

楼梯的旋转角度。

阶梯数(Num Steps)

楼梯中阶梯的数量。

添加到第一级阶梯(Add to First Step)

将提供的高度添加到第一级阶梯,有效地提高了整个楼梯的高度。

逆时针方向(Counter Clockwise)

如果您想让楼梯逆时针而不是顺时针弯曲,请选中此框。

BSP_LinStair.png

创建一个直线型楼梯形状的几何体画刷Actor,即不弯曲的直线楼梯。此楼梯一直延伸到地面。然后形状可以在 详细信息(Details) 面板中自定义。选项包括:

直线型楼梯构建器设置

阶梯长度(Step Length)

每级阶梯前后的长度。

阶梯高度(Step Height)

每级阶梯从顶部到底部的高度。

阶梯宽度(Step Width)

每级阶梯从一边到另一边的宽度。

阶梯数(Num Steps)

楼梯中阶梯的数量。

添加到第一级阶梯(Add to First Step)

将提供的高度添加到第一级阶梯,有效地提高了整个楼梯的高度。

BSP_SpiralStair.png

创建一个螺旋式楼梯形状的几何体画刷Actor,即一种可以不断环绕自身的楼梯。这种楼梯不会一直延伸到地面。形状可以在 详细信息(Details) 面板中自定义。选项包括:

螺旋式楼梯构建器设置

内半径(Inner Radius)

阶梯围绕的内柱的半径。

阶梯宽度(Step Width)

每级阶梯从一边到另一边的宽度。

阶梯高度(Step Height)

每级阶梯从顶部到底部的高度。

阶梯厚度(Step Thickness)

整体上增加楼梯的厚度。

360度阶梯数(Num Steps Per 360)

确定完成一次完整的旋转所需的阶梯数。

阶梯数(Num Steps)

楼梯中阶梯的数量。每当这个值达到每360度阶梯数的值(或其倍数)时,楼梯将再次环绕自己。

添加到第一级阶梯(Add to First Step)

将提供的高度添加到第一级阶梯,有效地提高了整个楼梯的高度。

倾斜天花板(Sloped Ceiling)

这导致天花板是倾斜的,而不是分层的。

倾斜地板(Sloped Floor)

有效地将地板变成螺旋坡道,而不是传统的楼梯。

逆时针方向(Counter Clockwise)

如果您想让楼梯逆时针而不是顺时针弯曲,请选中此框。

BSP_Sphere.png

创建一个球体形状的几何体画刷Actor,然后可以在 详细信息(Details) 面板中进行自定义。选项包括:

球体构建器设置

半径(Radius)

设置球体的半径。

曲面细分(Tessellation)

控制用于构成球体的边数。由于采用曲面细分方法,此值上限为5。

修改画刷

您可以使用数种方法修改画刷,每种方法都适用于特定情况,并可根据您的需要编辑画刷。

几何体编辑模式

更改画刷实际形状的最佳方法是使用 几何体编辑模式(Geometry Editing Mode)。此编辑器模式允许直接操作画刷的顶点、边和面。它非常类似于在一个极为简化的3D建模应用程序中工作。

有关 几何体编辑模式(Geometry Editing Mode) 以及如何用其修改画刷的更多信息,请参阅关卡编辑器模式页面。

变换控件

还可以使用各种编辑器变换控件修改画刷。这些变换控件支持交互式平移、旋转和缩放,并可通过视口工具栏中的控件按钮访问。

TransformWidgets.png

有关这些变换控件及其用法的更多信息,请参阅变换Actor

画刷属性

要编辑现有的画刷,可以选择该画刷,然后查看 详细信息(Details) 面板来进行编辑。如果已选择了整个画刷,您将看到 画刷设置(Brush Settings) 类别:

BrushDetails.png

画刷类型

画刷类型(Brush Type) 下拉列表包括以下项目:

画刷类型下拉列表

添加型(Additive)

将画刷(Brush)设置为添加型(Additive)。

挖空型(Subtractive)

将画刷(Brush)设置为挖空型(Subtractive)。

在关卡创建过程中,您可以使用多种不同的画刷类型。每种类型都专门适用于特定情况。

添加型

添加型(Additive) 画刷类似于实体的已填充空间。这是您想要添加到关卡中的任何画刷几何体的类型。可视化添加型画刷的一个好办法是想象房间的四面墙、地板和天花板。每一个都是地图中一个单独的盒状添加型画刷,它们的角匹配起来形成一个封闭的空间。

挖空型

挖空型(Subtractive) 画刷是一个中空的镂空空间。您将使用这种画刷来删除固体空间,例如从以前创建的添加型画刷创建门、窗等。挖空型空间是玩家唯一可以自由移动的区域。

高级属性

单击 画刷设置(Brush Settings) 底部的Advanced按钮公开高级画刷属性:

BrushDetailsAdvanced.png

多边形

多边形(Polygons) 下拉列表提供以下选项:

PolygonsDropdown.png

多边形下拉列表

合并(Merge)

将画刷上的任意平面合并在一起。

分割(Separate)

反转合并效果。

固体性

固体性(Solidity) 下拉列表包括以下项目:

务必阅读画刷固体性部分了解更多详情。

SolidityDropdown.png

固体性下拉列表

固体(Solid)

将画刷固体性设置为固体。

半固体(Semi Solid)

将画刷固体性设置为半固体。

非固体(Non Solid)

将画刷固体性设置为非固体。

顺序

顺序(Order) 下拉列表包括以下项目:

务必阅读画刷顺序了解更多详情:

OderDropdown.png

顺序下拉列表

第一个(To First)

使选定的画刷成为第一个要计算的画刷。

最后一个(To Last)

使选定的画刷成为最后一个要计算的画刷。

对齐和静态网格体按钮

如果在 画刷设置(Brush Settings) 类别下展开属性,将显示以下按钮:

画刷类型下拉列表

画刷顶点对齐(Align Brush Vertices)

将画刷的顶点对齐到网格。

创建静态网格体(Create Static Mesh)

将当前画刷转换为保存在指定位置的静态网格体Actor。

拖动网格

使用画刷时,用于捕捉世界场景中对象的拖动网格是非常重要的。如果画刷的边或角没有设置在网格上,可能会发生错误,导致渲染瑕疵或其他问题。使用画刷时,应该始终确保启用了拖动网格,并确保始终将画刷的顶点保持在这个网格上。

画刷顺序

画刷的放置顺序极为重要,因为加法或减法运算都是按照这个顺序进行的。即使是在完全相同的位置,先放一个挖空型画刷,然后再放一个添加型画刷,也不会产生和先放一个添加型画刷,然后再放一个挖空型画刷相同的效果。如果从空白空间挖空,然后在其上添加,挖空型画刷就会被忽略,因为您不能从空白处挖空。然而,如果您以相反的顺序放置同样的画刷,先添加到空白空间,然后从增加的雕刻空间中挖去它。

有时,您可能会将画刷打乱顺序,或者添加一个需要在现有画刷之前计算的新画刷。幸运的是,画刷的顺序可以修改,正如您在画刷属性部分中看到的那样。

画刷表面

如果您选择一个画刷表面(使用 Ctrl + Shift +左键单击 来选择表面而不是画刷),您将在 详细信息(Details) 面板中看到以下类别:

BSPSurfaceDetails.png

几何体类别

几何体(Geometry) 类别包含一些工具,帮助您管理跨画刷表面的材质应用。

几何体类别按钮

选择按钮(Select Button)

各种命令,用于帮助您基于各种情况选择画刷表面。

对齐(Alignment)

根据所需的设置重新对齐表面的纹理坐标。例如,当您需要一个复杂的画刷布置,沿地板对齐,并且看起来像单一表面时,这个按钮很有用。

应用材质(Apply Material)

内容浏览器(Content Browser) 中当前选定的材质应用于画刷表面。

清理几何体材质(Clean Geometry Materials)

如果您的画刷表面因任何操作而丢失了其材质,这个按钮将修复此问题。

表面属性

表面属性(Surface Properties) 区域包含多种工具,可以帮助您控制纹理的跨表面放置方式以及光照图分辨率。

表面属性类别

平移(Pan)

这一部分中的按钮允许您根据给定的单元数水平或垂直平移材质的纹理。

旋转(Rotate)

按给定的角度旋转画刷表面材质上的纹理。

翻转(Flip)

允许您水平或垂直翻转画刷表面的纹理。

缩放(Scale)

按给定的数量调整画刷表面的纹理大小。

照明

照明(Lighting) 部分允许您为画刷表面更改各种以光源为中心的重要属性。

照明属性

光照图分辨率(Lightmap Resolution)

基本上允许调整这个表面的阴影。数字越小,阴影越紧密。

全局光照设置

使用双面照明(Use Two Sided Lighting)

如果为true,则此表面将在每个多边形的正反面接收光线。

仅间接阴影(Shadow Indirect Only)

如果为true,则此表面只会通过间接照明产生阴影。

漫反射增强(Diffuse Boost)

调整漫反射颜色对间接照面的影响程序。

完全被遮挡的样本片段(Fully Occluded Samples Fraction)

样本沿该表面的一部分,该部分在被认定为是从间接照明计算中排除之前必须被遮挡。

画刷固体性

画刷可以是 固体(Solid)半固体(Semi-solid)非固体(Non-solid)。画笔的固体性是指它是否与世界场景中的对象发生碰撞,以及在构建几何体时,画刷是否会在周围的画刷中创建BSP切割。

创建画刷后,可以在 详细信息(Details) 面板中更改画刷的固体性:

BrushSolidity.png

下面说明三种固体性类型。

固体

固体(Solid) 画刷是默认画刷类型。这些是您创建一个新添加或挖空型画刷时得到的类型。它们具有以下属性:

  • 在游戏中阻挡玩家和发射物。

  • 可以是添加型或挖空型。

  • 在周围画刷上创建切割。

半固体

半固体 画刷是碰撞式画刷,可以放置在关卡中,而不会对世界场景中周围的几何体进行切割。这些可以用来创建诸如柱子和支撑梁之类的东西,尽管这些对象通常应该通过使用静态网格体来创建。它们具有以下属性:

  • 就像固体画刷那样,阻挡玩家和发射物。

  • 仅可是添加型,不可是挖空型。

  • 不会在周围画刷上创建切割。

非固体

非固体 画刷是非碰撞画刷,也不会在世界场景中周围的画刷上创建切割。它们的效果是可见的,但不能以任何方式与之交互。它们具有以下属性:

  • 不会阻挡玩家或发射物。

  • 仅可是添加型,不可是挖空型。

  • 不会在周围画刷上创建切割。

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见