请教各位大神,已知一组坐标数据(每0.2秒一个坐标,保存在Excel表格中)的前提下,
如何在unity中控制物体按照表格中的坐标进行运动?
现在已经在Start中将Excel里的坐标读取到一个二维数组中,
接下来我想的是采用fixedupdate,设定固定时长为0.2秒,
每次更新的时候采用transform.position将物体移动到新的坐标位置,
但是不知道该怎么刷新坐标位置,
我用for循环一样的i++来更新读取二维数组的坐标,
结果好像读不了,估计是我理解的问题,update是不是不能这样循环读取数组?
麻烦大家指点,新人诚心求教,谢谢~
先定义一个int值 比如index=0;
在fixedupdate中执行赋值操作
if(index<数组.length){
transform.position=数组【index】;
}else{
index=0;
}
index++;
最好写个携程方法
在这里面判断是否该位移,该位移到哪,
private void WalkShorestPath(){
if(pathArray.Count == 0){
Debug.LogWarning("最优路径未获得!");
return;
}else{
Debug.LogWarning("人物开始沿路径行走!");
}
//人物朝向下一个点
Vector3 nextPos = (Vector3)pathArray[count];
transform.LookAt(nextPos);
distance = Vector3.Distance(transform.position, nextPos);
//移动到目标点的位置
transform.position = Vector3.MoveTowards(transform.position, nextPos, 0.2f);
if(FloatTools.LessThan(distance,0.1f) && count< pathArray.Count-1){
count++;
}
if(count >= pathArray.Count-1){
arriveGoal = true;
}
}
楼主解决了吗,能提供点思路吗
解决了吗我也想问给点思路