游戏编程笔记10 --- Unreal知识1

Trigger Volume

会引发执行一系列代码
范例1: 重力达到60kg, 灯的颜色从白色改为红色
在这里插入图片描述


Collision Volume

告诉物理引擎什么东西撞到了什么东西
可以模拟物理效果

如何不让玩家穿门而过

右键门, 点击 edit SM_door
点击上方菜单栏 collision, 点击 add box collision
注意: 为了程序运行流畅, 应该尽量减少 collision volume 的 polygons
保存, 退出编辑窗口


自定义player

  1. 把默认 player actor 转化成 blueprint class
    在这里插入图片描述
  2. 把默认 gamemode 转化为 blueprint gamemode
    在这里插入图片描述
  3. 设置新的蓝图 gamemode
    在这里插入图片描述
  4. 在新的蓝图 gamemode 里设置新的 player actor
    在这里插入图片描述

拿起物体

  1. 给需要拿起的物体开启 Physics 中的 Simulate physics 属性
    在这里插入图片描述
    会导致该物体的 Collision 的 Collision Presets 属性变为 Physics Actor
    导致该物体对的 Collision 的 Object Type 属性变为 Physics Body
    在这里插入图片描述

  2. 给自定义player的蓝图加上如下 component: Physics Handle
    在这里插入图片描述

  3. 在 Grabber 的 header 文件里加入私有属性 PhysicsHandle, 并把初始值设置为 nullptr
    在这里插入图片描述

  4. 在 Grabber 的 header 文件里添加私有属性 UInputComponent* InputComponent, 并初始化为 nullptr

  5. 创建方法 Grab();Release();
    在这里插入图片描述

  6. 创建一个玩家的输入映射: Project settings -> Enging -> Input -> Action Mappings
    在这里插入图片描述
    该映射起名为 Grab. 映射的键位为 shift 或 右键
    在这里插入图片描述

  7. 在 Grabber 的BeginPlay 方法中, 给 InputComponent 赋值, 然后把名为 Grab 的映射和向 Grab() 方法绑定在一起
    在这里插入图片描述

  8. 分别写好 Grab 和 Release 方法
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述


设置视线水平高度

待解决问题: 如果 player 是默认的圆形, 则拿着物体撞到墙的时候回滚来滚去. 玩家就会感觉主角在自己平移

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值