仅使用蓝图

适用于刚开始使用虚幻引擎的游戏性程序员的入门级信息。

Windows
MacOS
Linux
On this page

蓝图类 允许你使用 蓝图 - 可视化脚本 系统设置新类。创建新蓝图类 后, 你可以添加组件,借助可视化脚本设置函数和其他游戏性或设计行为,及设置类变量的默认值。仅使用蓝图设置的LightSwitch类名为 LightSwitch_BPOnly,我们将在下面对它进行说明。

类设置

我们在 内容浏览器 中创建了LightSwitch_BPOnly类,并选择 Actor 作为父类。

向蓝图中添加组件的方法有两种——可在 蓝图编辑器组件(Components) 选项卡中添加(静态),或者在图表编辑器 中通过可视化脚本添加(动态)。 由于LightSwitch类将始终具有PointLightComponent和SphereComponent,我们在 组件(Components) 选项卡中静态地添加了这些组件。

使用 组件(Components) 选项卡添加PointLightComponent,将其命名为PointLight1,作为根组件,然后添加SphereComponent,将其命名为Sphere1,附着在PointLightComponent上。 在 蓝图编辑器 中添加到类上的组件具有淡蓝色图标,而从父类继承的组件则具有深蓝色图标。

BP_Only_ComponentList.png

蓝图编辑器我的蓝图 选项卡中,你可以添加新的变量函数 。你还可以访问蓝图类中包含的所有图表 。在图表中,节点 通过引线连接在一起,以创建可由类变量、游戏性事件、 甚至Actor的周围环境驱动的设计时和游戏性功能。

使用 我的蓝图(My Blueprint) 选项卡将浮点变量 DesiredIntensity 添加到LightSwitch_BPOnly类。我的蓝图(My Blueprint) 选项卡也会显示在 "组件(Components)"窗口 中添加的组件,这样, 可在需要时在图表中访问它们。

BP_Only_MyBlueprint.png

我们使用了两个图表来设置LightSwitch_BPOnly类行为。第一个图表是 构造脚本 函数图表,它包含 构造脚本(Construction Script) 函数输入节点。 当某个Actor被添加到关卡时,或某个现有Actor在关卡中被移动时,此事件将执行。在 LightSwitch_BPOnly 类中,构造脚本(Construction Script) 事件与 设置强度(Set Intensity) 节点相连接,这样,当该Actor被添加到关卡中或在关卡中被移动时,Point Light 1(PointLightComponent)的强度会被设置为 DesiredIntensity 的数值。

BP_Only_ConstructionScript.png

在 LightSwitch_BPOnly 类中设置的另一个图表是 事件图表 。在事件图表中,执行从 OnComponentBeginOverlapOnComponentEndOverlap 等事件开始。这些事件在关卡中的某些其他Actor与SphereComponent重叠或离开它时执行。两个事件都与 切换可视性(Toggle Visibility) 节点相连接,这样, 当这些事件执行时,PointLightComponent的可视性将被切换。有关事件和使用图表的更多信息,请参阅 事件(Events)事件图表图表编辑器 文档。

BP_Only_EventGraph.png

如果找不到"切换可视性(Toggle Visibility)",在 右键单击 菜单中取消选中"情境相关(Context Sensitive)",或尝试在"查找节点(Find a Node)"菜单中搜索它。你也可以通过从点光源变量节点 拖出引线,然后搜索"Toggle Visibility"的方法取得相同的结果。

如果找不到Sphere1的OnComponentEndOverlap,确保选中该球体变量,然后使用位于"事件(Event)"->"添加事件(Add Event)"中的"添加事件(Add Event)", 或者从 右键单击 菜单中依次转至"添加事件(Add Event)"->"碰撞(Collision)"->查看 OnComponentBeginOverlap / OnComponentEndOverlap(View OnComponentBeginOverlap / OnComponentEndOverlap)。

DesiredIntensity 变量的变量设置中,它被设置为 可编辑(Editable),因此在 蓝图编辑器类默认值(Class Defaults) 中它可见并且可被编辑。 这也意味着可针对该类的每个实例修改该变量,以使每个Actor都可以拥有其自己的 DesiredIntensity

BP_Only_Defaults.png

可以通过两种方法使用其他蓝图类扩展蓝图类——使用 类查看器(Class Viewer) 中类旁的下拉按钮创建新蓝图,或者, 右键单击 蓝图并选择 基于此蓝图创建新蓝图(Create New Blueprint Based on This)

LightSwitch_BPOnly蓝图类位于 内容浏览器 中,你可以将它从该位置拖到关卡中。它也位于 类查看器 中。 有关使用 内容浏览器类查看器(Class Viewer) 在关卡中放置Actor的更多信息,请参阅 放置Actor 文档。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback