Unity3d 如何解决这些错误
我正在开发关于Unity的二维游戏。但是我有一些错误。我不知道如何解决这些问题。我是一个新手,不喜欢某些链接。也许我正在创建检查点、繁殖点、死亡地带,这就是为什么会出现错误 PlayerRespawn.js-Unity3d 如何解决这些错误,unity3d,unityscript,runtimeexception,Unity3d,Unityscript,Runtimeexception,我正在开发关于Unity的二维游戏。但是我有一些错误。我不知道如何解决这些问题。我是一个新手,不喜欢某些链接。也许我正在创建检查点、繁殖点、死亡地带,这就是为什么会出现错误 PlayerRespawn.js- var Player : GameObject; var spawnPoint: Transform; function OnTriggerEnter(other : Collider) { Destroy(other.gameObject); var P: GameObject = I
var Player : GameObject;
var spawnPoint: Transform;
function OnTriggerEnter(other : Collider) {
Destroy(other.gameObject);
var P: GameObject = Instantiate(Player,spawnPoint.position,Quaternion.identity);
var sf=Camera.main.GetComponent(SmoothFollow);
sf.target=P.transform;
}
SmoothFollow.js-
var target : Transform;
// The distance in the x-z plane to the target
var distance = 10.0;
// the height we want the camera to be above the target
var height = 5.0;
// How much we
var heightDamping = 2.0;
var rotationDamping = 3.0;
// Place the script in the Camera-Control group in the component menu
@script AddComponentMenu("Camera-Control/Smooth Follow")
function LateUpdate () {
// Early out if we don't have a target
if (!target)
return;
// Calculate the current rotation angles
var wantedRotationAngle = target.eulerAngles.y;
var wantedHeight = target.position.y + height;
var currentRotationAngle = transform.eulerAngles.y;
var currentHeight = transform.position.y;
// Damp the rotation around the y-axis
currentRotationAngle = Mathf.LerpAngle (currentRotationAngle, wantedRotationAngle, rotationDamping * Time.deltaTime);
// Damp the height
currentHeight = Mathf.Lerp (currentHeight, wantedHeight, heightDamping * Time.deltaTime);
// Convert the angle into a rotation
var currentRotation = Quaternion.Euler (0, currentRotationAngle, 0);
// Set the position of the camera on the x-z plane to:
// distance meters behind the target
transform.position = target.position;
transform.position -= currentRotation * Vector3.forward * distance;
// Set the height of the camera
transform.position.y = currentHeight;
// Always look at the target
transform.LookAt (target);
}
我得到的错误是-
NullReferenceException
PlayerRespawn.OnTriggerEnter (UnityEngine.Collider other) (at Assets/scripts/PlayerRespawn.js:8)
在这方面:
var sf=Camera.main.GetComponentSmoothFollow
检查是否已将SmoothFollow组件添加到主摄像头。可能问题是,在此语句之后,var sf为null。可能缺少一些javascript文件,您应该将其添加到资产文件夹。如何知道缺少哪些javascript文件?当我运行项目时,根据PlayerRespawn脚本,我的播放机已死亡,然后创建新播放机,但播放机无法访问smoothfollow脚本。并且出现缺少引用异常我不理解您的评论。你能解释一下吗?实际上,我创建了繁殖点、检查点和死亡地带。当我运行我的项目时,我的角色正在运行并获得繁殖点和检查点。但当我的角色跳过死亡地带时,运行的项目将获得暂停,而角色不运行意味着保持不变。并在Assets/MyScripts/PlayerRespawn.js:8处出现以下错误,如NullReferenceException PlayerRespawn.OnTriggerEnter UnityEngine.Collider other,它有PlayerRespawn.js脚本和smoothfollow.js。