Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在Unity中使用transform.localEularAngles_C#_Unity3d - Fatal编程技术网

C# 如何在Unity中使用transform.localEularAngles

C# 如何在Unity中使用transform.localEularAngles,c#,unity3d,C#,Unity3d,你好,我是Unity的新手,我正在尝试制作一个简单的3D第一人称射击游戏。为了做到这一点,我试图让相机跟随鼠标光标。为此,我想使用根据鼠标生成的旋转设置localEularAngles 以下是我的CameraController脚本的代码: using System.Collections; using System.Collections.Generic; using UnityEngine; public class CameraController : MonoBehaviour {

你好,我是Unity的新手,我正在尝试制作一个简单的3D第一人称射击游戏。为了做到这一点,我试图让相机跟随鼠标光标。为此,我想使用根据鼠标生成的旋转设置localEularAngles

以下是我的CameraController脚本的代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CameraController : MonoBehaviour
{
    public float maximumY = 360f;
    public float minimumY = -360f;
    public float maximumX = 60f;
    public float minimumX = -60f;

    public float sensitivityX = 15f;
    public float sensitivityY = 15f;

    public Camera cam;

    float rotationY;
    float rotationX;

    float offset;

    // Start is called before the first frame update
    void Start()
    {
        offset = cam.transform.position.y - transform.position.y;
    }

    // Update is called once per frame
    void Update() {

        rotationY += Input.GetAxis  ("Mouse X") * sensitivityY;
        rotationX += Input.GetAxis  ("Mouse Y") * sensitivityX;

        rotationX = Mathf.Clamp(rotationX, minimumX, maximumX);

        transform.localEularAngles = new Vector3(0, rotationY, 0);

        cam.transform.localEularAngles = new Vector3(-rotationX, rotationY, 0);

        cam.transform.position = new Vector3(cam.transform.position.x, 
        cam.transform.position.y + offset, cam.transform.position.z);
    }
}
这背后的想法来自于此链接的教程:

但是,当尝试编译时,我得到错误:Assets\CameraController.cs(36,31):错误CS1061:“Transform”不包含“localEularAngles”的定义,并且找不到接受“Transform”类型的第一个参数的可访问扩展方法“localEularAngles”(是否缺少using指令或程序集引用?)


错误发生在我使用transform.localEularAngles的两个位置。事实上,我还没有找到以编译方式编写transform.localEularAngles的方法,这让我相信它可能会被弃用,但更可能的是我遗漏了一些基本的东西。

只是一个简单的拼写错误,应该是
localEularAngles

transform.localEulerAngles=新矢量3(0,旋转,0);
cam.transform.localEulerAngles=新矢量3(-rotationX,rotationY,0);
cam.transform.position=新矢量3(cam.transform.position.x,
凸轮变换位置y+偏移,凸轮变换位置z);

是不是
localeulangles
?注意
Euler
中的
e
。花了几个小时在一个该死的拼写错误上!先生,你是我的英雄!我们都去过!我会写一个答案。