首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >坦克炮管旋转

坦克炮管旋转
EN

Stack Overflow用户
提问于 2020-04-30 22:16:19
回答 1查看 268关注 0票数 2

你好,我正在制作一个关于坦克的统一游戏,目前我正在制作一个关于坦克炮塔的脚本,我遇到了一个坦克枪的问题。当我旋转塔架时,枪仍然停留在同一位置,朝向同一方向

代码语言:javascript
复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TankManager: MonoBehaviour
{
    public GameObject turret;
    public GameObject gun;
    float mouseX=0;
    float mouseY=-90;
    public float moveSpeed;
    private void FixedUpdate()
    {
        MoveTower();
    }
    void MoveTower()
    {
        mouseX += Input.GetAxis("Mouse X");
        mouseY += Input.GetAxis("Mouse Y")*-1;
        turret.transform.rotation = Quaternion.RotateTowards(turret.transform.rotation, Quaternion.Euler(new Vector4(-90, mouseX, -180)), moveSpeed);
        gun.transform.rotation = Quaternion.RotateTowards(gun.transform.rotation, Quaternion.Euler(new Vector3(mouseY, 0, turret.transform.rotation.z)), moveSpeed);

    }
}

希望你能帮助我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-30 23:17:21

嗯,如果我在没有任何其他精度的情况下猜测问题,你应该测试枪的localRotation

代码语言:javascript
复制
gun.transform.localrotation = .....

旋转是在世界空间,局部旋转是为了旋转炮塔相对于炮塔

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61525484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档