Maya: вопрос-ответ — различия между версиями
RedPython (обсуждение | вклад) м |
RedPython (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | == Установка и использование == | ||
+ | '''Вопрос:''' где можно получить студенческую лицензию для Майи?<br /> | ||
+ | '''Ответ:''' конечно же здесь: http://www.autodesk.com/education/free-software/maya | ||
+ | ---- | ||
+ | '''Вопрос:''' где скачать обновления (сервис-паки) Майи?<br /> | ||
+ | '''Ответ:''' https://knowledge.autodesk.com/support/maya/downloads | ||
+ | ---- | ||
+ | '''Вопрос:''' нужно ли устанавливать оригинальный дистрибутив Maya перед установкой обновления?<br /> | ||
+ | '''Ответ:''' нет, совершенно не нужно, ибо пакет обновления является полноценной сборкой Maya. Более того, нужно удалить предыдущую версию перед обновлением.<br /> | ||
+ | Для версий 2016 и выше (под виндовс) автостол выпускает патчи вместо полноценных инсталляторов. | ||
+ | |||
+ | |||
+ | == Разное == | ||
+ | '''Вопрос:''' как выровнять все выделенные вершины относительно плоскости?<br /> | ||
+ | '''Ответ:''' есть несколько способов. Самый простой — отключить Retain component spacing в настройках Move tool, и с включенной привязкой (к вершинам или к сетке) клацнуть СКМ во вьюпорте. | ||
+ | ---- | ||
'''Вопрос:''' в новых версиях Майи со встроенным Modeling Toolkit'ом (он же NEX plugin) отсутствуют элементы интерфейса, позволявшие вызвать старые проверенные Split Polygon, Poly Cut, Sculpt Geometry tool'ы. В то же время они не вырезаны из функционала программы. Как их теперь вызвать?<br /> | '''Вопрос:''' в новых версиях Майи со встроенным Modeling Toolkit'ом (он же NEX plugin) отсутствуют элементы интерфейса, позволявшие вызвать старые проверенные Split Polygon, Poly Cut, Sculpt Geometry tool'ы. В то же время они не вырезаны из функционала программы. Как их теперь вызвать?<br /> | ||
'''Ответ:''' нужно ввести следующие команды в командную строку и перетащить их оттуда прямо на полку.<syntaxhighlight lang="lua">SplitPolygonTool; | '''Ответ:''' нужно ввести следующие команды в командную строку и перетащить их оттуда прямо на полку.<syntaxhighlight lang="lua">SplitPolygonTool; | ||
Строка 5: | Строка 21: | ||
---- | ---- | ||
'''Вопрос:''' как изменить рабочие единицы, используемые Майкой по умолчанию, чтобы они не сбрасывались при создании новой сцены?<br /> | '''Вопрос:''' как изменить рабочие единицы, используемые Майкой по умолчанию, чтобы они не сбрасывались при создании новой сцены?<br /> | ||
− | '''Ответ:''' поменять значения в ''' | + | '''Ответ:''' поменять значения в '''maya\<версия>\prefs\userPrefs.mel''': |
<syntaxhighlight lang="ini">-sv "workingUnitLinearDefault" "cm" | <syntaxhighlight lang="ini">-sv "workingUnitLinearDefault" "cm" | ||
-sv "workingUnitTimeDefault" "film"</syntaxhighlight> | -sv "workingUnitTimeDefault" "film"</syntaxhighlight> | ||
Строка 14: | Строка 30: | ||
<syntaxhighlight lang="ini">-fv "defaultCameraFarClipValue" 1000 | <syntaxhighlight lang="ini">-fv "defaultCameraFarClipValue" 1000 | ||
-fv "defaultCameraNearClipValue" 0.01</syntaxhighlight> | -fv "defaultCameraNearClipValue" 0.01</syntaxhighlight> | ||
+ | ---- | ||
+ | '''Вопрос:''' как выделить initialShadingGroup? | ||
+ | '''Ответ:''' <syntaxhighlight lang="ini">hyperShade -objects initialShadingGroup;</syntaxhighlight> | ||
Строка 19: | Строка 38: | ||
В большинстве случаев небольшие скрипты удобно скопипастить в редактор скриптов и перетащить их оттуда прямо на полку. | В большинстве случаев небольшие скрипты удобно скопипастить в редактор скриптов и перетащить их оттуда прямо на полку. | ||
---- | ---- | ||
− | '''Вопрос:''' | + | '''Вопрос:''' как скриптом переместить объект в начало координат? |
'''Ответ:''' <syntaxhighlight lang="python">import maya.cmds as mc | '''Ответ:''' <syntaxhighlight lang="python">import maya.cmds as mc | ||
Строка 26: | Строка 45: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
---- | ---- | ||
− | '''Вопрос:''' | + | '''Вопрос:''' как отцентрировать опорные точки (pivot'ы) по центру габаритного контейнера объекта (bounding box'а)? |
'''Ответ:''' <syntaxhighlight lang="python">mc.xform( centerPivots=True )</syntaxhighlight> | '''Ответ:''' <syntaxhighlight lang="python">mc.xform( centerPivots=True )</syntaxhighlight> | ||
---- | ---- | ||
− | '''Вопрос:''' | + | '''Вопрос:''' как импортировать много файлов в сцену (например, при работе со сценой после [[X-Ray game asset converter|декомпиляции]] уровня в режиме <code>-mode le</code>? |
'''Ответ:''' <syntaxhighlight lang="python">import maya.cmds as mc | '''Ответ:''' <syntaxhighlight lang="python">import maya.cmds as mc | ||
Строка 45: | Строка 64: | ||
i = True, | i = True, | ||
type = "X-Ray object", | type = "X-Ray object", | ||
− | + | returnNewNodes = True, | |
ignoreVersion = True, | ignoreVersion = True, | ||
options = "mo=0", | options = "mo=0", | ||
loadReferenceDepth = "all" ) | loadReferenceDepth = "all" ) | ||
mc.rename(returned_nodes[0], object_name)</syntaxhighlight> | mc.rename(returned_nodes[0], object_name)</syntaxhighlight> | ||
− | |||
− | |||
− | |||
[[Категория:Maya]] | [[Категория:Maya]] |
Версия 17:19, 10 декабря 2016
Установка и использование
Вопрос: где можно получить студенческую лицензию для Майи?
Ответ: конечно же здесь: http://www.autodesk.com/education/free-software/maya
Вопрос: где скачать обновления (сервис-паки) Майи?
Ответ: https://knowledge.autodesk.com/support/maya/downloads
Вопрос: нужно ли устанавливать оригинальный дистрибутив Maya перед установкой обновления?
Ответ: нет, совершенно не нужно, ибо пакет обновления является полноценной сборкой Maya. Более того, нужно удалить предыдущую версию перед обновлением.
Для версий 2016 и выше (под виндовс) автостол выпускает патчи вместо полноценных инсталляторов.
Разное
Вопрос: как выровнять все выделенные вершины относительно плоскости?
Ответ: есть несколько способов. Самый простой — отключить Retain component spacing в настройках Move tool, и с включенной привязкой (к вершинам или к сетке) клацнуть СКМ во вьюпорте.
Вопрос: в новых версиях Майи со встроенным Modeling Toolkit'ом (он же NEX plugin) отсутствуют элементы интерфейса, позволявшие вызвать старые проверенные Split Polygon, Poly Cut, Sculpt Geometry tool'ы. В то же время они не вырезаны из функционала программы. Как их теперь вызвать?
SplitPolygonTool;
performPolyCut 1;
SculptGeometryTool;
Вопрос: как изменить рабочие единицы, используемые Майкой по умолчанию, чтобы они не сбрасывались при создании новой сцены?
Ответ: поменять значения в maya\<версия>\prefs\userPrefs.mel:
-sv "workingUnitLinearDefault" "cm"
-sv "workingUnitTimeDefault" "film"
Здесь показаны параметры по умолчанию — единицы измерения сантиметры, частота кадров равна 24 (фильм). В XRay используются метры и анимация с частотой кадров, равной 30 (стандарт NTSC):
-sv "workingUnitLinearDefault" "m"
-sv "workingUnitTimeDefault" "ntsc"
Плоскости отсечки настраиваются там же:
-fv "defaultCameraFarClipValue" 1000
-fv "defaultCameraNearClipValue" 0.01
Вопрос: как выделить initialShadingGroup?
Ответ:hyperShade -objects initialShadingGroup;
Скриптовые решения
В большинстве случаев небольшие скрипты удобно скопипастить в редактор скриптов и перетащить их оттуда прямо на полку.
Вопрос: как скриптом переместить объект в начало координат?
Ответ:import maya.cmds as mc
selected = mc.ls( selection=True )
mc.move( 0, 0, 0, selected, rotatePivotRelative=True)
Вопрос: как отцентрировать опорные точки (pivot'ы) по центру габаритного контейнера объекта (bounding box'а)?
Ответ:mc.xform( centerPivots=True )
Вопрос: как импортировать много файлов в сцену (например, при работе со сценой после декомпиляции уровня в режиме -mode le
?
import maya.cmds as mc
def multiple_import():
multiple_filters = "X-Ray object (*.object);;X-Ray game object(*.ogf);;X-Ray skeletal motion (*.skl);;All Files (*.*)"
files = mc.fileDialog2(fileFilter = multiple_filters,
dialogStyle = 2,
caption = 'Import',
okCaption = 'Import',
fileMode = 4)
for f in files:
names_list = f.split('/')
object_name = names_list[-1].replace('.object', '')
returned_nodes = mc.file('%s' % f,
i = True,
type = "X-Ray object",
returnNewNodes = True,
ignoreVersion = True,
options = "mo=0",
loadReferenceDepth = "all" )
mc.rename(returned_nodes[0], object_name)