5. 应用聚光源


在该部分中,我们将使用一个 聚光源 来创建一个手电筒,该手电筒可以由我们的玩家控制,也可用于在黑暗区域中照亮我们的房间。

简单的走廊

我们要做的第一件事是创建一个黑暗的走廊,以便我们可以进入走廊并照入光亮。

  1. Modes(模式) 菜单的 Geometry(几何体) 选卡中,点击并拖拽一个 盒体 画刷到关卡中。

    LQS_HallwayBox.png

  2. 在盒体画刷的 详细信息 面板的 画刷设置 部分下,设置 X1000、设置 Y200 、 设置 Z300

    LQS_HallwayBrushSettings.png

  3. 进入 平移 模式(W), 左击 并拖拽箭头来将盒体移动到玩家的对面,如下所示。

    LQS_MovedHallway.png

    让盒体的一小部分插入在房间内,剩余部分从房间内延伸出来。

  4. 选中该 盒体,按下 Ctrl + W 来复制它。

  5. 选中新盒体,并在其 详细信息 面板的 画刷设置 部分下,设置 X980、设置 Y180 、 设置 Z280 。并且,设置 画刷类型Subtractive(挖空型)

    LQS_HallwaySubtractiveSettings.png

  6. 使用 平移 模式,在我们的 叠加型 画刷中移动此 挖空型 画刷,以便它创建一个开口,正如在下面的图片中所看到的。

    LQS_SimpleHallwayComplete.png

    如果需要, 挖空型 画刷可以推入到房间内,因为该画刷在游戏中是不可见的,且没有碰撞。

  7. 点击LQS_BuildIcon.png 构建 来完成走廊构建, 然后点击LQS_PlayIcon.png 运行 按钮来在游戏中运行。

    LQS_HallwayInGame.png

创建手电筒

现在我们已经走入了走廊,我们需要在这里照一些光。让我们一起来创建一个简单的手电筒!

  1. 内容浏览器中Blueprints 文件夹下, 双击左键 来打开 MyCharacter Blueprint

    LQS_MyCharacter.png

  2. Blueprint(蓝图) 内,点击窗口右上角的 Components(组件) 选卡。

    LQS_ComponentsTab.png

  3. Components(组件) 选卡中,点击 Components(组件) 窗口的 Add Component(添加组件) 按钮。这时将出现一个下拉菜单,找到并点击 Spot Light(聚光源)

    LQS_AddSpotLight.png

  4. 这将会添加一个附加到角色上的 Spot Light(聚光源)

    LQS_SpotLightAdded.png

    尽管 Spot Light(聚光源) 现在已经附加到了我们的玩家上并且已经可以随同玩家移动,但是这种设置没有考虑到玩家当前所看的地方,如下图所示。

    LQS_LightNotAttached.png

    我们想让光照的朝向和玩家的朝向总是保持一致。

    LQS_FlashlightComplete.png

  5. 组件 窗口中, 左击 SpotLight1 并将它拖拽到 Mesh1P 上,这将会把它附加到该角色网格物体上(游戏中的手臂)。

    LQS_AttachSpotLight.png

  6. 同时,我们希望光照看上去就像是从我们枪的下面发出的一样。我们可以通过在 详细信息 面板中设置该光源的 Location(位置) 来完成。

  7. Transform(变换)Location(位置) 下,设置 X82 ,设置 Y15,设置 Z122

    LQS_FlashlightPosition.png

  8. 要想完成,请点击窗口左上角的 Compile(编译) 按钮。

    LQS_Compile.png

    蓝图 完成编译后,您将看到一个对钩号,表示已经成功编译完成。

    LQS_CompileSuccess.png

  9. 返回到主编辑器窗口并点击 LQS_BuildIcon.png 构建 图标,然后点击 LQS_PlayIcon.png 运行 来在游戏中运行。

    LQS_AdjustFlashLight.png

    我们的手电筒现在已经完成。

调整手电筒的属性

既然我们已经把手电筒附加到了我们的角色上,那么接下来我们可以像将光源放置到关卡本身中那样来调整该光源的属性。您可以在 MyCharacter 蓝图组件 选卡中的光源的 详细信息 面板中,修改 Light Color(光源颜色)Intensity(亮度)Attenuation(衰减) 及其他设置。MyCharacter 蓝图 是我们向我们的网格物体添加光源的地方。让我们来修改其中一些属性,来改变在游戏中我们手电筒的外观。

  1. 内容浏览器 中,从 Blueprints 文件夹内打开 MyCharacter蓝图 ,并点击 Components(组件) 选卡。

  2. 点击 组件 窗口中的 SpotLight1 光源,并在 Details(详细信息) 面板中找到 Light(光源) 部分。

  3. 这里,您可以调整该光源的属性,来获得您期望的效果。

    LQS_FlashlightSettings.png

    示例手电筒的设置。Inner(内锥角)Outer Cone Angle(外锥角) 设置允许您控制光源的大小, Inner Angle(内锥角) 正如其名称所示,表示将会影响内部圆形区域的大小,该圆形区域将淡出到由 Outter Angle(外锥角) 所定义的外部圆形区域。

  4. 请记住在完成时点击 LQS_CompileIcon.png Compile(编译) 按钮。

  5. 要想查看您的修改,请点击LQS_PlayIcon.png Play(运行) 按钮来在游戏中运行。

在下一部分中,我们将添加一个 Directional Light(定向光源) ,该光源将用作为环境光照来向我们的走廊投射月光。