C# 检查渲染器是否在Unity3d中从特定摄影机可见
以前在Unity中有一种方法,但现在没有了。这是我的密码:C# 检查渲染器是否在Unity3d中从特定摄影机可见,c#,unity3d,camera,renderer,C#,Unity3d,Camera,Renderer,以前在Unity中有一种方法,但现在没有了。这是我的密码: using UnityEngine; public class CheckPerspective : MonoBehaviour { Renderer rend; void Start() { rend = GetComponent<Renderer>(); } void FixedUpdate() { if (rend.isVisible
using UnityEngine;
public class CheckPerspective : MonoBehaviour
{
Renderer rend;
void Start()
{
rend = GetComponent<Renderer>();
}
void FixedUpdate()
{
if (rend.isVisible)
{
print("hi");
}
}
}
使用UnityEngine;
公共类检查视角:单一行为
{
渲染器渲染;
void Start()
{
rend=GetComponent();
}
void FixedUpdate()
{
如果(格式副本可见)
{
打印(“hi”);
}
}
}
这段代码在我查看对象时打印“hi”,但即使我从编辑器摄影机查看对象,也会发生这种情况
我想使用类似“isVisibleFrom”的东西来避免这种情况发生。还有什么我可以使用或做的吗?你可以使用这个扩展方法。@AliKanat我试过了。它说“'Renderer'不包含'isVisibleFrom'的定义…”@Qedized您需要在项目中使用该页面上的代码为extension@Qedized因此,将
C#-renderExtensions.cs
中的代码复制到项目中名为renderExtensions.cs
的脚本中,然后该函数将对您可用。您需要的所有代码都在该页面上。@Qedized没问题,我建议您在unity中查找扩展方法,它们非常有用!而且可以让你的生活轻松100倍,这样你就可以一次又一次地重做同样的事情!