Jump to content
Qbik

Моделирование в Maya

  

93 members have voted

  1. 1. Нужна ли отдельная тема "Анимирование в Maya"?

    • Да
      72
    • Нет
      10
    • Затрудняюсь ответить
      11


Recommended Posts

ZVUKARb    3

Всё что связано с Autodesk Maya обсуждаем здесь

========================================================

RWNjiOt.png

 

(составлено 

break):

В: Где скачать обновления Майи?
О: На оф. сайте Autodesk: http://usa.autodesk.com/adsk/servlet/ps/dl/index?siteID=123112&id=2334435&linkID=9242259
----
В: Где взять плагины для работы со Сталкер-форматами?
О: Официальные для ТЧ - здесь: http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=437
Официальные для ЧН/ЗП - здесь: http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=436
Плагин bardak'а здесь: http://stalkerin.gameru.net/modules.php?name=Downloads&d_op=viewtheoned&lid=454
Обновляемые плагины для последних версий Maya лежат (2014) здесь.
----
В: Как установить плагины?
О: Официальные:
1) Скопировать xrayMaya_export.dll и xrayMaya_material.dll в $MAYA/bin/plug-ins
2) Скопировать BugTrap.dll и xray_path.ltx в $MAYA/bin
Бардаковские:
0) Смотри readme
----
В: Чем отличаются "официальные" плагины от плагина бардака?
О: Официальные плагины разработаны GSC. Могут экспортировать геометрию, скелетную анимацию (.skl) и
анимацию камеры (.anm). Импортера нет. Есть сборки до Maya 2010 включительно, но только под win32.
В комплекте с ними идет набор MEL-скриптов:
1) AEXRayMtlTemplate.mel создает дополнительные контролы для ноды XRayMtl в редакторе атрибутов.
Без него вы не увидите свитка hardware texturing и назначенная в color текстура останется "размытой".
2) exportXRayCameramоtionAdvance.mel - множественный экспорт анимации камеры (.anm)
3) exportXRayObjectAdvance.mel - множественный экспорт статических объектов (.object)
4) exportXRaySkinMotionAdvance.mel - массовый экспорт скелетной анимации (.skl)
5) exportXRaySkinObjectAdvance.mel - массовый экспорт скелетных объектов (.object)
6) XRayShaders.mel - менюшка для назначения engine/compiler shader'ов и game material'ов.
Часть этих скриптов вызывает функции пысовского экспортера и бесполезна для бардаковского плага.
 
Плагин бардака поддерживает импорт .ogf, .dm, .object, .omf, .skl, .skls и экспорт .object, .skl.
Экспортера .anm нет. Сборки под Maya 8.5-2014, включая x64 версии. Совместим с официальными плагинами
и XRay-материалом. Исходный код полностью открыт: https://bitbucket.org/stalker/xray_re-tools/src
(Квалифицированные кодеры - давайте конпелировать в месте!)
При всех достоинствах бардаковского плагина, имеются и недоработки:
1) нерешенная проблема со сглаживанием .object'ов формата ЗП
2) отсутствие экспорта анимации камеры в формат .anm
3) невозможно экспортировать клипы из TraX Editor'а
----
В: Я максист, хде xform в Майе?
О: Modify->freeze transforms, reset transforms

xr_startup_scene_init.mel
Устанавливает рабочие единицы и плоскости отсечки под Сталкера.

global proc xr_startup_scene_init() {
///
// Установка рабочих единиц
//
currentUnit -linear "meter" -time "ntsc";
///
// Установка плоскостей отсечки
//
viewClipPlane -nearClipPlane 0.01 -farClipPlane 1000 perspShape;
viewClipPlane -nearClipPlane 0.01 -farClipPlane 1000 topShape;
viewClipPlane -nearClipPlane 0.01 -farClipPlane 1000 frontShape;
viewClipPlane -nearClipPlane 0.01 -farClipPlane 1000 sideShape;print "XRay settings: initialized\n";xr_startup_plugin_loader();
}
 

