Перейти к контенту

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


  

95 голосов

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

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


Рекомендуемые сообщения

Всё что связано с 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

 

Изменено пользователем vadyan
  • Нравится 1
  • Полезно 1

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

 

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

Ссылка на комментарий

banderos,

У тебя вообще экспорт не происходит, или только после объединения (combine) или разъединения (extract) мешей?

На всякий случай хочу сказать, что для экспорта надо выбирать вот такой тип файла - XRay_Object_Export(*.ob*)

Также надо следить, чтобы экспортируемые объекты были правильно смоделированы, т.е. не должно быть нулевых полигонов и прочих несуразностей.

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Kostya V,

Сам экспорт проходит нормально, но вот стоит только разделить или соединить меши, то экспорт крешится и Майя предлагает отправить отчёт... Приведу пример моей деятельности в Майя. Решил создать один объект из двух. Импортирую оба объекта в одну сцену, отрезаю ненужное :), ставлю их как надо, выделяю оба, команда combine, меши объединились, жму Export all, тип файла Х-Ray object... и креш Майки.

В терминологии я пока не очень разбираюсь, но, обратил внимание, что после combine или extract меш(и) переименовывае(ю)тся в Surface, может в этом причина?

 

для экспорта надо выбирать вот такой тип файла - XRay_Object_Export(*.ob*)

У меня тип файла называется просто - Х-Ray object, как я понимаю это для стат объектов, а второй тип Х-Ray object skelet для дин объектов. Я выставляю первый тип.

 

--------------

bill_gates,

Точно, плагинами бардака. :) Спасибо! Попробую с плагинами по твоей ссылке.

 

--------------

bill_gates,

Чтобы решение вопроса выглядело законченным, допишу, что дело было в плагинах. Теперь всё в порядке, экспорт проходит нормально даже после combine или extract мешей. :)

Изменено пользователем banderos
Ссылка на комментарий
banderos, судя по всему ты пользуешься плагином от бардака, а он не очень дружит с 2008 майкой. Вот плагины от пысов, которые нормально работают с 2008/2009 майкой.
Ссылка на комментарий

Камрады, в чём может быть дело: поставил Майку 2010, а плагины экспорта и материалов от ПЫС никак не хотят включаться. Я уже не знаю как ковырять этот xray_path.ltx, ставил $server_root$ = false| false| c:\Program Files\X-Ray SDK\level_editor\

$local_root$ = false| false| c:\Program Files\X-Ray SDK\level_editor\

не хотят ставиться галочки. Ставил диск Х:, предварительно создав его батником, такая же история. Плагины и скрипты кинул в положенные места (c:\Program Files\Autodesk\Maya2010\bin\plug-ins\ , в корневой каталог Майи все dll`ки и в мои документы\майя\скриптс). Что может быть не так?

Заранее спасибо.

Цензура ограничивает творчество © by me
Ссылка на комментарий
dimos, dll-ки нужно кидать не в корневой каталог, а в папку bin. Да, и файл xray_path.ltx туда же. Изменено пользователем Scarabay
Ссылка на комментарий

Всем привет. Небольшой вопрос... Создаю анимацию в maya. Делаю всё по уроку. Но когда жму s(зафиксировал кадр) руки и оружие просто пропадают. И это только на 1 кадре. А на остальных всё нормально. Что делать в данном случае? Подскажите пожалуйста.

Ссылка на комментарий

eXiu, так мне не отредактировать его надо, а подсветить в майке косяки геометрии как в редакторе карт...

Есть ли вообще такие инструменты или плагины...

h-264.jpg

Ссылка на комментарий
eXiu, в левом верхнем углу выбираешь раздел Animation, а потом в главном (самом верхнем) меню выбираешь пункт Skeleton > Joint Tool и щелкаешь мышкой в тех местах, куда нужно добавить суставы костей.
Ссылка на комментарий

Странно. Но по что то не могу шапку отредактировать.придется писать сюды.

Итак.

Народ просил что то для настройки скелета. Вот собсна скрипт, который собирает простенькую оснастку перса. Скажем, мне , утомляет джойнты крутить вручную. А как известно в ждалкере МК не потдерживается.

 

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

А пока, кто хоть как то в мел и експрешенах разбирается поправить под "себя " дело не хитрое.

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

Еще момент.

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

 

(я предпочитаю первое потом приоигрывая анимку на (чистых каналах характер) прям в тайм лайне поправляю и вешаю ключи уже на сам скелет)

 

Собсна сам скрипт Character.mel

Изменено пользователем ZVUKARb

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

 

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

Ссылка на комментарий

Для многих, этот скрипт не чем не поможет.Так как не разбираются в программе.

Можно по подробней?

Желательна на примере худа рук и оружия

Ссылка на комментарий

Собственно такой вопрос:

Есть ли смысл переходить с Макса на Майю?

Просто вроде как на Майе не надо опять материалы назначать, если из игры перегнал модель. В Максе это просто убивает -_-

Или все-таки там тоже надо?

Мод "Жесть"

В команду Two Team ("Жесть") требуется моделлер.

Ссылка на комментарий

stunder,

В Майе материалы не слетают при импорте объектов из СДК.

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Всем пт! Как у здания можно отделить индор? Я делаю так: выделяю объект, перехожу в Face, выделяю что нужно и жму Detach Component... А дальше как делать? :wacko2:

Ссылка на комментарий

nike,

Можно не грани выделить, а вершины, которые соединяют индор и аутдор. Потом Detach Component, далее Разделить, после выделяешь индор и, настроив Мерж на минимальное расстояние, жмешь его.

Потом может потребуется перевести ребра, примыкающие к вершинам, которые выделяли, из жестких в мягкие, а так все.

Кто весел - тот смеется, кто хочет - тот добьется, кто ищет - тот всегда найдет!

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...