« シェーディング表示の上にワイヤフレームおんおふ。 | トップページ | ワイからさん for Maya。 »

2018年4月26日 (木)

なんでジョイントをイッキに選ばせてくれないんですか。

.




Mayaさまって、ビューポート上でイッキにジョイントを選ぼうとマウスドラッグしても、親のジョイントしか選ばせてくれないですよねえ?




Jointsel1


                 ↓


Jointsel2




なぜなんでしょう。
親だけが選ばれてくれた方が都合のいい場合って、
どういう場合なのでしょう。

おれ、本当に想像できなくて。

普通に子供まで選ばせて頂きたいのですが。
Maya さま。




と、もう何年も思い続けてきたのですよね。


人に聞くと、大抵、ジョイント選んで Select > Hierarchy ってやれば全体選択できるよ、と言われるんですが、必ずしも全体を選択したいわけじゃない時も多いじゃないですか。 10階層あるジョイント階層の中の、第2ジョイントから第6ジョイントまで選択したい時とか、あるじゃないですか。 普通にビューポートで、選択範囲に入ったやつだけ、親だろうが子だろうが複数イッキに選択されて欲しいんだよなあ。



あと、ジョイント階層の中にジョイント以外のものが入っている時、それは選択したくないって場合も多いんですよね。 例えばジョイントの表示上の太さを変えたい時とかね。 ジョイント以外のものが選択に含まれていると、Radius のアトリビュートがチャネルボックスに現れてくれないもんだから。   だから、Select > Hierarchy じゃ都合悪い場合も多いわけですよ。 まあ、いったん Select > Hierarchy してから、要らないものはちまちま選択から外していくという作業をすればいいんですけどね。 でももちろん、それも面倒です。数が多いと無理ですよ。



今のところ、アウトライナなどで選択するか、どうしてもビューポートで選択したい時は Shift + クリックを繰り返すとかしていますが、面倒です。すんげえ面倒です。 面倒というだけでなく、なんかこう、馬鹿馬鹿しい気がして、非常にストレスフルです。 納得いかない感がつのると言うか。



で、さっき、スクリプトで少しは楽にできないかな~と思って書いてみたら、まあなんか、ちょっとだけマシになったかな、と思いました。 ちょっとだけです。 ほんのちょっとだけ。


python:
#jjjSelectGoddamnJointsOnly
import pymel.core as pm
pm.select( hierarchy=1 )

goddamnJoints = pm.ls( sl=1, type="joint" )
pm.select( goddamnJoints, r=1 )

ジョイント(複数可)をまず選んで、実行すると、その階層下のジョイントだけを、最下層まで、イッキに選択します。

つまり、Select > Hierarchy に 「ジョイントしか選択に残さない」 という機能を付けただけです。実際コードもそのまんまです。いったん Select > Hierarchy を実行して、そこからジョイントだけを抽出しているというコードになっています。
だから、マウスドラッグで一気に選択できない問題は何一つ解決してないです。 せめてこれだけでも、と、ジョイントだけを選んでくれるようにしたら、ちょっとだけ便利な場合が増えましたというだけのことです。 むしろため息の方がつのるw





これ、なんとかならんでしょうか?

俺が知らないだけ?

マウスドラッグで、親だけでなく全部、フツーに選びたいのですよ。


Maya さま?






.

|

« シェーディング表示の上にワイヤフレームおんおふ。 | トップページ | ワイからさん for Maya。 »

コメント

僕の場合は、Select > Hierarchyで階層全部選択した状態でビューポートをIsolate selectにしてマウスドラッグで必要な骨だけ複数選択できる状態にしています。

投稿: おおのよういち | 2018年4月29日 (日) 20時35分

あら~おおのさんご無沙汰ちゃんです

えっと、Isolate したところで、ジョイントの場合はマウスドラッグで複数を一気に選べない(いちばん親のジョイントしか選べない)のは同じですよねえ?   関係者だけを Isolate してさらにそこから必要なものを選び直すということ自体は、はい、よくやるのですが。

