Программно сделать ссылку на модель в префабе

Программирование на Юнити.

Программно сделать ссылку на модель в префабе

Сообщение Zoox86 29 июн 2021, 22:25

Подскажите как сделать так, чтобы была прямая ссылка на 3д-модель в префабе. Вручную это можно сделать так: перетаскиваем .fbx файл, к примеру на GameObject. И тогда при изменении файла, в префабе тоже будут происходить изменения. Как сделать то-же самое программно?
В интернете совсем ничего не нашел, может не так искал...

Пытаюсь сделать так, но вылазит ошибка Setting the parent of a transform which resides in a Prefab Asset is disabled to prevent data corruption

Синтаксис:
Используется csharp
    main_game_object = new GameObject( character_name + PREFAB_SUFFIX );

    t_pose_game_object = (GameObject)AssetDatabase.LoadAssetAtPath( fbx_path, typeof(GameObject) );

    t_pose_game_object.transform.SetParent( main_game_object.transform );
Zoox86
UNец
 
Сообщения: 3
Зарегистрирован: 29 июн 2021, 22:18

Re: Программно сделать ссылку на модель в префабе

Сообщение 1max1 29 июн 2021, 23:11

Пример изменения префаба кодом https://docs.unity3d.com/ScriptReferenc ... tents.html
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Программно сделать ссылку на модель в префабе

Сообщение Zoox86 30 июн 2021, 01:35

1max1 писал(а):Пример изменения префаба кодом https://docs.unity3d.com/ScriptReferenc ... tents.html


Вопрос был совсем не в этом но спасибо за попытку.
Я знаю как изменять префаб и добавлять туда объекты и компоненты, но не могу найти как вставить прямую ссылку на ассет без инстанцирования. В иерархии такие объекты помечаются голубым цветом а не серым
У вас нет доступа для просмотра вложений в этом сообщении.
Zoox86
UNец
 
Сообщения: 3
Зарегистрирован: 29 июн 2021, 22:18

Re: Программно сделать ссылку на модель в префабе

Сообщение 1max1 30 июн 2021, 02:10

Попробуй сначала создать префабный инстанс, а потом его запарентить https://docs.unity3d.com/ScriptReferenc ... refab.html
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Программно сделать ссылку на модель в префабе

Сообщение Zoox86 30 июн 2021, 11:06

1max1 писал(а):Попробуй сначала создать префабный инстанс, а потом его запарентить https://docs.unity3d.com/ScriptReferenc ... refab.html


спасибо большое. Это действительно сработало. Получал ГО так:

Синтаксис:
Используется csharp
t_pose_game_object = PrefabUtility.InstantiatePrefab( AssetDatabase.LoadAssetAtPath( fbx_path, typeof(Object) ) ) as GameObject;
Zoox86
UNец
 
Сообщения: 3
Зарегистрирован: 29 июн 2021, 22:18


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


cron