Pull to refresh

Comments 4

Картина Кузьмы Петрова-Водкина: Купание педального коня.

 ведь их, очевидно, можно связываться по FName-именам инстансов.

здесь опечатка: связывать

Спасибо, поправлю.

Просьба комментаторам: давайте чтобы замечания по редакторскими правками не мешались с обсуждением наполнения публикации - пишите правки в личку, буду исправлять.

Ещё раз спасибо за то что заметили опечатку)

К сожалению принты так и не только так весьма часто ломаются :(

Обычно чиню подобное следующими способами:

Первый самый простой:

  1. Полностью вырезаю или трансинчу поломанные компоненты

  2. Пересохраняю всю иерархию макаронных наследников, что бы серриализовать все без поломанного компонента

  3. Возвращаю все как было и надеюсь, что починится

Второй вариант - более сложный, может помочь если первый вариант не сработал но текущая ситуация и то как должно быть абсолютно понятно, что не всегда к сожалению так. Можно написать код, который сделает нужные манипуляции с компонентом блюпринтового класса или с самим классом, это работает если надо менять указатели, пересоздавать компоненты или менять флаги. Если таким образом получается получить желанную картину - всю иерархию сохраняем снова. Выключаем код, ребутаем эдитор и смотрим починилось или нет.

Третий вариант - самый душный: воссоздавать вручную и заменять всю макаронную иерархию наследования. Такое может помочь, если в уровнях есть куча поломанных акторов, потому что есть вероятность (и порой так оно и есть) что они не корректно сериализованы в пекеджах уровней. Порядок действий простой:

  1. Создаешь новые блюпринтовые классы

  2. Пишешь конвертер из поломанного инстанса в новый

  3. Пишешь код который проходится по всем уровням, заменяет всех акторов (и ссылки на них) и все сейвит

  4. Запускаешь, проверяешь, радуешься

Не уверен что третий вариант валиден в текущей ситуации, но помогал когда например блюпринтовый класс помнил о своих удаленных функциях и пытался их вызывать, так как они были в каком то графе, но по факту их не было уже. (Такое было на 4.16 вроде как). И недавно буквально на одном оч древнем проекте на 4.24 поломалась пачка акторов, которые стояли на уровне - если кликаешь на конкретный компонент или серриализуешь актора в текст, например что бы запихать в буффер - краш. Точную причину тогда выяснить так и не удалось, но проблема исправил 3-м способом.

Sign up to leave a comment.

Articles