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

Моделирование в 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

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

 

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

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

Костя а в чем же проблема? вариантов текстурирования не миллион, либо планарный маппинг с подгоном под нужную плоскость проэкции, либо (что гораздо проще в данном случае...) автоматический маппинг всего целово. Назначай всему обьекту нужный шейдер, и вперёд. Настройки автоматическово маппинга я тебе когдато обьяснял. если требуется особая правка, то UV можно и вручную подправить.

СВОБОДА - АНАРХИЯ

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

Затекстурить-то я могу. Но вот все ищу более быстрый и аккуратный способ.

И еще не знаю назначения многих кнопок в UV Texture Editor. Пользуюсь наугад.

 

Вот тут я у себя нашел классную статью по основам полигонального моделирования в Майе. Объясняются все инструменты и способы их применения для этого вида моделирования.

Я уже не помню, как она попала ко мне. Так что не скажу кого надо благодарить.

http://www.sendspace.com/file/ilu9lt

 

Вот наподобии этой статьи еще бы материал по текстурированию найти. Может есть у кого?

 

 

 

 

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

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

Kostya V,

автоматический маппинг не всегда предсказуем. Мало того - потом кучу ювишек или целых фрагментов сшить надо и пропорции не нарушить. Если коридоры относительно правильной гем. формы - то юзать планар-мап. если нечто полуовальное (не пугаться ) планарим и сшиваем. Одним словом, Разложить хороший анврап - это куда муторнее нежили сделать хорошую модель. Именно муторное - по степени гнусности сопоставимо со скинингом модели. Если надо - то могу статью по анврапу наваять. и выложить

 

Добавлено через 7 мин.:

Иватушник,

что именно по инверсной кинематике интересует. Там аж 3 решателя . Но не всякий мая понимает

 

Добавлено через 14 мин.:

malandrinus,

 

До конца не понял твоего вопроса. Давай подробно. Какие именно физ. модели ковыряешь и что именно по костям интересует. Т.к. скелет персонажа и обычной физ модели отличаются как небо от земли.

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

 

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

Ссылка на комментарий
Если надо - то могу статью по анврапу наваять. и выложить

Надо.

И еще, если можешь сделай описание UV Texture Editor. Что там за кнопки и для чего они нужны.

И еще вопрос - как измерить размеры одной грани? Допустим, выделил один полигон в модели, узнал его размеры и от этого дальше пляшешь.

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

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

Привет всем! Есть проблема. Скачал Maya 2008, крякнул. Запускаю - вылетает ошибка. Только появляется сплэш скрин. Что делать?

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

Zeka1996Korneev, а тебе эта майка для сталкера нужна? Просто как я вижу это просто 2008 а у меня плугин заработал только на Unlimited Extension 2.

А по ошибке х.з., сделай скрин чтоб окно запуска было целиком видно, в момент ошибки, а то не видно на какой стадии вылетает. Ну и так, дистрибутив то вообще рабочий, брал в проверенном месте?

 

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

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

Изменено пользователем 8push5
Возможно всё, ну или почти всё.
Ссылка на комментарий

На стадии "loading". Через 3 секунды после запуска майки. Сейчас качаю SP1, может поможет. Качал с какого-то торрента, объем 467 МБ.

 

===

 

У меня Xp SP3. Если вы можете залить проверенную - залейте пожалуйста.

А из-за старых драйверов может быть?

Изменено пользователем Zeka1996Korneev
Ссылка на комментарий

Крякнутая Майя может еще не запускаться если не включена локальная сеть на компьютере.

 

И еще вопрос - как измерить размеры одной грани?

Отвечаю на свой вопрос сам.

Есть такой инструмент - Create\Measure Tools\Distance Tool

Выбираем его и мерим, что хотим.

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

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

Ссылка на комментарий
ZVUKARb, Да, в принципе понял её, по части чтоб суставы гнулись удобно. Но вот хотел узнать как к примеру сделать, чтоб магазин автомата строго за рукой ходил
Ссылка на комментарий

Иватушник,

когда кости привязываешь, сделай парент на кость магазина от руки или еще проще, в гипперграфе - сделай ее дочерней. Но в этом случае, при экспорте клипов придется за "чистотой" скелета следить

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

 

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

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

Вот тут видео из макса.http://www.youtube.com/watch?v=nh5x1SNcW-8&feature=related

Я не понимаю он сделал, ик или что? Но руки и автомат дружно и аккуратно ходят вместе.Как такое сделать в майе? И есть ли вообще туторы такие, как оружие делать, но только в майе. Книга Цыпцына хорошая, но учить её только из-за того чтоб сделать анимацию для ак, я как то не горю желанием

ZVUKARb, Спасибо конечно, но я не совсем понимаю что, такое парент

Изменено пользователем Иватушник
Ссылка на комментарий

Парент - это скорее всего родительский объект. Я так понял, что тебе предлагают подчинить один объект другому. И получится, что если двигается один, то аналогично будет двигаться и другой.

Книга Цыпцына как раз об этом хорошо рассказывает.

 

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

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

Иватушник,

Открываешь Window\Outliner.

Там будут показаны объекты твоей сцены. Находишь нужные объекты в Outliner. Потом выделяешь объект, который надо подчинить, и перетаскиваешь его средней кнопкой мыши на объект, к которому он должен подчиниться. Все.

Еще это можно сделать в гиперграфе.

Можешь почитать в книге как раз про аутлайнер и гиперграф. И посмотреть, что тебе более по душе.

 

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

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

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

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

Спасибо. Более менее стало понятно :)

Нет всё таки это не совсем то, та потом глюки в сдк.

Надо узнать что такое парент

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

 

Изменено пользователем Иватушник
Ссылка на комментарий

Путей на самом деле полно. Можно припарентить(только не объекты, а кости)Т.е. На весь худ (руки и автомат) собираешь один скелет(С одним корневым root-суставом) Далее, начинаются прелести с этой бякой. Т.к. Ик ТЧ пок мере , не потдерживает, придется ручками. берем и открываем гипперграф(аццкое окно) берем кость твоего автомата, которая должна отвечать за движение костей кисти и предплечья(имена костям давать истиные(смотрим какой нидь худ от ПЫс) Далее, придется пользовать експрейшен едитор и учить мел, т.к. без оного добиться внятного движения не получится. И начинаем крепкими словами уписывать движение родительских и дочерних костей суставов, да чего угодно. Не забудь сделать локаторы для более удобного управления. К примеру, имеем одну родительскую и 2 дочерних кости, нужно что бы при движении родительской кости по оси Х к примеру - двигалась родительская кость по осям ХУ. Делаем локатор(как правило из кривой первого порядка) подчиняем в гипперграфе ему нашу родительскую кость(root) и пробуем шевелить. Тока локаторы не экспорти. После всего сетапа - их поудаляй.

 

А помимо книги Цыпина, погугли книгу Крис Марфи "создание персонажей в Maya" В этой книге расписан полный сетап двуногого существа со всеми потрохами. И введение в мел и експрешен имеется. Рассмотрены такие вещи как ИК и прямая кинематика.

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

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

 

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

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

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

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

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

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

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

Войти

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

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

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