我正在尝试在Visual Studio中运行简单的Unity脚本(它作为我的对象的一个组件附加)。这是代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.AI;
public class BlackPawnParticleSystem : MonoBehaviour {
// Use this for initialization
void Start () {
ParticleSystem ps = GetComponent<ParticleSystem);
var em = ps.emission;
em.enabled = true;
em.SetBursts(
new ParticleSystem.Burst[]{
new ParticleSystem.Burst(2.0f, 100),
new ParticleSystem.Burst(4.0f, 100)
});
}
// Update is called once per frame
void Update () {
}
}
问题是,当我运行它时,我收到一个错误:“找不到命名空间或数据类型NavMeshAgent”。我已经读过简单的UnityEngine导入可能存在问题。所以我用using UnityEngine.AI
替换了它。
但像ParticleSystem和MonoBehavior这样的所有类都加下划线并显示相同的“找不到命名空间”错误,就像它们不在此命名空间中一样。那么如何定义命名空间导入以正确运行代码呢?
更新:完整错误消息
D:\userdata\Documents\Scene1\Assets\RPG Character Animation Pack\Code\RPGCharacterControllerFREE.cs(21,10,21,22): error CS0246: Can not find namespace or data type NavMeshAgent
答案 0 :(得分:1)
不要删除UnityEngine
导入,只需在下一行添加UnityEngine.AI
导入。
using UnityEngine;
using UnityEngine.AI;
您必须将此导入添加到提供错误的实际文件中,因此在这种情况下,您需要转到RPGCharacterControllerFREE.cs
并将using UnityEngine.AI;
添加到该文件。