xr_startup_plugin_loader.mel
Загружает и добавляет в автозагрузку xrayMayaTools.mll. Если версия Maya <= 2010, то дополнительно
пытается загрузить и убрать из автозагрузки xrayMaya_export.mll, а также выгрузить и убрать из
автозагрузки xrayMaya_material.mll (как рекомендовал bardak).


global proc xr_startup_plugin_loader() {
string $xray_maya_tools_path = `getenv MAYA_LOCATION`
         + "/bin/plug-ins/xrayMayaTools.mll";
string $xray_maya_material_path = `getenv MAYA_LOCATION`
         + "/bin/plug-ins/xrayMaya_material.mll";
string $xray_maya_export_path = `getenv MAYA_LOCATION`
         + "/bin/plug-ins/xrayMaya_export.mll";
///
// XRay Maya tools
//
if (!(`filetest -s $xray_maya_tools_path`)) {
  print "xrayMayaTools: plug-in not found\n";
} else if (`pluginInfo -q -loaded xrayMayaTools`) {
  print "xrayMayaTools: already loaded\n";
} else {
  loadPlugin xrayMayaTools;
  pluginInfo -e -autoload true xrayMayaTools;
  print ((`pluginInfo -q -loaded xrayMayaTools`)
    ? "xrayMayaTools: loaded\n"
    : "xrayMayaTools: not loaded\n");
}
///
// Официальные плагины
//
if (`about -apiVersion` <= 201000) {
  ///
  // Принудительная выгрузка material-плагина во избежание конфликта с xrayMayaTools
  //
  if (!(`filetest -s $xray_maya_material_path`)) {
   print "xrayMaya_material: plug-in not found, it's OK\n";
  } else if (`pluginInfo -q -loaded xrayMaya_material`) {
   unloadPlugin -force xrayMaya_material;
   pluginInfo -e -autoload false xrayMaya_material;
   print "xrayMaya_material: successfully unloaded\n";
  }
  ///
  // Загрузка экспортера
  //
  if (!(`filetest -s $xray_maya_export_path`)) {
   print "xrayMaya_export: plug-in not found\n";
  } else if (`pluginInfo -q -loaded xrayMaya_export`) {
   print "xrayMaya_export: already loaded\n";
  } else {
   loadPlugin xrayMaya_export;
   // убираем из автозагрузки во избежание конфликта
   pluginInfo -e -autoload false xrayMaya_export;
   print ((`pluginInfo -q -loaded xrayMaya_export`)
     ? "xrayMaya_export: loaded\n"
     : "xrayMaya_export: not loaded\n");
  }
}
print "XRay plug-ins: successfully loaded\n";
}
 

xr_object_export.mel
Переписанный ПЫСовский скрипт для множественного экспорта объектов. Для 2012 и выше.

global proc xr_object_export() {
if (size(`ls -sl`) == 0) {
  confirmDialog -title "Error"
     -message "Nothing selected!"
     -button "OK" -defaultButton "OK"
     -icon "warning";
  error "Nothing selected";
}
$response = `confirmDialog -title "Confirm action"
       -message "Are you sure to export all selected objects?"
       -button "Yes" -button "No" -defaultButton "Yes"
       -cancelButton "No" -dismissString "No"
       -icon "question"`;
if ($response == "Yes") {
  string $exported_objects[] = `ls -sl`;
  print ("Selected: \n");
  print $exported_objects;
  print "\n";
  print ("Export:\n");
  int $i = 0;
  string $export_dir[] = `fileDialog2 -caption "Export selection"
           -fileMode 3
           -okCaption "OK"
           -cancelCaption "Cancel"`;
  if ($export_dir[0] == "") {
   error "Export canceled\n";
  } else if ($export_dir[0] != "Cancel") {
   for ($i; $i < size($exported_objects); $i++) {
    select $exported_objects[$i];
    //polyTriangulate -name $exported_objects;
    string $name = $export_dir[0] + "/" + $exported_objects[$i];
    file -exportSelected -type "X-Ray object" $name;
    print ($name + ".object\n");
   }
  }
  print ("Summary: " + size($exported_objects) + " file(s) exported" + "\n");
  // FIXME: undo
} else if ($response == "No") {
  error "Export canceled\n";
}
}

AEXRayMtlTemplate.mel
О нем вы читали выше.


