Unity 3d VR - Скрыть и показать модель при нажатии кнопки контроллера - PullRequest
0 голосов
/ 01 декабря 2018

Я начинаю разработку виртуальной реальности и создаю базовое приложение для виртуальной реальности, в которое я помещаю 2 пользовательских 3d модели в сцену.Пусть первая модель будет «a», а вторая - «b». Я хотел бы показать «a», а затем, когда кто-то нажимает какую-либо клавишу на контроллере oculus, я хотел бы скрыть «a» и показать «b».Как мне это сделать?Я понимаю, что функция keydown / keyup будет использоваться.Я хотел бы знать, как скрыть / внутри модели.

1 Ответ

0 голосов
/ 01 декабря 2018

Чтобы скрыть GameObject, используйте функцию SetActive и передайте true / false, чтобы показать / скрыть его.Это активирует и деактивирует GameObject:

public GameObject modelA;
public GameObject modelB;

void Update()
{
    OVRInput.Update(); 

    if (OVRInput.Get(OVRInput.Button.One))
    {
        //Hide model A
        modelA.SetActive(false);

        //Show model B
        modelB.SetActive(true);
    }
}

Если вы не хотите активировать / деактивировать GameObject, просто включите / отключите компонент MeshRenderer:

public GameObject modelA;
public GameObject modelB;

void Update()
{
    OVRInput.Update(); 

    if (OVRInput.Get(OVRInput.Button.One))
    {
        //Hide model A
        modelA.GetComponent<MeshRenderer>().enabled = false;

        //Show model B
        modelB.GetComponent<MeshRenderer>().enabled = true;
    }
}
...