【发布时间】:2021-05-21 22:06:54
【问题描述】:
Unity 中的脚本错误。 C#初学者,我哪里错了?
这是错误:
Assets\Scripts\InteractHelper.cs(44,30): error CS0103: The name 'hitObject' does not exist in the current context
这是我的代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class InteractHelper : MonoBehaviour
{
public Material MaterialInGaze;
private Material _oldMaterial;
private GameObject _objectInFocus;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
var ray = new Ray(Camera.main.transform.position,
Camera.main.transform.forward);
RaycastHit raycastInfo;
if(Physics.Raycast(ray, out raycastInfo))
{
var hitObject = raycastInfo.transform.gameObject;
if (hitObject == _objectInFocus)
return;
var renderer = hitObject.GetComponent<Renderer>();
if (renderer == null)
return;
_oldMaterial = renderer.material;
renderer.material = MaterialInGaze;
_objectInFocus = hitObject;
}
else
{
if (_objectInFocus == null)
return;
var renderer = _objectInFocus.GetComponent<Renderer>();
renderer.material = _oldMaterial;
_objectInFocus = hitObject;
}
}
}
我正在关注一个教程(现在有点过时了),但我的代码与他们的完全匹配。 我只是在学习 C#
谢谢
【问题讨论】:
标签: c# unity3d scripting hololens