//AEXRayMtlTemplate.melglobal proc AEXRayMtlTemplate( string $nodeName ) {
AEswatchDisplay $nodeName;
editorTemplate -beginScrollLayout;editorTemplate -beginLayout "Common Material Attributes" -cl off;
  editorTemplate -addControl "color";
  editorTemplate -addControl "transparency";
  editorTemplate -addControl "incandescence";
editorTemplate -endLayout;editorTemplate -beginLayout "Hardware Texturing" -cl off;
AEhardwareTextureTemplate $nodeName
  ("color transparency incandescence");
editorTemplate -endLayout;editorTemplate -beginLayout "X-Ray Material Attributes" -cl off;
  editorTemplate -addControl "xrayDoubleSide";
  editorTemplate -addControl "xrayEngineShader";
  editorTemplate -addControl "xrayCompilerShader";
  editorTemplate -addControl "xrayGameMaterial";
editorTemplate -endLayout;editorTemplate -addExtraControls;
editorTemplate -endScrollLayout;
}
 

Поправленный скрипт Страховида - boolean и деформер полигональной поверхности (http://www.amk-team.ru/forum/index.php?showtopic=5422&p=734386)

global proc strah_deform_n_cut() {string $dfc_window = `window -title "Strahovid" -menuBar true`;menu -label "Edit";
  menuItem -label "Undo" -command "Undo";
  menuItem -label "Redo" -command "Redo";
columnLayout;menu -label "Help" -helpMenu true;
  menuItem -label "Discussion"
    -command "showHelp -absolute \"http:\/\/www.amk-team.ru\/forum\/index.php?showtopic=5422\""
    ;
columnLayout;scrollLayout scrollLayout;
  columnLayout -adjustableColumn true;
   frameLayout -label "Deform & cut tool" -borderStyle "in";
    columnLayout -adjustableColumn true;
     floatSliderGrp -label "Vertex offset X: "
         -field 1 -value 0.1 -min 0 -max 0.5 -step 0.01 X;
     floatSliderGrp -label "Vertex offset Y: "
         -field 1 -value 0.1 -min 0 -max 0.5 -step 0.01 Y;
     floatSliderGrp -label "Vertex offset Z: "
         -field 1 -value 0.1 -min 0 -max 0.5 -step 0.01 Z;
    setParent ..;    columnLayout -adjustableColumn true;
     button -w 174 -h 26 -label "Deform" -command "dfc_deform";
     button -w 174 -h 26 -label "Cut" -command "dfc_cut";
     button -w 174 -h 26 -label "Close" -command ("deleteUI -window " + $dfc_window);
    setParent ..;showWindow $dfc_window;
}//////////////////////////////////////////////////////////////////////////
proc dfc_deform() {
string $list[] = `ls -sl -fl`;
string $item;
float $mX = `floatSliderGrp -q -v X`;
float $mY = `floatSliderGrp -q -v Y`;
float $mZ = `floatSliderGrp -q -v Z`;
for($item in $list) {
  move -r (rand(-$mX,$mX)) (rand(-$mY,$mY)) (rand(-$mZ,$mZ)) $item;
}
}//////////////////////////////////////////////////////////////////////////
proc dfc_cut() {
string $o1[] = `ls -sl`;
string $ob1 = $o1[0];
string $ob2 = $o1[1];
string $o2[] = `duplicate $o1`;
string $o5[] = `duplicate $ob1`;
string $ob3 = $o2[0];
string $ob4 = $o2[1];
polyNormal $ob3;
string $rez1[] = `polyBoolOp -op 3 $ob1 $ob2`;
string $rez2[] = `polyBoolOp -op 3 $ob3 $ob4`;
xform -cp $rez1 $rez2 $o5;
select $o5;
}
 

xr_tools.mel
Меню для вызова вышеуказанных скриптов.



global proc xr_tools() {global string $gMainWindow;
setParent $gMainWindow;menu -l "X-Ray Tools" -p MayaWindow -tearOff true xr_tools;menuItem -label "Apply XRay settings"
   -annotation "Apply XRay settings"
   -command "xr_startup_scene_init"
   xr_startup_scene_init;menuItem -divider true;menuItem -label "Multiple export"
   -subMenu true
   -tearOff true
   ;menuItem -label "Export objects"
   -annotation "Export selected objects"
   -command "xr_object_export"
   xr_object_export;setParent -m ..;//////////////////////////////////////////////////////////////////////////
menuItem -label "XRay material..."
   -subMenu true
   -tearOff true
   ;
menuItem -divider true;////
// Удаление неиспользуемых Shading nodes. Сюда вынесено лишь для удобства.
//
menuItem -label "Delete unused shading nodes"
   -command "MLdeleteUnused"
   MLdeleteUnused;setParent -m ..;///////////////////////////////////////////////////////
menuItem -divider true;menuItem -label "About..."
   -subMenu true
   ;menuItem -label "Discussion"
   -command "showHelp -absolute \"http:\/\/www.amk-team.ru\/forum\/index.php?showtopic=5422\""
   ;   setParent -m ..;
}
 

userSetup.mel
Пользовательские установки. Здесь - подгрузка скриптов.



///
// Инициализация UI
//
evalDeferred -lowestPriority xr_tools;
///
// xr_startup_scene_init.mel выполняется каждый раз при создании новой сцены,
// в т.ч. сразу после загрузки Maya. Раскомментируйте, если нужно.
//
//scriptJob -event NewSceneOpened xr_startup_scene_init;
 

 

http://rusfolder.com/37228626

 

Ссылка на актуальную версию скрипта XrayToolMaya

 

В: Как правильно сообщать об ошибках?
О: 1) Сообщите версию Майи и  используемых плагинов.
2) Подробно опишите свои действия и цель этих действий.
3) Приведите лог из окна вывода (output window) и редактора скриптов (script editor).
4) В тяжелых случаях не помещает выложить сцену.
----
В: Пытаюсь экспортировать скелетную анимацию пысовским плагом, но он выдает ошибку:
XR-Error: Can't export animation with FPS!=30.f
XR-Error: Export failed.
О: В XRay принята частота 30 кадров в секунду. Измените настройки: http://images.gameru.net/image/direct/401a3efaa2.png

 

