UE4无尽跑酷游戏制作杂记之二
在做游戏的过程中,我先后犯了两个很愚蠢的错误,这个在我观看官方的无尽的奔跑者之后我意识到了这个错误。
首先在我原来的设计当中,我使用了一个单例类,或者说一个管理者类(继承自UObject)来管理整个的路途,叫做RoadManager,然后他持有游戏中所有的道路,我们每个道路都是在RoadManger中的道路队列下,每一帧我们窥探队列的首元素,然后判断它与玩家的距离是不是大于了两千,是的话就销毁它并且生成一个新的。这部分我们的代码如下:
代码如下,其余的实现我们在蓝图中继承覆盖。
void URoadManager:: tickTimeRoadCreate (){
AMyRoad * tempOut ;
if ( roadQueue .Peek ( tempOut)){
float distance = ( Owner-> GetActorLocation () - tempOut ->GetActorLocation ()). Size();