90天入门UE引擎开发--学习日记(33/100)

 评论框的一些属性:

Any Key节点的用法

1.代表有值输入

2.可以用它来提取任意键盘输入值

今天一共两个大案例:打砖块和贪吃蛇

作业:贪吃蛇初始长度可以任意更改

打砖块案例:

一.可移动的挡板

1.新建一个paw类(确保碰撞打开了)

2.改变玩家控制权,创建摄像机视角,为玩家0激活摄像机

3.书写paw的运动蓝图

Sweep vs Teleport

二、子弹部分

制作一个子弹类

给模型设置no colision,目的是不要影响组件

 制作四周的挡板

 制作发射小球

在paw挡板类里面新建一个箭头arrow

 利用箭头旋转来更改发射角度

 

 设置一些砖块

 利用创建标签的办法过滤、分组

建立砖块与球的碰撞消除事件(因为作为staticmesh的模型有很多,这里不能用cast函数过滤)

 

 

 当存在父子级关系时,子类默认会执行父类的事件,如果不需要,可以手动断开

三、 计分系统(一定注意tag相同)

 新建文本,调整字体颜色、位置、大小 

 同样给文本加上标签,建立函数关系:

穿透球练习

将砖块类型改为world dynamic,下面的挡板改为pawn。

overlap事件和hit事件用共同的逻辑线

↓↓↓新的设置碰撞属性的方式↓↓↓

贪吃蛇案例

一、蛇头的制作

新建一个pawn类蛇头,制作蛇头模型,并拖到场景里来

 

在蛇头蓝图里制作蛇头的移动和旋转

蛇头的移动

蛇头的旋转 

 (按键的优先级

因为场景里有多个需要相同按键输入的事件,这里会产生优先级的问题,默认会根据出现顺序降低优先级,这里每个actor都取消勾选)

老师的解释:勾选之后,只有这个节点能够接收输入,具有排他性。

 和打砖块一样,制作挡板

  制作四周的挡板

1.保存蛇身走过的路径(向量vector)

提取一个变量

 变量改为数组类型

(在一秒30帧的情况下)

 

 

 2.设置身体位置(按上面)

 同样的方法,再建立数组变量

 

 2.1.位置匹配身体

2.2.

 2.3.

 

3.通过吃食物增加身体,以及减少身体部分

新建一个AddBody函数

 在场景里面创建多个“食物”

设置碰撞属性

添加标签

 确认蛇 也勾选了碰撞事件

 写在BP_Snake上

 判断身体长度空间

一、如果身体长度已经不够减分了,停止游戏(pause 勾选!!!

 二、空间够,进行减法

三、碰到障碍的触发(运行减法的条件)

( 障碍物:1.墙壁;2.身体)

先给蛇组件头前面加一个方形碰撞盒

 给墙壁、蛇组件自身都设上Block标签

回答:因为这里是一个身体在挪动的过程,删去前一阵的位置,添加最新位置,所以是+1。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值