Jump to content
Sign in to follow this  
ReDut

Ошибка Makemdl "has Scale Animation"

Recommended Posts

ReDut

В связи с частыми проблемами и вопросами по "Has scale animation", возникающими при конвертации модели из 3DS Макса из версии выше 6-ой в файл *.X с помощью конвертера Panda ,и последующей конвертацией при помощи программы MakeMdl в *.Mdl (где и возникает эта ошибка). Рекомендуется использовать панду из вложения которое идет в посте соавтора этого топика Михаила(Fishbed'a).

Примечание: При установки Этой версии панды необходимо полностью удалить предыдущую версию.

Edited by ReDut

Share this post


Link to post
Share on other sites
Fishbed

вот собсно.

Работает безглючно для МэйкМДЛа в 6,7,8 версиях 3Д макса.

PandaDXExport6.zip

Edited by Fishbed
  • Upvote 1
  • Downvote 1

Share this post


Link to post
Share on other sites
Sperman

а как быть если макс 2008?? скачал панду для 9-ого(не 2009 а просто 9) нормально работает,но СДК компилит только с выключеной анимацией ,со включеной пишет Has scale animation на конкретной детали (фюзеляже)...кстати ссылка не рабочая,файл удалён...

Share this post


Link to post
Share on other sites
Sperman

Эхеееееййййй....... ну обратите же кто нибудь внимание!!!!!

Share this post


Link to post
Share on other sites
bazis

Вот тут - http://www.andytather.co.uk/Panda/directxmax_downloads.aspx - есть все панды.

Но!!! как говорится примите соболезнования.

Я то же начинал с 2008 и у меня возникла точно такая же проблема, что я только не делал. В итоге Redut посоветовал перейти на более раннюю версию мах-са (7-я самая нормальная) и перетащить модель туда но предупредил что это мера 50х50, может, поможет, а может и нет - мне не помогло. Видать и ошибка перетащилась тоже. В итоге готовую модель (без текстур) пришлось делать заново.

Удачи.

 

p.s. вот тут (http://avsim.su/forum/index.php?showtopic=52500) - почитай может что полезного найдете.

Edited by bazis

Share this post


Link to post
Share on other sites
Sperman

Ну что ж не очень то вы меня обрадовали....но буду пробовать доделать дальше! кстати до этого работал в 9ой версии макса..из 2008 в девятку всё сохраняется,да и в более ранние версии тоже только в формате .3ds, может у вас прблемы из за того что вы триальние версии используете?

Share this post


Link to post
Share on other sites
ReDut

К сожалению данная версия плагина не станет ни на 2008-й , ни на 9-й макс. А тот плагин что Вы скачали, не пойдет для экспорта, т.к. создает .Х файл нового формата, в котором невозможно победить ошибку хаз скал при компиляции. Как Вы заметили, да, компильнуть можно, но только без анимации. С анимацией будет неминуемо вылазить Хаз скал.

Что же касается выхода из данной ситуации. Как уже предложил bazis : найти версию не выше 8-й и перегнать туда модель. Я не знаю почему у него не получилось: у меня прекрасно перегнался Ми-8 из 7-го макса в 5-й, и ничего- летаеть :)

2-й вариант, использовать плагин от СДК ФС10. Как мне сказали, теоретически, с его помощью можно создать вполне работоспособный .Х файл. Правда я такие выкрутосов не пытался делать, но, опять же теоретически, должно работать. Там вроде даже когда материалы не по 10-ковски присвоены вылазит окно с предложением экспортить в 9-чном формате.

Share this post


Link to post
Share on other sites
gosha-z
Там вроде даже когда материалы не по 10-ковски присвоены вылазит окно с предложением экспортить в 9-чном формате.

Нет, он просто переименовывает материал.

Share this post


Link to post
Share on other sites
BIGSIZE

У меня эта ошибка возникала на корпусе самолета.Решил эту проблему просто, я сделал анимацию корпуса(например чють приподнял его) и все работало нормально. Сделал в 3dS max 7

Share this post


Link to post
Share on other sites
VLAZ

Ура !!! Наконец-то нашел рабочую "Panda.dle".

Даю ссылку"http://www.rdman.vhost.lt/tmp/game/some/", качайте кому надо.

Share this post


Link to post
Share on other sites
Fishbed

Интересное открытие сделал давеча...

Берем макс 2009, панду под него, конвертим в Х формат, потом мейкмдлом в *.МДЛ - все работает, скейл анимейшна в ошибках мейкМДЛанет, хотя настройки анимации в панде включены.

Если не я один такой левый и нет никаких подводных камней, то можно сказать, что 2009 макс пригоден для симомоделирования.

Edited by Fishbed

Share this post


Link to post
Share on other sites
Fishbed

Хм... А вот тут начинается интересная часть.... "Для извращенцев" называется. Не знаю, может быть кому-нибудь пригодится.

 

Итак, туториал, как заставить работать несовместимые с мейкМДЛом панды.

Введение

Скачав под 2009 макс панду и запустив экспорт модели, Вы увидите как всегда окна настройки параметров Панды. Часть из этих параметров перекочевала, но суть особо не изменилась.

В данном случае нас интересует вкладка про анимацию. В панде под 2009 макс она выкглядит вот так:

post-3025-1231786560_thumb.jpg

Как видно из скрина, пункт КЕЙ СИКВЕНС (подчеркнут) не активен. С такими параметрами наша модель беспрепятственно конвертнется мейкМДЛом в *.МДЛ файл, но анимации в симуляторе, увы, не будет.

 

Переместив настройки этой вкладки панды так, как показно на скрине

post-3025-1231786897_thumb.jpg

мы столкнемся с проблемой конвертации модели в мдл формат. Ошибка будет "хэз скейл анимэйшн".

Решил я посмотреть сам "Х" файл, на предмет того, где же этот скейл анимейшн там сидит. Итак, пошли дальше.

 

Процесс ликвидации скейл анимейшн в Х файле

Открыв Х файл, созданный с помощью панды, в простом блокноте, мы увидим упорядоченный набор цифр и слов. Особо не передтруждаясь, можно найти, где в этом файле идет описание геометрии модели ( теги "mesh, meshnormals, meshmaterial" итд), а где идет анимация (теги "Animation _имя детали_", "Animation key" и тд).

Остановимся на анимации. Спускаемся в блокноте до строчки (1 на скрине). По моему разумению - это начало раздела, посвященного анимации всей модели.

Опускаем взгяд чуть ниже и видим..... видим анимацию фюзеляжа :):):) (есесно, ее у меня в модели нет)

