导入地板资源时,不用导入默认材质
BoxMesh可以用来加载网格物体
pikaSpawnPoint该点要从模型的头部拉到尾部,否则不支连续生成
碰撞里放到模型尾部,检测到碰撞时,移除旧的地板,生成新的地析
碰撞属性里更改成OverlapOnlyPawn
模型本身的碰撞设置为BlockAll
查看模型本身的碰撞体,该碰撞体为实际上可以进行移动的路径
移除模型本身的碰撞体,然后新建一个Box的碰撞体,并将其移动到模型平面上
在模型两端加两个碰撞体,以防止玩家掉下去
调整角色的摄像机的位置
三渲二
拖拽一个Post Process Volume到场景,并缩放1000倍
在Poss Process Volumn里载入line材质
line材质里要选择Post Process
PiakFloor.cpp的beginPlay里添加模型的渲染深度为true
效果为:
创建UI
创建UI类
创建UI蓝图
修改UI蓝图的父类为自己创建的UI类
绑定UI蓝图里的TEXT到自己定义的属性里
在游戏开始时将UI加载到屏幕上
手动加入模块
创建gameState的C++类用于保存用户的全局数据,该类存在于服务端
代码里的碰撞修改成overlap后,金币蓝图里的碰撞也要更改成overlap,overlap的碰撞不会对碰撞的对象产生阻力,BlockAllDynamic则会产生阻力;
除碰撞BOX外,Mesh本身的碰撞也要改成overlapAll
声音播放
导入wav格式的声音文件后,创建cue文件
在金币的蓝图上加载声音
通过UGameplayStatics播放声音
通过UGameplayStatics,还能将声音绑定在组件上;