项目创建
创建一个空项目,并添加初学者内容包
项目创建好之后,可以在左下角内容抽屉找对初学者内容包里的地图
鼠标双击可以切换地图场景
找到隐藏在对应地图场景后面的蓝图
点击可以看到地图关卡对应的蓝图
相关术语
- Event Graph(事件图):蓝图的可视化表示,用于展示不同节点和它们之间的事件流。
- Node(节点):预制的功能模块,可以执行特定的任务或操作。
- String(字符串):在编程中,用于表示文本或字符序列的术语。
- Event(事件):一个事件通常是一个特定的触发点或条件,当满足时,它会激活与其相连的其他节点或操作。
- Pin(引脚):引脚是节点上的小点,用于连接和传输数据或信息。
- Input Pin(输入引脚):用于接收来自其他节点或事件的数据或信息。
- Output Pin(输出引脚):用于发送数据或信息到其他节点或事件。
- Connection(连接):连接是引脚之间的线,用于传输数据或信息从一个节点到另一个节点。
demo
点击运行,会在地图关卡中看到打印
物理模拟
示例
打碎桌上的花瓶
添加一个立方体放在花瓶的上方,并开启立方体和花瓶的重力模拟
物体和引用
相关术语
- Objects(对象):数据和功能的集合。
- Actors(演员):可以在关卡中放置的对象。
- Component(组件):可以附加到演员上的对象。
- References(引用):查找对象的位置。
- Data Pin(数据引脚):节点的输入或输出数据。
- Execution Pins(执行引脚):决定何时运行此节点的引脚。
引用示例图
示例
- 删除“获取显示名称”节点
- 使用“静态网格组件”
- 搜索“获取质量”
添加冲量
给物体添加一个瞬间的力,以改变其运动状态。
调整冲量
- 尝试将一个物体的质量(mass)乘以100并调整其位置
- 手动调整这些值玩一玩
- 尝试修改x轴和y轴的值
蓝图
空格键
添加冲量
按空格键就能让立方体跳起来
蓝图类和蓝图实例
蓝图类(Blueprint Classes):蓝图类是一种允许内容创建者轻松地为现有游戏性类添加功能的资源。
蓝图实例(Blueprint Instances):蓝图实例是蓝图类的具体实现。当您创建一个蓝图类的实例时,您实际上是在游戏世界中创建了一个该类的具体对象或Actor。这个实例将具有蓝图类中定义的所有属性和行为,并可以在游戏运行时进行动态调整。
蓝图类和蓝图实例的关系类似于面向对象编程中的类和对象的关系。蓝图类定义了对象的结构和行为,而蓝图实例则是这些对象在游戏世界中的具体表现。
添加一个球体,并将其设置为蓝图类
设置为弹药类,一般会在蓝图类前面加上 BP_
点击保存资产,后续就能够使用
后面你就可以使用这个资产了
改变球体的材质
示例
制作一个炮弹
- "启用物理模拟" 是指为这个炮弹启用物理引擎,使其受到重力、碰撞等物理规则的影响。
- "选择一个材质" 是指为炮弹选择一个合适的材质,这会影响它在场景中的外观以及它与其他物体的交互方式(如摩擦、反弹等)。
- "场景中会发生什么" 指的是当您释放炮弹并启用物理模拟后,在场景中会发生什么样的物理交互和动画效果。
创建和实例化游戏对象
相关术语
- spawning(生成):指的是在游戏运行时动态地创建对象实例。
- Transform:是物体的位置(Location)、旋转(Rotation)和缩放(Scale),这三个属性共同定义了物体在游戏世界中的位置和朝向。位置确定了物体的坐标,旋转决定了物体的方向,而缩放则影响物体的大小。
- Return pin(返回引脚):是蓝图节点(node)的一个输出端点。它表示该节点计算或处理完数据后返回的结果。你可以将这个返回值连接到其他节点的输入端点,从而构建出复杂的逻辑网络。
蓝图编写 Spawning生成组件
然后,在关卡中按空格键就能生成对应的弹药蓝图实例
示例
连接触发脉冲
- 确保一系列操作或事件按照正确的顺序执行,并且彼此之间正确连接。
- 给游戏中的炮弹添加冲力(比如物理上的推动),这个动作应该在物体生成(spawning)之后发生。
- 在蓝图系统中连接不同的数据引脚,以传递信息或数据。
第一人称发射
运行关卡,点击F8,可以弹出页面,找到自己的第一人称视角
这个第一人称视角,可以在运行关卡之前进行调整
编写关卡蓝图
获取玩家pawn,获取Actor位置
同时设置炮弹的质量,别让炮弹太轻
发射跟随第一人称视角
添加的是控制旋转
发射的炮弹添加向量
添加炮弹向前的向量,同时乘与指定的浮点值