setActive()
时间: 2024-09-30 12:00:47 浏览: 25
Unity实现Flappy Bird游戏开发实战
`SetActive()`是Unity中的一个Component API方法,主要用于管理GameObject(游戏物体)的可见性和启用状态。当`active`属性设为`true`时,Component会处于活动状态并参与到当前帧的游戏逻辑计算和渲染中;如果设置为`false`,则表示组件暂时不会参与这两个过程,游戏物体及其关联的组件将会被隐藏或暂停其功能。
例如,在一个场景中,你可以有一个主角角色,当玩家靠近时,你可以通过以下方式让角色变得活跃:
```csharp
public class PlayerController : MonoBehaviour
{
public GameObject playerModel;
void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Player"))
{
playerModel.SetActive(true);
}
}
void OnTriggerExit(Collider other)
{
if (other.CompareTag("Player"))
{
playerModel.SetActive(false);
}
}
}
```
在这里,`OnTriggerEnter()`事件会在碰撞发生时激活模型,而`OnTriggerExit()`事件则在碰撞结束时关闭模型,使其再次隐身。
阅读全文