渲染组件

我们将介绍几种基于组件的不同渲染类型,包括 ParticleSystemComponents、DecalComponets 和 BillboardComponents 等。

Windows
MacOS
Linux

Atmospheric Fog Component

AtmosphericFogComponents 用于创建雾化效果,如场景中的云或大气雾。该组件拥有几项可调整的设置,可以影响此效果在关卡中的生成方式。

下面通过示例介绍了对 Decay Height 设置(用于控制雾的密度衰减高度,例如,较低的值可以让雾变浓,较高的值会让雾变稀,产生更少的散布)使用不同值的这类组件。有关详细信息,请参见 大气雾用户指南 页面。

Atmo0.5_4.png

Atmo0.35_4.png

密度衰减高度为0.5 (8 km)

密度衰减高度为0.35 (2.744 km)

Atmo1.0_4.png

Atmo1.0_1.png

密度衰减高度为1.0 (64 km),最大散射为4

密度衰减高度为1.0 (64 km),最大散射为1

Exponential Height Fog Component

ExponentialHeightFogComponent 用于创建雾化效果,而其密度与雾的高度相关。

指数级高度雾在地图中较低的地方产生密度较大的雾,在较高的地方产生密度较小的雾。随着您增加高度,雾会进行平滑的过渡,您不会看到明显的切换效果。指数级高度雾还提供了两种雾颜色,一种颜色用于面向主定向光源(如果不存在则径直向上)的半球体,另一种颜色用于相反方向的半球体。

ExponHeightFog.png

请参见指数级高度雾用户指南 了解更多详情及可调整的设置。

Billboard Component

BillboardComponent 是一个会被渲染为始终朝向摄像机的 2D 贴图,其功能与 ArrowComponent 类似,可用于某种放置方法且能够轻松选取。例如在下面创建的雾化效果图中,唯一添加的组件就是 BillboardComponent(实际的雾气效果是一个通过脚本动态创建的材质)。

billboard1.png

在场景中,您可以通过选择 BillboardComponent 图标(一个可以指定的贴图)来操控雾化效果图。

billboard2.png

有关如何创建此雾化效果图的示例,请参见 雾气薄片和光束 文档。

Material Billboard Component

MaterialBillboardComponent 是一个被渲染为始终朝向摄像机的 2D 材质。这类组件可用在 2D 草丛或树叶等情形中。我们并未使用静态网格模型来呈现生长中的草丛甚至单个草叶,而是利用 MaterialBillboardComponent 和一个材质来表现生长中的草,这样就无需使用草的 3D 象征,因为看板(billboard)将自动转动并朝向玩家,从而呈现出草的三维表象。

Cable Component

CableComponent 可以将两个组件附加在一起,同时在它们之间渲染出一条连线。在这条连线上,您可以指定一个材质并定义参数来影响连线的显示方式。想要了解更多有关连线组件的信息,请点击下方的链接。

Custom Mesh Component

CustomMeshComponent 能让您指定自定义三角形网格几何体。

Poseable Mesh Component

PoseableMeshComponent 允许您通过 Blueprint 来控制骨骼变换。

Decal Component

DecalComponent 是一个被渲染到网格模型表面上的材质(一种适用于模型的“保险杠标贴”)。贴花组件可用于任何目的,如发射子弹时在墙上撞出的痕迹,车辆在道路上擦出的打滑印记,被击中时在地上溅出的血迹等(下面有一个相关的示例)。

Decal_1.png

您可以参考多个页面了解关于使用贴花组件的详细信息。

Instanced Static Mesh Component

InstancedStaticMeshComponent 可以高效渲染同一静态网格模型的多个实例。 这类组件尤其适用于程序化创建的场景或房间,因为它不会在场景中放置成百上千个 Static Mesh Actors,您只需放置一个 Instanced Static Mesh 并添加该静态网格模型(如地板或墙)的多个实例,性能负担也大大降低。

请在我们的 Wiki 页面上参阅 Procedural Room Generation 培训教程,了解关于使用 InstancedStaticMesh 组件以及程序化生成随机房间的示例。

Particle System Component

