• Как в Unity указать обьект переменной из другого скрипта в инспекторе из кода?

    Kentavr16
    @Kentavr16
    long cold winter
    уважаемый Киану, хочу пожелать вам удачи в последующих съемках и спасибо за пожелания. По делу - если мне нужно получить ссылку на игровой объект в процедурно генерируемом экземпляре префаба, я создаю публичное поле в родителе(!) который генерирует префаб, и уже при генерации префаба передаю нужные данные. Вот наглядный пример -
    //ссылка на игровой обьект
     public GameObject DigUiPanel;
    **** остальной код***
    //генерирую экземпляр 
     GameObject Layer = Instantiate(LayerPrefab, LayersStartPos.transform.position + layerCreatingDirection * i * offset, Quaternion.identity);
     Layer.transform.rotation = Quaternion.Euler(0, 0, 45);
     DigUI DigUIScript = Layer.GetComponentInChildren<DigUI>();
    //задаю созданному экземпляру ссылку на реальный игровой объект
     DigUIScript.DigUIPanel = DigUiPanel;

    Надеюсь что я правильно понял суть твоего вопроса.
    П.С. - главное помнить что Instantiate возвращает ссылку на новосозданный объект, который ты можешь свободно менять.
    Ответ написан
    1 комментарий