liquidjumper MAYA [MAYA]Pythonスクリプトをショートカットキー・ホットキーに割り当てる方法

[MAYA]Pythonスクリプトをショートカットキー・ホットキーに割り当てる方法

maya_python_script_set_hotkey_topimage

MAYAでPythonスクリプトを使って便利な機能やツールを作成できますが、毎回コマンドライン又はスクリプトエディターから実行するのは非効率。何度も使うスクリプトは保存して、ワンボタンで実行するのが効率的です。

スクリプトを保存、ワンボタンで実行する方法としてまず挙げられるのがシェルフ(shelf)です。

シェルフ


シェルフ(shelf)は保存作成するのも簡単で、MAYAを操作する上で欠かせない機能の一つですが、一日に何度も繰り返す機能の場合、マウスを上に移動してクリックする必要がある為シェルフ(shelf)ですら煩わしくなります。

キーボードに設定するショートカットキー・ホットキーで実行できれば、マウスを移動する必要もないので、生産性も上がるはず。

この記事では、MAYAでPythonスクリプトをショートカットキー・ホットキーに割り当てる方法を紹介します。



Autodesk(オートデスク)

MAYAスクリプトをショートカットキー・ホットキーに割り当てる

MAYAではスクリプトをキーボードのショートカットキー・ホットキーに割り当てる事ができます。

特定のキーにスクリプトコマンドを割り当てる事によって、頻繁に使う機能に素早くアクセスする事ができ、無駄なマウス操作を減らせるので効率的で生産性も上がります。

LambertのマテリアルとシェーディングノードのFileを生成して、FileのoutColorとLambertのcolorをコネクトするスクリプトを作成しました。このスクリプトをホットキーに割り当てたいと思います。

import maya.cmds as cmds

shading_name = cmds.shadingNode("lambert", asShader = True)
cmds.sets(renderable=True, noSurfaceShader=True, empty=True, name='%sSG' % shading_name)
cmds.connectAttr( '%s.outColor' % shading_name , '%sSG.surfaceShader' % shading_name)

file_name = cmds.shadingNode("file", asTexture = True, isColorManaged=True)
shadingNode_name = cmds.shadingNode("place2dTexture", asUtility=True )
cmds.connectAttr( "%s.coverage" % shadingNode_name,  "%s.coverage" % file_name)

cmds.connectAttr( "%s.outColor" % file_name,  "%s.color" % shading_name)

ホットキーエディター(Hotkey Editor)でホットキーを割り当てる

メニューバーから  ウィンドウ(Windows) > 設定/プリファレンス(Settings/Preferences) > ホットキー エディタ(Hotkey Editor) を選択します。

この ホットキー エディタ(Hotkey Editor)で、スクリプトをショートカットキー・ホットキーに割り当てる事ができます。

 ホットキー エディタ(Hotkey Editor)


まず最初にMAYA既定(MAYA Default)のホットキーの複製を作ります。MAYA既定(MAYA Default)のホットキー設定は編集することが出来ないので、複製したホットキー設定に新しいホットキーを割り当てます。左上のホットキー設定(Hotkey Set)フィールドにある歯車アイコンをクリックして 複製(Duplicate) を選択します。

複製(Duplicate) 


ホットキー設定を複製(Duplicate Hotkey Set)ウィンドウで、編集する新しいホットキー設定の名前を入力します。入力したら「OK」をクリック

編集する新しいホットキー設定の名前を入力


ホットキーを編集(Edit Hotkeys For)メニューで カスタム スクリプト(Custom Scripts) を選択します。

カスタム スクリプト(Custom Scripts)


右枠のタブから ランタイム コマンド エディタ(Runtime Command Editor) を選択。新規(New)をクリックして、アプリケーションコマンドの名前(Name)と、説明(Description) 、スクリプト言語を「MEL」「Python」から選択します。

ランタイム コマンド エディタ(Runtime Command Editor)


スクリプトコードを下の枠にペーストして、右下の「ランタイムコマンドを保存(Save Runtime Command)」をクリックします。

スクリプトコードを下の枠にペースト


作成したアプリケーションコマンドを選択、ホットキー(Hotkey)の列をダブルクリックするとフィールドがアクティブになり、キーボードのキーが入力できるようになります。右のキーボード表示で、どのキーがホットキーに割り当てられてないのか確認できます。キーボードの[Ctrl][Shift][Alt]を押すと、表示も連動して変化し、[Ctrl][Shift][Alt]との組み合わせで使われてないキーも確認できます。
今回は [Shift] + [1] にホットキーを割り当てました。設定が完了したら下の「保存して閉じる(Save and Close)」をクリックして閉じます。

ホットキーを割り当て


それでは実際にホットキーで実行してみます。

[Shift] + [1]

設定したホットキーを押すとハイパーシェードで、LambertのマテリアルとシェーディングノードのFileが生成され、FileのoutColorとLambertのcolorがコネクトされた状態になりました。

LambertのマテリアルとシェーディングノードのFile

まとめ

MAYAでPythonスクリプトをショートカットキー・ホットキーに割り当てる方法を紹介しました。

ホットキー エディタ(Hotkey Editor)は、カスタムスクリプト以外に、メニュー項目(Menu Items)、エディタ(Editors)、その他の項目(Other Items)、もホットキーに割り当てる事が可能です。

頻繁に使う機能は、キーボードのワンボタンで実行できるようにすれば、無駄なマウス操作も減り、生産性も上がるので是非活用してみてください。



Twitter Facebook Pocket LINE はてブ

おすすめの関連記事
コチラの記事も読まれています
あわせてよく読まれている記事