例えば、ジョイント階層のうち、2番目から6番目までのジョイントをマウスドラッグで選択したい。 というような場合が多いのですが、このジョイント階層を Isolate して単独表示にしても、その後、ドラッグ内に入ったジョイントのうち、もっとも親のジョイントだけが選択されてしまいます。2番目から6番目までドラッグに入れるのですが、2番目のジョイント1本しか選択されないのです。だからそのあと、shift + ドラッグで選択せざるをえず、めんどくせえなあと思っています。

でも、おおのさんの書き込みを見ると、ドラッグで複数選べるような感じに見えますね? 何か方法があるのかしら? すいませんおれまだよく理解できていませんw 何か方法あるなら教えて下さい~

投稿: 潤樹 | 2018年4月30日 (月) 14時32分

動画にしてみました。
http://firestorage.jp/download/d231ad5ecf29fa684c7105aff59864a4d5ae2f5a

maya2016しか試してないのですが
こういうことじゃなかったらごめんなさいー。(*´Д`*)

投稿: おおのよういち | 2018年5月 3日 (木) 03時53分

動画見ました。 わっ ほんとだっ それです。 やりたいこと、ちゃんとできてます。ドラッグで複数ジョイントを選択です。できてます。

で、2016 でやってみました。そしたら、できました。おおのさんの手順の通りで、できました。すげえ。
Isolate が必要なんですかね? Isolate しないと、やはり親ジョイントのみの選択になってしまいます。Isolate すると、何か特別なモードに入るのでしょうかね? その辺まだ理解していません。 ですが、とりあえず Isolate さえすれば、できました。
このやり方、どうやって知ったのですか?

そして、2017 で同じことやってみたら、やっぱりできないんですよ。操作は全く同じ手順でやってます。でも、2016で出来たことが、2017 ではできない。 Preference の違いかもと思って、ちゃんとできている 2016 の Selection の Preference 設定を真似てみましたが、やっぱり 2017 ではできませんでした。 そちらではどうでしょうか?

ということで、まとめると、

1.Isolate すると、単独表示になるという以外に、選択で何か特別なモードになるのでしょうか?
2.このやり方は、どこで知ったのでしょうか? どこかにドキュメントとかありますかね?
3.2017で出来ないんですけど、そちらではどうでしょうか。 原因わかりますかね?

という感じなのですが、すみません、お手すきの時でいいので、確認して頂けますか。
いやあ、不思議だ。ずっと不便してますこれで。 あとで 2018 でも試してみよう。
現在は 2017 か 2018 の仕事が多くなってきたので、是非 2017 以降でもこれができて欲しいなあ。

投稿: 潤樹 | 2018年5月 3日 (木) 11時55分

2017で試してみました!!
Viewport2.0 から Legacy Default Viweport表示に変更したらできましたー!
お試しくださいませー。

この方法を発見した経緯は偶然発見したんです。
たまたま階層全部選んでIsolate表示にしてて選べてびっくりしましたw

投稿: おおのよういち | 2018年5月 4日 (金) 15時51分

ほんとだ~っ 2017 で、Legacy なビューならできました!

な ん で や ね ん w
VP2.0 でもできるようにして下さいよ Maya さまw
っていうか Isolate とかしなくても普通にできるようになってくださいよw
それが普通でしょうがw

バグというわけではなさそうな、でもまあ、いつもの不親切設計というか。 意味不明デザインというか。

いまどき、Legacy なビューポートはあんまり使わなくなってきましたね。リギングの時だけ Legacy にして作業するってのも手かも知れませんね。しかしどうにかならんかなあw 嘔吐デスク様にお手紙でも出してみようかしら。

投稿: 潤樹 | 2018年5月 7日 (月) 14時21分

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: なんでジョイントをイッキに選ばせてくれないんですか。:

« シェーディング表示の上にワイヤフレームおんおふ。 | トップページ | ワイからさん for Maya。 »