Maya Python学習の決定版セミナーを開催します!
【初心者向け】やさしく学ぶ Maya Python
~入門から実践的なツール作成まで~
https://shop.cgworld.jp/shopdetail/000000001227/
2025年5月9日(金)~6月6日(金)※毎週金曜日(全5回) 18:00-21:00
開催場所:オンライン
「Mayaのスクリプトを書けるようになりたいけど、どこから始めればいいのか分からない…」
そんな初心者の方に向けた、5日間の集中講座を開催します!
🔹 初心者にやさしく、分かりやすい解説で基礎からしっかり学べる!
🔹 実務で本当に必要な知識がまとまっているので、スムーズに学べる!
ワークショップ形式でツール作成を実践&その場でフォローもあるから安心です
🔹 AIを活用したツール開発&学習法も学べる!
この講座で学べば、実務で役立つツールを作れるようになり、作業を大幅に効率化できるでしょう!
独学ではなかなか身につけにくいMaya Pythonの基本を、この機会にぜひ習得してください。
こんにちは!ビーバー@ゲーム業界歴約20年python勉強中 です。
初心者のためのヘルプのヘルプシリーズ!「ls」コマンドをカンタンに解説します。複雑なフラグはおいといて、最初に使うところだけを厳選してお届け☆
フラグの使い方の例と、スクリプトの実行結果を画像でのせているので、ながめるだけでコマンドのイメージをつかんでいただけると思います。
専門用語をなるべくつかわず文章をコンパクトに、しているのでサクッと読めますよ(約3分!)
それではどうぞ~!

※当サイトで紹介する商品は、アフィリエイトプログラムを利用しています。
ls とは?
シーンにあるノード名をとってくるコマンドです。

「名前」だよ!選択するわけじゃないよ~
かんたんな使い方
シーンのノードをとってくる
cmds.ls()

とってきた名前は、カッコ [ ] でかこまれたリストになって返ってくるよ!

フラグをつけないと、普段気にしないシーンの中のノード全部をとってきちゃうんだ。
しぼりこみ方を紹介するね!
選択したものだけとってくる
cmds.ls( selection=True )

selectionフラグを使うと、選択したものの名前だけとれちゃいます!

フラグをオンにするには、かっこ()のなかに、selection=True って書いたらOK!
選択した階層以下だけとってくる
cmds.ls( selection=True, dagObjects=True )

dagObjects フラグと selection をセットで使うと、
選択したものの階層以下全部がとれます。

dagObjectsフラグは「指定したノード以下のDAGオブジェクトをとってくる」んだよ

だぐ って何??

シーンを構成するノードのことだよ。
普段アウトライナで見えているノードはたいていDAGだ!

特定のタイプのノードだけとってくる
cmds.ls( selection=True, dagObjects=True, type="transform" )

さらに、、ノードのタイプを指定してしぼりこめます!
図では、トランスフォームノードだけとってみています。

かっこ()の中に、type=”タイプ名” って書くとそのタイプのノードだけをとれるんだ!

わあ!それは便利だね。ただ、、タイプ名ってどう書けばいいのかわからないよ。。
タイプ名をどうやってしらべればいいの?
アトリビュートエディタから
ノードを選ぶと、アトリビュートエディタの「名前入力の左側」にタイプ名が書いてあります。


赤枠の部分ね!これはpCube4のシェイプ(メッシュ)ノードを選択したところ。
ls で調べる
cmds.ls( selection=True, showType=True )

showTypeフラグを使うと、オブジェクト名とタイプ名が返ってきます。

ls コマンドはいくつかフラグを組み合わせてフィルタできるんだね!


フラグを紹介!(抜粋)

maya pythonを始めたての人向けに、使いやすいフラグを抜粋して紹介します!

ほかにもまだまだあるから、もっと詳しく知りたい人は公式のヘルプを見てみてね!
assemblies
最上位のDAGノードをとってきます。
cmds.ls( assemblies=True )

cameras
カメラのシェイプをとります。
cmds.ls( cameras=True )

dagObjects
このフラグは「指定したノード以下のDAGオブジェクトをとってくる」ことができます。
selectionとセットで使うと、選択したものの階層以下をとれますよ!
cmds.ls( selection=True, dagObjects=True )

geometry
ジオメトリのシェイプだけをとってきます。
cmds.ls( geometry=True )