Edited by vadyan
  • Like 1
  • Полезно 1

Захоти тихо, проси мало, уходи быстро.

 

Заходи не бойся - уходя не плачь

Share this post


Link to post
Share on other sites
 vadyan    66
В 12.10.2017 в 17:58, ptichkin сказал:

Всем привет! Продолжаю переделывать модели оружия в сталкере ТЧ. При экспорте модели в .object формат получаю сообщение об ошибке Error: Can't extract shared UVs for vert 313 on mesh PolySurfaceShape13. PolySurfaceShape13 - это результат компилирования модели в один меш. Что такое vert 313 понятия не имею. Может кто-нибудь объяснить причины вывода таких сообщений о данной разновидности ошибок и подсказать, как их исправить? Заранее признателен за объективный ответ.

Аналогичная ситуация уже была, тыц .

Добавлено  HellRatz,

Запрещено полное цитирование поста (оверквоттинг)
Устное предупреждение, пункт 2.6 правил форума.
Правила цитирования

  • Thanks 1

Share this post


Link to post
Share on other sites
ptichkin    0

Всем снова привет! Заранее извиняюсь за то, что достаю с вопросами. Кто-нибудь может подсказать как перенести анимацию оружия из сталкера ТЧ в hud-модель оружия сталкера ЗП? Я решил прикола ради перенести модель ножа из ЗП в ТЧ, но хочу оставить анимации оружия из ТЧ, т. к. они выглядят более натуральными. Заранее благодарен.

Share this post


Link to post
Share on other sites
ed_rez    12,006

@ptichkin ,

привет!

Дык просто замени модель в редакторе подстановкой новой (с привязкой к кости), а затем в СДК, конвертировать для игры. Таких уроков явно нет в сети, ибо все очень просто.

  • Thanks 1

ed_rez.gif

Share this post


Link to post
Share on other sites
Ghost-2142    242