ParticleSystemComponent 可以让您添加一个粒子发射器作为其他对象的子对象。添加 ParticleSystemComponent 可用于多种目的,例如,为想要摧毁的对象添加爆炸效果,或是为可以点燃的对象增加着火效果。通过添加这类组件到其他对象,您便可以在游戏过程中借助脚本访问和设置任何粒子效果参数(例如打开或关闭效果)。

例如,我们在下面生成了一个安保摄像头并添加了一个 ParticleSystemComponent 用于产生火花效果。

particle1.png

通过脚本,我们可以声明在默认情况下关闭火花效果,并在摄像头被击中时将其激活。

particle2.png

请参见 级联粒子系统了解详细信息。

Post Process Component

PostProcessComponets 可以为 Blueprints 开启后处理控制。它将使用一个父级 UShapeComponent 来提供体积数据(如可用)。这类组件可以在某一场景应用了后处理设置时变换场景的色调。例如,假设您定义了一个默认的后处理设置并将其用于游戏,那么在玩家受到伤害(或丧命)时,您可以通过脚本将 Scene Color Tint 的设置改为黑色/白色色调。

有关详细信息,请参见 后期处理内容示例后期处理效果文档。

Scene Capture 2D Component

SceneCapture2DComponent 用于从单一平面捕获场景“快照”并将其馈送给渲染目标。在捕获和指定 Render Target 贴图时,除其他设置外有一些设置可用于控制 Field of View。这样的示例包括在监视器上创建镜子(如下面所示)或安保摄像头视角的情形(参见 监控摄像机切换按钮。)

2dRender.png

在上面的示例中,我们创建了一个带有 SceneCapture2DComponentBlueprint 并指定了一个 Render Target 贴图,它随后被用作 Material 施加给场景中的几何体。有关详细信息,请参见 Scene Capture 2D Content Example

Scene Capture Cube Component

SceneCaptureCubeComponent 用于从 6 个平面捕获场景“快照”并将其馈送给渲染目标。

Reflections_1_6_Header.png

在多数情况下,SceneCapture2DComponent 应当能满足大部分场景捕获需求,但在需要对环境进行 3D 捕获时,您可以使用这个组件。但在使用时应当留意,因为这会产生很大的性能消耗,只应当在绝对必要时使用。请参见 反射 了解在场景中创建反射时所用不用方法的详细信息。

Spline Mesh Component

SplineMeshComponents 可用于拉伸和弯曲静态网格模型资源。使用 SplineMeshesComponents 时,您必须提供方位对应的向量,并提供样条曲线起点和终点的切线。在下面的示例中,SplineMeshComponent 被添加到 Blueprint,同时有一个管道 Static Mesh 被指定为要影响的资源。

splinemesh.png

在您为方位指定向量并在组件本身上指定切线时,您可以使用脚本将它们设置为变量并改为公用,以便其可以在编辑器视区中编辑(如下面所示)。

splinemesh2.png

在上述示例中,我们可以单独移动 Start TransformEnd Transform 而无需移动整个 Actor,从而随意拉伸或旋转它。该示例及其相关设置可以在 蓝图样条内容示例 内容示例图中找到。

Text Render Component

TextRenderComponent 可以用指定的字体渲染世界中的文本。其中包含与常用字体有关的属性,如 Scale、Alignment、Color 等。您可以使用该组件提示玩家您的场景中有一个复杂对象。

例如,假设您的场景中有一把椅子,玩家只要在靠近时按一个按键就能坐下。您可以添加一个包含必要提示的 TextRenderComponent 来执行就坐命令(关闭可见性),同时将一个 BoxComponent 用作触发器,用于在玩家进入时将文本的可见性设为 true(如下所示)。

text1.png

在玩家进入触发器范围时,游戏将显示 TextRenderComponent 文本以提示玩家如何坐下。

text2.png

Vector Field Component

VectorFieldComponent 用于引用 Vector Field,这是一种带有速度向量网格的 3D 容器,可用于确定 GPU 子画面的速度或加速度。 向量场可用于场景中的小规模效果(如强风粒子效果)和大规模效果(如暴雪)。另请参见 Local Vector FieldsGlobal Vector Fields 了解详细信息。

image050.png

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

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

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

发表反馈意见