post-3025-1231787592_thumb.jpg

Если прокрутить чуть дальше, то вы увидите 3 расположенных друг под другом столбика, начинающихся с "AnimationKey {".

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

Удалите средний столбик и вы избавитесь от "хэз скейл анимейшн" фюзеляжа. Но можно пойти дальше: т.к. анимации детали "Fuselage" у нас нет вообще никакой, то все три столбика, посвященные этой анимации можно снести. Тег AnimationSet Anim-1 { нужно оставить, а то откуда мейкМДЛ и сим узнают, где у нас пишется анимация.

Удалив три столбика, мы увиди следующие три столбика для следующей детали. У меня она тоже статичная. Поэтому я так же снес эти три столбика.

А вот далее у меня идет анимация самого закрылка, который нужен.

продолжение следует....

Edited by Fishbed

Share this post


Link to post
Share on other sites
Fishbed

продолжение....

 

На картинке видим конец столбика 1 (цифры меняются, значит этот параметр анимируется) и начало столбика 2 (где цифры постоянны)... Вот это и есть анимация масштаба: ее нету (кадры слева меняются, а цифры значений нет), но ссылка на то, что ее нету присутсвтует. Видимо это смущает мейкмдл.

post-3025-1231789189_thumb.jpg

Берем и удаляем средний столбик(2).

Закрываем файл, предварительно сохранив. Запускаем мейк-мдл и .... вуа-ля. Ошибок нет. А что в симе ? Идем в сим...

И видим, что все прекрасно работает:

post-3025-1231789195_thumb.jpgpost-3025-1231789198_thumb.jpg

 

продолжение следует....

Edited by Fishbed

Share this post


Link to post
Share on other sites
Fishbed

продолжение и окончание...

 

Собсно на этом можно закончить мой туториал. В конце прилагаю архивчик с файлами: модель в 2009 максе, два Х файла: правленный и неправленный, и *.МДЛ файл.

 

всем спасибо за внимание и успешного моделирования :)

Test_panda.zip

Edited by Fishbed

Share this post


Link to post
Share on other sites
bazis
:)  Не верится! Неужели эта ошибка побеждена?

Share this post


Link to post
Share on other sites
ReDut
:) Не верится! Неужели эта ошибка побеждена?