@ed_rez, это не прокатит. :) Ведь цель - перенести помимо модели ещё и анимации. Тем более из ТЧ в ЗП. Там ведь скелеты рук и оружия идут по отдельности.
@ptichkin, в первую очередь нужно знать, на каких руках сделаны анимации в варианте для ТЧ. Если там руки из оригинального ТЧ, либо КСС+ЧН, то перенести на ЗП без глубоких знаний в анимировании ну никак не получится, т.к. там разные скелеты рук, к тому же в ЗП руки от разных костюмов взаимозаменяемы, что не даёт использовать для данного оружия руки, отличные от остальных по скелету. Придётся прибегнуть к способу аттача двух скелетов друг к другу и снятия анимаций подобно "мокапу", если нет опыта в анимировании, то лучше за это даже не браться.
Если же анимации руках ЗП, то перенести их будет проще, нужно будет разделить скелеты рук и оружия (в данном случае ножа), и экспортировать анимации для них по отдельности. Ну а дальше уже дело за настройкой в СДК.
Стоит отметить, что если на анимациях в ТЧ используются руки ЗП, то, скорее всего, они уже когда-то были перенесены из ЗП в ТЧ, и есть шанс, что можно найти эти же самые анимации в оригинальном виде, то есть под Зов Припяти, тем самым облегчить свои труды.

  • Thanks 1

Изображение погибло, снес. Ссылка на канал остается пока в виде >>>ссылки<<<. HellRatz

Share this post


Link to post
Share on other sites
ed_rez    12,006

@Ghost-2142 ,

а ты пойми вопрос:

16 часов назад, ptichkin сказал:

перенести анимацию оружия из сталкера ТЧ в hud-модель оружия сталкера ЗП?

 

16 часов назад, ptichkin сказал:

перенести модель ножа из ЗП в ТЧ, но хочу оставить анимации оружия из ТЧ

Вот и ответил по последнему. :biggrin:

  • Thanks 1

ed_rez.gif

Share this post


Link to post
Share on other sites
Molphar    84

Доброго времени суток. Существует ли плагин для Майки от Бардака с пофиксеным алгоритмом экспорта групп сглаживания ?

Share this post


Link to post
Share on other sites
Ghost-2142    242
7 часов назад, CuJIbBEP сказал:

не замечал проблем со сглаживанием

А проблемы есть. И заключаются они не только в плагине, но и в СДК игры.
Я провёл немало бессонных ночей за изучением системы экспорта нормалей моделей сталкерским плагином, наблюдая, как ведут себя модели после импорта в майку через OBJ, FBX, игровой формат и последующего экспорта плагином сталкера. И выявилась одна интересная штуковина.
Обычно формат OBJ хранит нормали модели в заблокированном (залоченном) виде. И после попытки экспортировать модель в .object и снова импортировать модель в майку мы увидим просто-напросто слетевшее сглаживание. Но восстановить его достаточно просто, переносом сглаживания с оригинальной модели на модель, побывавшую в формате СДК. Если же мы импортировали в майку модель через FBX, то такой поломки не будет.
Так или иначе, снова экспортировав\импортировав модель, мы обнаружим, что со сглаживанием всё в порядке. Или не совсем...
Иногда моделлеры делают сглаживание на лоу-поли моделях следующим образом:
скрин 1 скрин 2
На картах нормалей же это выглядит так:
скрин 1 скрин 2
И всё бы ничего, если бы не одно НО: как сталкерский плагин, так и СДК, не умеют работать с таким сглаживанием, и как бы мы ни старались, на выходе в игровом формате мы получим следующее: скриншот
Разумеется, после такого оригинальная карта нормалей попросту не подойдёт к модели.
Не знаю, насколько это в тему, но если экспортировать модель скриптами макса, то сглаживание сохранится. Однако оно снова собьётся при прогонке модели через СДК. Замкнутый круг в общем.
Есть как минимум 2 способа исправить ситуацию. Первый, и самый очевидный - сменить модель. Если же это нам не подходит, то придётся попробовать себя в качестве моделлера и "перезапечь" нормали. Но это уже, как говорится, совсем другая история.
Все манипуляции с моделью проводились в майе 2017. На более ранних версиях не тестировалось.

  • Like 1

Изображение погибло, снес. Ссылка на канал остается пока в виде >>>ссылки<<<. HellRatz

