C# 发布导入UnityEngine.InputSystem。错误CS0246找不到类型或命名空间
尽管我完全复制了教程的代码,但我无法运行我的代码 这是视频。代码见11:37 我在两三天前安装了unity,所以我怀疑这是一个更新问题(我在另一个帖子上看到有人这样说)C# 发布导入UnityEngine.InputSystem。错误CS0246找不到类型或命名空间,c#,visual-studio,unity3d,C#,Visual Studio,Unity3d,尽管我完全复制了教程的代码,但我无法运行我的代码 这是视频。代码见11:37 我在两三天前安装了unity,所以我怀疑这是一个更新问题(我在另一个帖子上看到有人这样说) 这可能是因为编译器顺序问题;您的controlle类可能在PlayerControls存在之前编译,因此无法访问它。 这是。 检查是否将文件放在Standard Assets文件夹中,因为那里的文件是在所有其他类脚本之前编译的。 您可以阅读更多内容。但是如果我在资产文件夹中创建另一个名为标准资产的文件,并将此文件放在那里,它将
这可能是因为编译器顺序问题;您的
controlle
类可能在PlayerControls
存在之前编译,因此无法访问它。这是。
检查是否将文件放在Standard Assets文件夹中,因为那里的文件是在所有其他类脚本之前编译的。
您可以阅读更多内容。
但是如果我在资产文件夹中创建另一个名为标准资产的文件,并将此文件放在那里,它将在加载之前加载,对吗?我不应该在标准资源中放入带有PlayerControl类的文件吗?那是哪个文件@JentGent@DavidSpira“标准资源”文件夹中的文件基本上是在场景中的所有内容之前编译的。PlayerControl是一个自动生成的类IIRC,因此您无法真正访问它并将其放入文件夹中。您必须将文件移到标准资产文件夹之外的资产文件夹中。它位于资产文件夹内的脚本文件夹中。它从来都不在标准资产文件夹(甚至不存在)中。你认为呢?嗯,不幸的是,我不确定你的问题是什么。该问题没有足够的项目背景;代码本身应该可以很好地工作(我认为),而且它可能与项目有关。
using System.Collections;
using System.Collections.Generic;
using UnityEngine.InputSystem;
using UnityEngine;
public class controle : MonoBehaviour
{
private PlayerControls controls; // the error points at this line, at whatever position the "PlayerControls" string is
private void Awake()
{
controls = new PlayerControls();
controls.Gameplay.Forward.performed += Forward;
}
void Forward()
{
transform.position.z -= 1.1 * f;
}
void OnEnable()
{
controls.Gameplay.Enable();
}
void OnDisable()
{
controls.Gameplay.Disable();
}
}