【发布时间】:2017-10-27 14:13:46
【问题描述】:
所以我在搅拌机中创建了一个 turrent 模型并导入到统一中,一切看起来都很好我得到了一个小旋转脚本,用于我的中心场景并且旋转效果很好
现在进入代码尝试旋转枪管以朝向敌人看起来不太好
这里有一个简短的游戏视频来演示这个问题
炮塔的枪管面对的位置与敌人完全不同
private void Update(){
FlameForgedTime.UpdateTime ();
if (isInGame) {
RegenerateHitpoint ();
//Look for enemy
if (FlameForgedTime.Time - lastAttack > StatsHelper.Instance.GetStatValue (Stat.Speed)) {
Collider[] col = Physics.OverlapSphere(transform.position,StatsHelper.Instance.GetStatValue (Stat.Range),LayerMask.GetMask("Enemy"));
if (col.Length != 0) {
//find closest enemy
int closestIndex = 0;
float dist = Vector3.SqrMagnitude (col [closestIndex].transform.position - transform.position);
for (int i = 1; i < col.Length; i++) {
float newDistance = Vector3.SqrMagnitude (col [i].transform.position - transform.position);
if (newDistance < dist) {
dist = newDistance;
closestIndex = i;
}
}
//shoot enemy
//Rotate turrent to look at enemy GameObject.FindGameObjectWithTag("Player").transform.LookAt(col[closestIndex].transform);
ShootEnemy(col[closestIndex].transform);
lastAttack = Time.time;
}
}
}
}
所以在我的 turrent(父游戏对象)上,我有标签“Player”,因为 turrent 已加载到预加载器场景中,并且公共 GameObject 字段无法访问
由于某种原因,Y 是炮塔旋转的轴
无论如何,我找到离塔最近的敌人,然后做一个 LookAt 试图让炮塔看着敌人,然后向敌人射击,但是正如你在视频中看到的那样,这不能正常工作
【问题讨论】:
-
这里有一个简短的游戏视频来演示这个问题”视频在哪里?
-
有一个链接显示“演示”就是视频
-
当我点击链接时它不起作用。它现在正在工作。
标签: c# unity3d rotation blender