Ну не совем... Фактически-да, побеждена. Но вот практически эти все выкрутосы в полевых условиях использовать очень затруднитель. Модель состоит из огромного количества частей. В некоторых моделях их более 500. И у каждой удалять этот столбик... сложновато. Да и во время разработки пробный экспорт приходится делать большое количества раз, для избавления от косяков... И каждый раз убирать эти столбцы никакого терпения не хватит.

Edited by ReDut

Share this post


Link to post
Share on other sites
Flogger

Артём, а координаты вертексов в каких единицах измерения идут?

Share this post


Link to post
Share on other sites
ReDut
Артём, а координаты вертексов в каких единицах измерения идут?

В .Х файлах вообще понятия не имею в чем измеряются. В Максе соответсвенно, что выставленно в настройках так и считается, относительно 0.0.0 координат.

Смею предположить что в .Х формате своя система исчислений, т.к. то что там написано на метры(а в настройках Макса именно метры должны стоять) не похоже.

Edited by ReDut

Share this post


Link to post
Share on other sites
DUST

короче написал тут маленькую обработку которая вычищает из Х файла среднюю секцию

можете конечно смеяться- но надо 1С- любую конфу

большой файл долго перебирает :-( 4 минуты- 6 мег файл

 

вот сам код- может кто повторит и напишет простенький ЕХЕ файлик

 

//*******************************************

перем кат;

перем ф;

Процедура Сформировать()

Хфайл=СоздатьОбъект("текст");

Хфайл1=СоздатьОбъект("текст");

Хфайл.открыть(кат+"\"+ф);

колстр=Хфайл.количествоСтрок();

счетчик=0;

для а=1 по колстр цикл

стр=Хфайл.получитьстроку(а);

если найти(стр," AnimationKey")=0 тогда // здесь обязательно 2 пробела перед искомым словом

если (счетчик<>2) тогда//еслиэто не секция 2

Хфайл1.Добавитьстроку(стр);

конецЕсли;

иначе

если счетчик=0 тогда

Хфайл1.Добавитьстроку(стр);

счетчик=1;

ИначеЕсли счетчик=1 тогда

счетчик=2;

ИначеЕсли счетчик=2 тогда

Хфайл1.Добавитьстроку(стр);

счетчик=0;

конецЕсли;

конецесли;

конецЦикла;

 

Хфайл1.Записать(кат+ф+"_");

КонецПроцедуры

 

 

 

здесь кат- путь каталога

ф- собственно сам файл

 

после окончания очистки получится рядом с исходным файлик с подстрочником 62.Х -> 62.X_

_________.zip

Edited by DUST

Share this post


Link to post
Share on other sites
DUST

разобрался.. короче исходный Х файл удаляете а новый переименовываете в Х

иначе тупой мейкмдл не понимает другого расширения файла (че взять с убогого майкрософта)

Edited by DUST

Share this post


Link to post
Share on other sites
Pitot

А вот и отдельный EXE-шник. Писал на VS C# так что нужен framework 2.0

прога просто заменяет старый файл. (не создает новый)

test2.zip

Share this post


Link to post
Share on other sites
Kirill Konovalov

Сегодня проверю :D . Если все нормально это будет просто замечательно :joystick:

 

Проверил. :) не хочет работать :joystick: Программа долго висела, что-то делала и потом закрылась с переполнением памяти. У меня 2 гига + 4 своп, ей сколько нужно?Инструкции какие-нибудь последуют?

Edited by Kirill Konovalov

Share this post


Link to post
Share on other sites
Fishbed
А вот и отдельный EXE-шник. Писал на VS C# так что нужен framework 2.0

прога просто заменяет старый файл. (не создает новый)

 

вроде работает ( с простенькими файлами - сложные не пробовал). Благодарствую за труд :joystick:

Вроде общими усилиями победили -))

Edited by Fishbed

Share this post


Link to post
Share on other sites
Kirill Konovalov

Да, простенький файл она обрабатывает. Но я попытался сконвертить практический готовый самолет(внешку, не ВК) она думала около 10 минут и закрылась. :( Буду пробовать дальше. Но в любом случае- это громадный шаг вперед. Спасибо.

Edited by Kirill Konovalov

Share this post


Link to post
Share on other sites
Pitot

Все, ошибку исправил. Пробовал файл размером 116 мб, обработал минут за 35-40,

test2.zip

Edited by Pitot

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...