Romario76 Posted January 21, 2022 Share Posted January 21, 2022 Привет всем, кто-нибудь может помочь с конвертацией скрипта из unity в unigine, или какая инфа может помочь разобраться, учусь на программирование C# для unity, но для меня пока все равно темный лес, чисто на наиве выезжаю, а так хочется простой интерактив хотя-бы с включением света запилить. Видел в документации пример скрипта юнити и юниджайн, интуитивно понимаю, понятно, заглавие поменять, в юниджайн world trigger я так понимаю использовать, а дальше боюсь пока не смогу разобраться, нужен какой-то пример, как это работает. Внизу пару рендеров, ну грех незаинтерактивить такой интерьерчик. Вот например скрипт unity по вкл/выкл. из программы обучения. using System.Collections; using System.Collections.Generic; using UnityEngine; public class Switch_Light : MonoBehaviour { public Light PointL; public Light SpotL; bool InTrigger = false; void OnTriggerEnter(Collider Col) { InTrigger = true; } void OnTriggerExit(Collider Col) { InTrigger = false; } void Update() { if (Input.GetKeyDown(KeyCode.E) && (InTrigger == true)) { if (SpotL.enabled == true) { PointL.enabled= false; SpotL.enabled = false; } else { PointL.enabled= true; SpotL.enabled = true; } } } } Link to comment
karpych11 Posted January 21, 2022 Share Posted January 21, 2022 Привет. В качестве триггера можно использовать WorldTrigger. Его можно создать в редакторе через Create->Logic->World Trigger. Просто размещаем его в нужной области и задаем нужный размер. С помощью AddEnterCallback и AddLeaveCallback настраиваем функции, которые будут вызваны при входе в триггер и выходе из него. В этих функциях также меняем значение inTrigger. А дальше логика похожа. Весь код есть в прикрепленной компоненте. В поле Trigger нужно назначить созданный WorldTrigger, а в Nodes добавить массив объектов для включения / выключения. SwitchLight.cs 1 Link to comment
Recommended Posts