游戏玩法:不同的物体进行自由落体当两个相同的物体发生触碰事件的事件,结合在一起,两者结合,变成一个更大的物体,依次类推。
开发思路:
定义一个枚举来定义物体的属性,类似与一级、二级、三级、四级.......
构建一个物理框架,使物体在里面自由落体,在框架上分的正中间,标记一个目标点,将目标点的位置上传至GameMode.
创建一个Actor,使用枚举来定义这个Actor的属性,再创建变量;映射,基于枚举类型来定义的映射,例如:颜色,大小,音效等,并且在Actor BeginPlay的时候检测自己是什么类型,然后在基于自己的类型变化自己的颜色与大小。并且在模拟物理中锁定他的X轴,
在碰撞预设开启碰撞事件,并调出Hit事件,当Actor接收到碰撞通知的时候,判断是否为相同类型的Actor,是同一类型的将自己以及另外一个Actor销毁,并且在触发GameMode的生成Actor事件,因为是两个Actor进行碰撞,需要灵活使用Bool变量将第二Actor进行阻断,防止它与GameMode开始通信触发生成事件,
框架的目标点:在框架的目标点上,创建一个生成Actor的函数,并且将创建好Actor存储进GameMode中指定的变量当中,
在GameMode中获取鼠标的点击的位置并且转换为3D坐标,省略X轴与Z轴,保留Y轴,利用Add TimeLine(时间轴)来进行移动,时间轴只能触发一次,需要连上Play From Start来进行多次触发时间轴,当时间轴执行完之后触发指定变量中Actor的模拟物理(开启)让目标点中的Actor进行自由落体,并且触发目标点当中生成Actor的函数.