Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Общие вопросы

Общие вопросы вопросы не попадающие ни в один из доступных разделов

Ответ
 
Опции темы
Старый 12.03.2016, 00:31   #1
daniladiv
AnyKey`щик
 
Регистрация: 24.08.2015
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Вопрос Revert to prefab

Как через скрипт c# сделать revert to prefab (интересует для материалов) выбранного объекта в иерархии проекта (пишу плагин для себя в режиме Editor). Как найти выделенный объект знаю, а как сделать revert to prefab не знаю.
(Offline)
 
Ответить с цитированием
Старый 12.03.2016, 01:51   #2
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Revert to prefab

http://docs.unity3d.com/ScriptRefere...bInstance.html
PrefabUtility.RevertPrefabInstance спасёт отца русской демократии!
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 12.03.2016, 22:15   #3
daniladiv
AnyKey`щик
 
Регистрация: 24.08.2015
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Revert to prefab

я так понимаю что он сбрасывает весь ГО а значит удалятся все скрипты и сбросится позиции всех объектов. А мне бы хотелось сбросить материал выделенного объекта в иерархии. Наверно это разработчики не предусмотрели. Не хочется тыкать каждый объект и сбрасывать у него материал, бывают такие ситуации(видимо криво импортится)
(Offline)
 
Ответить с цитированием
Старый 13.03.2016, 02:10   #4
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: Revert to prefab

В чём проблема отыскать в иерархии конкретный объект и сбросить только его?
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 13.03.2016, 09:34   #5
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Revert to prefab

Сообщение от ABTOMAT Посмотреть сообщение
В чём проблема отыскать в иерархии конкретный объект и сбросить только его?
Наверное потому, что весь объект с иерархией и есть этот префаб.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 13.03.2016, 11:15   #6
seaman
Знающий
 
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений
(для 180 пользователей)
Ответ: Revert to prefab

Материал не дает ревертить,а вот рендерер - пожалуйста.
Используем это: http://docs.unity3d.com/ScriptRefere...efabState.html
Замечаем,что тип параметра - не GameObject, а Object. Попробуем ему подсунуть рендерер:
using UnityEngine;
using UnityEditor;

public class 
RevertMaterial
{
    [
MenuItem("Examples/Attempt to reset to prefab %r")]
    static 
void Reset()
    {
        
Renderer mat = (Selection.activeGameObject as GameObject).GetComponent<Renderer>();
        if (
mat == null)
        {
            
Debug.LogError("Attempt reset to prefab object withot renderer!" Selection.activeGameObject.name);
            return;
        }
        if (
PrefabUtility.ResetToPrefabState(mat)) Debug.Log("Reseted to prefab state successfully!");
        else 
Debug.LogError("Couldnt reset to a prefab state " Selection.activeGameObject.name);
    }

Работает!
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо seaman за это полезное сообщение:
ABTOMAT (13.03.2016), Жека (14.03.2016)
Старый 13.03.2016, 12:47   #7
daniladiv
AnyKey`щик
 
Регистрация: 24.08.2015
Сообщений: 19
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Revert to prefab

seaman спасибо вроде работает)))))
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 03:39.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com