intermediateObjects
中間ノードをとってきます、スキンバインドした時の中間ノードなんかをとることができます。
cmds.ls( selection=True, dag=True, intermediateObjects=True )


図ではselectionとdagフラグを一緒に使って、階層以下の中間ノードだけをとっているよ!
invisible
非表示のDAGノードがとれます。
cmds.ls( selection=True, dag=True, invisible=True )

long
ノードのパスをとってきます。
cmds.ls( selection=True, long=True )


同じ名前のノードが2つ以上シーンにあるときなんかは便利だね!
orderedSelection
選択した順にリストを作ってほしいときに使います。
cmds.ls( orderedSelection=True )


図は、pCube2,1の順で選択して、スクリプトを実行したところだよ!
結果も pCube2,pCube1 の順になっているね。
orderedSelection フラグを使うときは、
プリファレンス>設定>選択項目>選択順のトラック に チェックをいれておきましょう。

selection
選択したものをとってきます。
cmds.ls( selection=True )

shapes
シェイプノードだけをとることができます。
cmds.ls( selection=True, dagObjects=True, shapes=True )


selectionとdagフラグを一緒につかうと、
「選択したものの階層以下のシェイプだけ」をとることができるよ!


shortNames
アトリビューのトショートネームを調べます。
cmds.ls( "pCube1.translateX", shortNames=True )

showType
タイプ名を調べます。
オブジェクト名の後にタイプがついてかえってきます。
cmds.ls( "pCube1.translateX", shortNames=True )

transforms
トランスフォームノードだけとることができます。
cmds.ls( selection=True, dagObjects=True, transforms=True )


selectionとdagフラグを一緒につかって、
「選択したものの階層以下のトランスノードだけ」をとっているよ!
type
指定したタイプだけとってきます。
cmds.ls( type="mesh" )


タイプ名はアトリビュートエディタから調べるか、
showTypeフラグで調べてみよう!

まとめ
ls とは?
シーンにあるノード名をとってくるコマンドです
- シーン全体のノードをとるとき
cmds.ls() - 選択したものだけとってくる
cmds.ls(selection=True) - 選択した階層以下だけとってくる
cmds.ls(selection=True,dagObjects=True)
- 特定のタイプのノードだけとってくるcmds.ls(selection=True,dagObjects=True,type=”transform”)

とってきた名前は、カッコ[ ] でかこまれたリストになって返ってくるよ!
- アトリビュートエディタの名前入力欄の左に表示されているよ!
- ls でも調べられるよ!
cmds.ls(selection=True,showType=True)

selection, dag, typeだけでもいろんなことができそうだね!
- assemblies
最上位のDAGノードをとる - cameras
カメラをとってくるよ - dagObjects
指定したノード以下のDAGオブジェクトをとってくるよ - geometry
ジオメトリのシェイプだけをとるよ - intermediateObjects
中間ノードをとるよ - invisible
非表示のDAGノードをとるよ。 - long
ノードのパスをとるよ - orderedSelection
選択した順でリストを作ってほしいときにつかおう - selection
選択したものをとるよ - shapes
シェイプをとりたいとき - shortNames
アトリビュートのショートネームを調べられる - showType(st)
タイプ名を調べるとき使う - transforms
トランスフォームノードだけとりたいとき - type
指定したタイプだけとるよ

OK!これで ls はバッチリだ!また読みにきてくれたまえい~☆
はじめてプログラミングを勉強するとき、エラーはつきものですよね。
何時間もスクリプトが動かないこともしばしば。。
そんな時、くわしい人に教えてもらいたい、と思うことはありませんか?
侍テラコヤは、はじめてpythonを学習する方にピッタリのサービスです。
サブスク型オンラインスクールで、月¥2980~の良心的なお値段!
現役エンジニアのサポートが充実しており、
オンラインのマンツーマンレッスンとQ&A掲示板で即座に悩みを解決することができます。
本サイトの【まとめ】 maya python 基礎 入門!では、
10回シリーズでmaya pythonの基礎が習得できるコンテンツを発信しています。
- ちまたのスクリプトを読んで、内容を理解したい
- mayaのスクリプトリファレンスの読み方を習得したい
- 自分で簡単なツールを書きたい
- 基礎的なmayaコマンドをpythonで使えるようになりたい
など、mayaでpython基礎を身に着けたい方は、ぜひご活用ください♪


コメント