Я пытаюсь активировать игровые объекты на основе камеры как коллайдер и коллайдер на триггере. Это простой скрипт, который я написал для этого. Это прекрасно работает, но gameObjects по умолчанию активированы, и я должен деактивировать их, выполнив вход / выход один раз.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class reveal : MonoBehaviour
{
public GameObject Stand;
/// <summary>
/// OnTriggerEnter is called when the Collider other enters the trigger.
/// </summary>
/// <param name="other">The other Collider involved in this collision.</param>
void OnTriggerEnter(Collider other)
{
Stand.SetActive(true);
}
void OnTriggerExit(Collider other)
{
Stand.SetActive(false);
}
}
Чтобы исправить это, я изменил скрипт, чтобы деактивировать gameObject до запуска сцены и здесь проблема в том, что взаимодействие триггер / коллайдер больше не работает. Я думаю, что фрагмент кода, который я добавил, просто деактивировал объекты навсегда.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class reveal : MonoBehaviour
{
public GameObject Stand;
// Start is called before the first frame update
void Start()
{
Stand = GameObject.Find("Stand");
Stand.gameObject.SetActive(false);
}
//public GameObject Confrontation;
/// <summary>
/// OnTriggerEnter is called when the Collider other enters the trigger.
/// </summary>
/// <param name="other">The other Collider involved in this collision.</param>
void OnTriggerEnter(Collider other)
{
Stand.SetActive(true);
}
void OnTriggerExit(Collider other)
{
Stand.SetActive(false);
}
}
Как правильно реализовать это ?? Любые идеи?