Share this post


Link to post
Share on other sites
Molphar    84

В общем разобрался в чем проблема, и вправду не так виноват плагин как сдк. Покопался в коде плагина от Бардака, и выяснил что этот алгоритм сглаживания будет работать верно если острые ребра на модели отсоединить друг от друга(detach component). Тогда подгрузив  экспортированную в *.object модель в майку можно увидеть что сглаживание не сбилось. НО, при импорте в сдк то что мы отсоединяли в майе - обратно слипнется. Поэтому согласен с выше сказанным, замкнутый круг есть. 

8 часов назад, Ghost-2142 сказал:

 Однако оно снова собьётся при прогонке модели через СДК.

Если не ошибаюсь то в максе "особое сглаживание".

Share this post


Link to post
Share on other sites
CuJIbBEP    533

@Molphar на работе пробовал с 15-й майкой. Двухъярусная пирамидка, нижная часть сглаженная, верхняя harden edge...
Закинул в СДК, поменял материал и сохранил объект. Закинул его в майку, ничего не изменилось, сглаживание осталось каким было.
Что-то с этим связанное обсуждалось тут ранее, группы сглаживания слетают то ли при билде, то ли при компиляции.


h-264.jpg

Share this post


Link to post
Share on other sites
Roumonk    0

Всем привет. Морочусь с импортом в MAYA 2018 sp2. Плагины от Бардака запустить не получается. Или до 2018 ещё не дошло обновление скриптов?
@vadyan а это только для экспорта? поставил, но не понял что с ним делать.

Вот ошибка с плагином Бардака: 
// Error: file: D:/Autodesk/Maya2018/scripts/others/pluginWin.mel line 290: Unable to dynamically load : D:/Autodesk/Maya2018/bin/plug-ins/xrayMayaTools.mll
Не найдена указанная процедура.
 // 
// Error: file: D:/Autodesk/Maya2018/scripts/others/pluginWin.mel line 290: Не найдена указанная процедура.
 (xrayMayaTools) // 

 
П.С. кто-то может в кратце на пальцах объяснить, почему каждой версии майки/макса нужен новый плагин? что там за изменения делают автодэски? самое смешное  что недавно только 2016 удалил со спокойной душой :)

Edited by Roumonk

Share this post


Link to post
Share on other sites
Roumonk    0

@Werner, там же по ссылке в разделе Commits вроде обещают пилить под 2018. подожду немного

Share this post


Link to post
Share on other sites
CuJIbBEP    533

@Roumonk, плагины под 17-ю майку косячные, там какой-то бред с материалами обжекта происходит при Separate.
Так что сижу на 16-майке.


h-264.jpg

Share this post


Link to post
Share on other sites
RSFSR    1

Приветствую.

Вылетает майя 2009 при экспорте объекта. А всего то заменил в сдк 0.4 одну текстуру. Вылетает даже если не совершать никаких операций, кроме открытия и экспорта. кто сталкивался с таким? Что делать?

С двумя объектами уже такое.. Но у второго хотя бы есть к чему придраться - осталась initialShadingGrup в материалах и она дает глюк с текстурами.

плагины бардака вроде стоят

Share this post


Link to post
Share on other sites
CuJIbBEP    533

@RSFSR, скинь обжекты, проверю на 2016-й майке...


h-264.jpg

Share this post


Link to post
Share on other sites
 vadyan    66

Плагин для 2018 версии maya - скачать.

 

Сборка основана на следующих репозиториях :

https://github.com/abramcumner/xray_re-tools

https://bitbucket.org/stalker/xray_re-tools

 

Особая благодарность в сборке компиляции плагинов разработчикам RoH.

  • Like 1
  • Полезно 1

Share this post


Link to post
Share on other sites
Zagolski    74

Сделал в майе сглаживание на модели (со скелетом) путем добавления полигонов, но в СДК вылетает при загрузке модели. Там что-то еще нужно делать в майе до экспорта? И на всех моделях так.

Edited by Zagolski

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.


  • Recently Browsing   0 members

    No registered users viewing this page.

AMK-Team.ru

×
×
  • Create New...