« 2014年5月 | トップページ | 2014年7月 »

2014年6月

2014年6月24日 (火)

F.C.Real Bristol 2014。



GIジョーみたいな人形がブラジルの街で球蹴りをする



という内容のアレなんですが。
リグとモーションを担当させて頂きましたですよ。

俺にナイキとかw  似合わねえw
いや、そういう問題ではちっともないんだが・・・・





普通に人間が芝生の上でサッカーしている様子を実写で撮り、カメラトラッキングをして、あとは人間の動きは気合で追いかけてモーションを付け、衣服などは残し、人間部分だけをCGに置き換えて行くというアレでした。



人間のリグとモーションは俺がやりましたが、それ以外のCG関連作業は全て、基本的に tsu-guさんがやっています。 人形の3Dスキャンの指示を出し、フッテージ実写
撮影に立会い、撮影スタッフにCG的な立場から指示を出し、素材を起こし、必要な加工をし、カメラトラッキングをし、データを俺に渡し、俺から上がったデータをレンダし、背景CGを作り、コンポジットし、全体のカラーグレーディングとかそういうこともし・・・・というのを彼がやっているということです。 今回はほとんどエディタでもあったようだな彼は(っていうか彼はもともと、フレイムやインフェルノを使う本職のエディタです)。 俺は tsu-guさんの一連の作業のうち、モーションに関わる部分をお手伝いしただけということになります。


XSI男忘年会も常連の tsu-guさん。非常に身長のでかい人です。 もうひとりのあのお方と並んでツインタワーなどと呼ばれていた人です。 俺と違って実写関係のCGにすごく強い人です。彼のオフィスは携帯の電波状態が悪いです。東京のど真ん中のくせに。



CGは XSI 2013 で作られています。

いいですか、もう一度言いますよ。

XSI で作られています。

Made with Softimage ってやつですよ。

Softimagebadgefinalimage

嘔吐デスク様・・・・まだまだ使えるっスよ・・・・・



モデルは実際にある人形を3Dスキャンだったのですが、すげえポリゴン数のデータが到着しました。まともに動かせません。

質感などは tsu-gu さんが同時に進めるので、俺はそれを待たずにリギングなどの作業を始めねばなりません。 当然ポリゴンリダクションです。 XSI のポリゴンリダクションは良いとか聞いたことあるけど、他ソフトウェアはもっとよろしくないのでしょうかね? 俺は知らない。 まあともかく、サクサクとリダクションしましたよ。0.01% だか 0.001% くらいまでリダクションしました。ボリュームをいい具合に保ってくれるのがいいね。 ポリゴン数が減っても、空間の占有体積が大きく変わってしまうとモーション用ダミーとしては使えないわけですが、そんなことはなく、十分リダクション前のボリュームを保ってくれてるので十分実用になりますね。


一部エンベロープの必要があったのですが、最終レンダに使うメッシュ解像度ではウェイト作業が重過ぎます。 なのでローポリでウェイト付け。 ローポリならウェイト編集怖くないですからね。

そしてウェイトの都合でトポロジを激しくいじります。なにせ3Dスキャンデータなもんだから、メッシュはデフォーメーションに全く適してない均一割りだし、時間の都合上リトポも出来なかったんですよ。だから関節部分などは手でメッシュの切り方を大いにいじってしまいます。 ローポリなのでこういう作業も苦ではない。

こうしてできたローポリは、もはや最終レンダに使うハイポリと同じトポロジではありません。 分割数だけでなく、メッシュの切り方の方向なんかも違うものだということです。 でも問題なし。 必殺技 Gator でウェイト一発転送ですよ。 なんなら他の都合で作ったクラスタとかも転送できるしね。 Gator ちゃんステキです。



このように、あんまり順番を深く考えず、その時の都合で出来ることからやってしまい、トポロジなども自由にいじり、後から Gator などで転送するってのができるから、なんか無計画でダメなCG屋になっちまいますよねw  こういう、一直線で前に進むだけではない、順番が入り乱れた作り方はノンリニアって言うのかな。 CG屋を堕落させる便利さです。 

非破壊ワークフローってのも重要ですね。 エンベロープした後でもどんどんトポロジでも何でもいじれるもんね。 それくらいのことなら、Gator すら必要ない。 骨入れる前にモデリングを確定させる必要ないとか、ほんと退廃的です。堕落します。 エンベロープも UV も壊れないんだもの。 非破壊ワークフローってこんなに自堕落だったなんて、堕落のど真ん中にいた俺は、最近まであんまり気づいてなかったですよ。


某ヒーローソフトウェアは、非破壊ワークフローの逆、つまり破壊ワークフローを特徴としていますよね。 例えば、ポリゴンにサブディバイドだかスムースだか、なんだったっけな、いわゆるサブDのようなことをしてる状態で、なんらかの都合で元のポリゴンの一部を削除したとします。ポリゴンに穴を開けるとかね。 すると、サブディバイド済みのメッシュではいきなり違う場所に穴が開いたりします。 おい、穴そこじゃねえよ!と秒速で突っ込みを入れます。 
 元のトポロジの上にオペレータ(モディファイヤ)が乗っかって、対応した位置のポリゴンを削除するという仕組みではないのでしょうかね?  ローポリで5番目のポリゴンを削除した。サブディバイドイ後はポリゴンが増えているから、サブディバイド済みの5番目のポリゴンは当然違う場所にある。 でもヒーローソフトウェア様にしてみれば、「ユーザは5番目のポリゴンを削除しろと言ったんだから、はい、私は5番目を削除してますが、何か?」 ということなのでしょうか。 違う位置に穴。 作業をすると俺のモデルは破壊される。 これぞまさに破壊ワークフロー。 さすがヒーローです。


・・・・いや、すいません、俺が分かってないだけの可能性が高いです。本当はちゃんとできるのでしょう。 

ただ、XSI の非破壊ワークフローの感覚で退廃的にやろうとするとダメな可能性があると思いました。 XSI的堕落の道を脱し、正しき手順で正しき作業をする。 それを教えてくれているのだと思います。 骨入れる前にモデル決めろ! テクスチャとかUVとかも決めろ! 後戻りするな! モデルの段階でちゃんとクライアントOK取って、変更は絶対できない旨確約を取れ!   正しいCGですよね。昔はみんなこうでした。




おお、話が大幅にそれましたが、ええと、はい、XSI で作りましたってのを言いたかっただけなのです。すいませんすいません。


あ、レンダはアーノルドだそうです。





http://www.fcrb.net/



関わらせてもらったのはいいけど、俺とナイキなんて、永遠に接点がないだろうなあ・・・・。 スニーカとか買わないもんなあ。サッカーもよく知らないし。

クロックスのサンダルみたいなの出してくれたら買うこともあるかもね。駅の床で絶対に滑らない、終電逃して2時間歩いても苦痛にならないサンダルを希望しますナイキさま。








.

| | コメント (3) | トラックバック (0)

2014年6月23日 (月)

ICETreeビューの取得。

書きかけで保存したまま放置されている記事もけっこうあるんですよね。 


さっきサッと見てみたらこんなものが出てきた。 2012年8月とからしい。 ICETree ビューを取得するスクリプトですね。 ドックされたもの、フローティングのもの、両方取得できるようです。 選択中のオブジェクトからたどるとかではなく、現在開いている ICETreeビューからたどるというアプローチをしようとしたのでしょう。  2年も前なので忘れちゃったけど。



JScript
------------------------------------------------------

var oViews = Desktop.ActiveLayout.Views;

// ドックICETreeビューを捜索
var oICETreeViews = oViews.Filter( "View Manager" )(0).Views.Filter( "ICE Tree" );

// なければ浮遊ICETreeビューを捜索
if ( oICETreeViews.Count == 0 ) oICETreeViews = oViews.Filter( "ICE Tree" );

Logmessage( "見つかった ICETree ビューの数 : " + oICETreeViews.count );

// 見つかったビューのうち、最初のビューから、container アトリビュートをゲット=これが ICETree オブジェクト
var oICETree = oICETreeViews(0).GetAttributeValue( "container" );

// 対象になる ICETree が特定できたので、あとは何をしようが自由
var oICENode = AddICENode("$XSI_DSPRESETS\\ICENodes\\GetDataNode.Preset", oICETree );

------------------------------------------------------


あ、これだとドックされたものが無ければフローティングを探すという風になってるのか・・・・・まあいいや。




今さら役に立つことも、まあ、なかろうて 。・゚・(ノД`)・゚・。

| | コメント (0) | トラックバック (0)

2014年6月20日 (金)

アニメ 戦え!XSI男 最終話「SOFTIMAGE開発終了」。

こんな作品がっ・・・!!

コメント欄で教えてもらいました。



http://www.nicovideo.jp/watch/sm23815349

( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \
ハライテー サイコウダ




頑張れ XSI 男
生首猿に負けるな
生首だったら、XSI にもあるぜ! その生首はもちろん XSI 男だし、驚いたことにプロシージャルな形状調整機能まであるんだぜ。


あんまり可愛くないが筋肉XSI男もいるし、なぜか犬だって象だっているんだぜ。


こうなりゃジャイカさんもクラブボットくんも、みんな出て来い。 キャラ層の厚さじゃ誰にも負けねえぜ XSI !!!




そんなとこで勝負してねえよとか言わないで下さい。
キャラで勝負しましょうよ。
キャラの数ね。
あとキャラの愛嬌。





っていうか実際、大スタジオのペキペキパイプラインツールとかで固められた Maya 様とかを除いた出荷状態で比べれば、XSI がキャラクタアニメーションに一番適しているソフトウェアなんじゃないのかね。 いや、ペキペキパイプラインツール有りの Maya 様よりも向いている気がしてしまうんだよな。 狭い村の中でずっと過ごしてきた俺は、最近まで知らなかったよ。


ところで Maya 様 Max 様には、何かマスコットキャラ的な人は、いないのでしょうか? Max の場合、あの Biped 人形がそんな感じですか? Maya には何もないのかな?




でも実は、生首猿とも仲良くなりたいです。
Maya様よりは良いんじゃないの Blender。
いじってみたいなあ。
スケマティックとエクスプローラに相当するものはあるのかしらん。
アウトなんとかとかハイパーなんとかみたいな故障品ではないやつが。

でも Blender で仕事できるのかなあ。趣味じゃねえからなあ。生活かかってるからなあ。 まあ、Blender で業務する会社もあるにはあるらしいが、食っていくこと考えれば圧倒的に Maya/Max だよなあ。







話がそれまくってますが、ええと、楽しい動画でした。続編を期待します。


あ、作ったの、俺じゃないですよw
ほんとだってば

.

| | コメント (0) | トラックバック (0)

2014年6月12日 (木)

何個?。

Maya 様で、現在選択しているオブジェクトの数をパッと調べる方法、ありませんかね?


やっぱ、Heads Up Display ってことになりますか?

Count1

この Object Details ってのをオンにすると、どうやら選択している数が表示されるように見えますね。


もちろんこれでいいのですが、ただ、余計な情報もいっぱい表示されてて、邪魔なんですよねー。 しかもこの Heads Up Display って、文字がすんげえ読みにくくない?  なんかこう、字が小さくて、ボールド体みたいになってて、読めないんですよ。 表示に使うフォントとか変えられないのかね?


XSI だと、右上に常に出ているんですよね。

Count2

これはビューポートに干渉しないから、見づらくなったりはしない。 Maya でもこういう感じでどっかにひっそりと表示されてればいいのになーって思いました。




っていうかさ、Maya様って全体的に、ほんと、目的のオブジェクトを正確に選ぶのがすげえ難しいと思うんですよ。 例えばキャラクタアニメーションやってて、手足のコントローラをつかもうとすると、必ず間違えて違うコントローラをつかんでしまう、とか。 髪の毛など多関節の揺れ物のコントローラを複数つかんで回転のキーを打ったら、実は頭部の裏にある変なものも選択していて要らん物に回転のキーを打ってしまった、とか。


だから、選択しているオブジェクトの数がパッと見れるだけでも、現在の選択状態が正しそうかどうかくらいは、なんとなく分かるので助かるんですよね。 あれっ 4つ選んでるぞ、 この髪の毛の房はコントローラ3つのはずだから、何か余計なもの選んでるな? とか。


そもそも Maya の選択がし易ければ、つまり Mayaでセレクトのミスが少なければ、現在選んでいるオブジェクトの数なんて知りたいとも思わないかもしれないですね。 選択でいつもストレスがあるから、選んでいるブツの数なんていう間接的な手段で情報を得ようとしちまうんだな、きっと。





まあともかく、そんな気分でどうでもいいスクリプトを書きました。

(mel)
-------------------------------------------------------
// 何個?  選択中のオブジェクトの数を数えるだけ。(一応、リストアップもするけど)

nanco();
global proc nanco(){
    string $oSels[] = `ls -sl`;
    string $Display1 = "";
    string $Display2 = "";
    $count = size( $oSels );
    
    for ( $i=0; $i<$count; $i++ )
    {
        $Display1 += $oSels[$i];
        if ( $i != $count-1 )
        {
            $Display1 += ", ";    
        }      
    }

    if ( $count == 1 )
    {
        $Display2 = "  [ " + $Display1 + " ]";
    }
    else if (  $count != 0 )
    {
        $Display2 = "  [ MULTI ]";
    }
    print ( "[ " + $Display1 + " ]\n" );
    print ( "何個? : " + $count + $Display2 + "\n" ); 
}

-------------------------------------------------------

Nanco.mel


実行すると、現在選択しているオブジェクトの数をログします。 そんだけ。 一応、スクリプトエディタ内にオブジェクト名のリストアップもしてます。

Count3

いやーほんと、どうでもいいスクリプトですねw


しかも、無駄の多い、シロート丸出しのコードなんじゃないでしょうか。まあいいや。 何個か知りたいんですよ俺は。





選択しづらいと言えば、グラフエディタの中もそうなんだよなあ・・・・ 目的のキーとか、接線ハンドルとか。  ががっとドラッグすると、いつも余計なものが含まれてしまう。 だから Ctrl とか Shift とかを使って、ひとつひとつ、慎重に選択に追加していく感じになる。 モーション作業中は、これで気持ちが殺がれてしまうんですよ。  何がいけないんだろう? なぜこんなに選択しづらいのか、選択する時に Maya 様はどう振舞おうとしているのか、知りたいですね。 どういう挙動をするから俺は気に入らないのか、を分析したいのです。それさえ見えてくれば、良くない状態を上手く避けられるクセが付けられると思うんだけど、なかなか見えて来ないんだ。 Maya さま。



マニピュレータの軸も選択というか、ドラッグしづらいですよねえ。 例えばローテーション用の丸いマニピュレータ、X だけを回転させたくて赤い部分をドラッグするわけですが、クリックする位置がちょっとズレているのか、XYZ 全部回っちゃったり、あるいは選択が外れちゃったり、そういうのしょっちゅうあります。 キーーーっとなります。 なぜこうもやりづらいのか、クリックする位置なのか、リリースするタイミングなのか、などなどこれも法則が見えてくればいいんだけど、見えてこないなあ。









Maya は、普通のモーション仕事ならまあ問題なくできるくらいにはなりましたが、だからと言って鼻歌歌いながらスイスイやってるわけじゃないです。 キーーーーっとなりながら、胃を痛めながら、モニタをぶん投げながら、苦しんでやってます。 生命の危険すら感じます。




追記:
コメント欄で、中島さんがステキな MEL を書いてくれました。選択中のオブジェクトの数を表示するカスタム Heads Up Display です。 中島さん、感謝します(゚∀゚)

.

| | コメント (11) | トラックバック (0)

2014年6月11日 (水)

SAC for Maya様。

SAC 必要なんです。俺には。 アニメーションを他のオブジェクトに複製するツールです。

XSI 版は、やはり古いな・・・・ 2007年らしい。
http://junkithejunkie.cocolog-nifty.com/blog/2007/11/sac_b2b3.html



(mel)
-------------------------------------------------

//    SAC
//    最初に選んでいるオブジェクトのアニメーションを、2個目以降に選んでいるオブジェクトにコピーする
string $sels[] = `ls -sl`;
copyKey -time ":" -hierarchy none -controlPoints 0 -shape 1 $sels[0];
pasteKey -option replaceCompletely;
-------------------------------------------------

SACforMaya.mel




アニメーションのあるオブジェクトをひとつ選びます。 次にアニメーションをコピーしたい行き先のオブジェクトをいくつでも選びます。 その状態でスクリプトを実行すると、最初のオブジェクトのアニメーションが、2つ目以降のオブジェクトにコピーされます。 そんだけです。


いやほんと、だからどうだというアレではありません。 XSI でずっと使ってきた SAC と同じ感覚でアニメーションをコピーしたかったというだけです。 標準のアニメーションコピペが面倒だなーとか、ペーストのオプションで replace とか merge とか気にするのかったるいなーとか感じたので、SAC っぽい感じにしようとしただけなんです。 全然大したものではありません。





コピー元のオブジェクトでアニメーションされていないチャネルは、コピー先では何もいじらないようですね。 

例えば、位置のキーはあるけれど回転のキーが無いオブジェクトAをコピー元にしたとします。 一方、コピー先であるBには位置のキーも回転のキーもあります。 

この状態で実行すると、Aの持つ位置のアニメーションは、Bの位置のアニメーションを上書きします。 Bがもともと持っていた位置アニメーションは跡形も無く消え、Aと同じアニメーションになるということです。 一方、Aは回転アニメーションを持っていないため、Bがもともと持っている回転アニメーションをいじりません。 Aに合わせて回転アニメーションを消し去ったりはしないということです。 結果Bは、自分がもともと持っていた回転アニメーションはそのまま残り、位置アニメーションのみAに合わせて上書きされます。







スクリプティング的には、よく分からないまま人に聞きながら書いちゃったんですが、一応ちゃんと動いているように見えるなあ。 落とし穴あるかなあ。 何か気づくことあれば、どうかご指摘下さい。


copyKey コマンドでは、 -controlPoints 0 -shape 1 あたりがよく意味分からんのだよな。  それ以外は、 タイムレンジの指定が数値ではしていなくて ":" (コロン)のみなのでこれは全部のキーを表し、階層の下位のオブジェクトは無視して今選ばれているオブジェクトのみを対象にする。 そしてコピーするアニメーションは選択しているブツのうちゼロ番目(つまり最初の1個)から取ってくると書かれていますよね。 そういうつもりで書きました。

pasteKey コマンドでは、-option replaceCompletely ってのが、元のアニメーションをまるっきり置き換えてしまうというオプションですね。 ただし前述のごとく、コピー元のオブジェクトでキーが無いチャネルは、無視するようですね。  そしてこの書き方だと、コピー元のオブジェクト自身にもペーストしちゃってますね。 まあ問題ないですよね。




とかなんとか。




まだまだ恥ずかしいくらいの初心者ですよ、ええ。 必死で自分のブログにメモですよ。


でも mel は初心者レベルでスルーしてしまいたい気分だなあ・・・。python に走った方が良さそうに見えるんだよなあ。




XSI村で話しでいだ JScript なまりは、ここでは通用しねのがな・・・・ mel はなんだが変だすけやりっとねんだげどな・・・










.

| | コメント (0) | トラックバック (0)

2014年6月10日 (火)

超 Isolate for Maya様

やっぱ超 Isolate ですよ。


Isolate の機能って、よく使いますよね?  選んだブツだけを、一時的に単独表示させるやつ。 

Choisolateformaya

特に Maya様ったら、狙ったブツを正確に選択するのが破滅的に困難なソフトウェアなもんだから、見えているブツをディスプレイレイヤその他でなんとか整理した上で、更にその時その時で Isolate ですっきりさせて作業するみたいなことが多いです俺の場合。



しかし XSI と同じく、Maya様の Isolate はビューポートごとなんですね。俺は全てのビューでイッキに Isolate したい場合が多いので、XSI ではそのようなツールを書きました。 それが超 Isolate でした。 わー 2007年だって。そんな昔からこのブログ存在してたんだねえ。 今では書く記事の内容がヒジョーに変わってしまってますがねえ orz



Maya 様でも超 Isolate が欲しかったんですが、全部のビューでイッキにやる、というスクリプトの書き方が分からなくていつものように先達のお方に教えてもらいました。 ってよりも、書いてもらいましたw


(mel)
-------------------------------------------------
//    超Isolate for Maya様 €€by DO
ChoIsolate();
global proc ChoIsolate(){
    string $allPanels[] = `getPanel -typ modelPanel`;
    for($panelName in $allPanels){
        if(`isolateSelect -q -state $panelName` == 0)
        {
            isolateSelect -state 1 $panelName;
            isolateSelect -addSelected $panelName;
        }
        else
        {
            isolateSelect -state 0 $panelName;
            isolateSelect -rs $panelName;
        }
    }
}
-------------------------------------------------

ChoIsolateForMaya.mel



実行すると、現在選択しているブツが、全てのビューで単独表示になります。


getPanel - type modelPanel ってのがポイントでしょうかね。 これで全てのビューポートを取得できているようですね。 正確には、「ビューポートの名前を文字列で取得できている」 ってことなんでしょうかね?  で、全部のビューポートをループしてひとつひとつ、Isolate を実行していくという感じですね。 -addSelected と -rs が無いと上手く働かないですね。 勉強不足でまだ咀嚼できていませんが・・・。



DOさんありがとうございます。助かります。これで少しは快適になりました。少しはね。少し。   Isolateが快適になったという意味ですよ。 Maya様が快適だとは言っていません。ええ。言ってません。





XSI 仕事やりてえ
XSI 仕事募集ちう





.

| | コメント (1) | トラックバック (0)

2014年6月 9日 (月)

憤怒の数値入力は Alt でポン。

そりゃ怒りますよ。


Maya様の数値入力ですよ。 チャネルボックスや、グラフエディタや、アトリビュートエディタで数値入力するじゃないですか。 その後、Enter 押して値を確定させますよね。


でもその時、カーソルが数値入力ボックスの中に残ってしまっているんですよね。 となると、操作のためにその直後に押したキーの文字が、さっき値を入力したボックスに入ってしまうわけです。




典型的なパターンは、チャネルボックスに数値入力して、そのままホットキーでキーを打つ操作でしょうかね。

例えばこういうのです。

Num_cb1

ポジションの Y に 0.1 とか入力しました。
Enter 押して入力を確定させます。
そのままポジションにキーを打ちたい。
なのでホットキーで shift + w を入力します。



すると、キーが打たれる代わりに、ポジションの Y に W が入力されます。

Num_cb2

なんなんですかこれ (゚Д゚)


Enter 押した後も、入力のカーソルがボックスに残っちゃってるんですよね。だからホットキーの文字列が入力されちゃう。

だいたいね、ポジション Y の値が W ってなんの暗号なのよそれ。数値じゃねえよそれ。


しかもポジションのキー打つって動作はすごくしょっちゅうあるわけですがキーは打たれずに代わりに W なんて文字が出て来るもんだから、笑われているようで更に腹が立ちます。 「www その操作じゃキー打たれてねえよwww」  って言われてるみたいな。  ほんともう、まさにホットキーですね。 ホットにキーーーーッって憤怒します。 

ボックス以外のどこかをクリックすると、初めて入力モードが解除されますね。 だから仕方なく、Enter 押した後でどこかをクリックしてます。すんげえめんどくさいです。 しかもビューポートの中をクリックしちゃったりすると、選択が外れてしまってまたキーーーーッとなります。 なのでビューポートよりも上のボタンが並んでいるところの余白などを狙ってクリックするしかない。 ガンガンモーション付けている最中に、こんな操作やってられますかっての。 



一方で、タイムスライダ右側にある現在フレームを入力するボックスはEnter 一発で入力モードが解除になってくれるんですよね。 これでいいんですよ。 全てのボックスがこうなってりゃいいのに。 

かと思いきや、シーンのフレーム範囲を入力するレンジスライダのボックスは、外側のスタート/エンドはやはり Enter 押しても入力が残ってしまいます。 

でも、内側のプレイバックのスタート/エンドのボックスは、Enter 一発で行けます。 

Num_rangeslider



なんですかこの不統一は

長く Maya様を使ってきた皆様は、これ、平気なんですか?  改良のリクエストとか、今まで出して来なかったのでしょうか?  出しても聞いてもらえないとか?  いやあ、有り得ないなあ。  そういうところがいちいち気になるのは、俺のようなあっちの村から来た人だけなのかなあ。





というストレスを長く溜めてきたわけですが、ちょっと前に色んな人に聞いてみたら、なんとなく解決しつつある気がします。







まず、チャネルボックスに限って言えば、テンキーの Enter ではなくフルキーの方の Enter を押すと、一発で入力モード解除になると教えてもらいました。 ちねんさんありがとうございます。


なるほど、テンキーで数値を入力しても、Enter だけはフルキーで押せばいいんですね。 そういう手グセを付ければなんとかなるかもですね。

でもこれ、有効なのはどうやらチャネルボックスだけなんですよ。 前述のレンジスライダやら、アトリビュートエディタやら、あとはグラフエディタなんかでやってみると、たとえフルキーの Enter を押してもやっぱり入力が残っちゃうんですね。 


この不統一ぶり、なんだかなあ。 チャネルボックスの数値入力ボックスと、グラフエディタの数値入力ボックスは、プログラミング的には同じものを使っているんじゃないの? 違うのかな。 普通はそうだよねえ。 Maya様の場合は、チャネルボックスをプログラミングした人と、レンジスライダをプログラミングした人で、全く別のライブラリを利用して開発してしまったためにこのような不統一が起こっている、とか? 根拠の無い想像ですけど、ほんと、不可思議ですよ。 書いた人出て来て下さいよもう。







次に教えてもらったのは、Enter を押した後、ポンと alt キーを押すというもの。


おおっ これは良い! alt を押すとその時点で入力モードが解除されますね。 チャネルボックスでも、グラフエディタでも、レンジスライダでも、アトリビュートエディタでも、どこでも有効です。 



例えばグラフエディタで、キーフレームのフレームを入力します。

Num_ge1

この状態ではまだ入力モードが解除されてないので、ホットキーを押すとその文字がタイプされてしまいます。


でもここで ポン と alt キーを押すと・・・・

Num_ge2

入力ボックスから水色のハイライトが消えて、入力モードが解除されたことがわかります。


うん、これがいい。 1つキー操作が増えるけれど、 Maya様で alt キーですからね、これは普段からもう、ホームポジション的に alt に手を置いているわけで、それほど苦痛ではありません。  itoh さん超ありがとうございます!!!






ということが分かって以来、なるべく alt を押すクセが付くように意識して来たのですが、先ほどふと思いました。



   Enter 押さなくても alt だけで行けないかしらん





   ・・・・・行けました (゚∀゚;) マジデ・・・



チャネルボックスでも、グラフエディタでも、レンジスライダでも、アトリビュートエディタでも、どこでも有効のように見えます。 Enter → alt と2つ押す必要はない。 alt だけでいい。


なんだ、もう、これでいいじゃないか(゚∀゚)






すいません、ちょっと、あなたもやってみてくれません? 俺のところでは、これで上手く動いているように見えるんです。 Enter を押すのではなく、alt を押して値を決定する。 すると入力モードは即座に解除され、そのままホットキーを押しても文字が入力されることなくちゃんとホットキーに割り当てられた動作が起動される。 あなたのところでも再現しますかね?  再現するなら、もう、これでいいことにしませんか。どうですか。  ちなみにこちらは 2012 SP2 64bit,  2013 Extension2 64bit で試しています。 2014 などではまだ試していません。


よろしくご査収下さい。





.

| | コメント (2) | トラックバック (0)

2014年6月 6日 (金)

fps設定。

巧妙なトラップが多いですよ。さすが Maya様、一筋縄では行かない。



Maya様 って、デフォルトのフレームレート設定が 24fps ですよね。 スヴァらしい。 この世の中から 24fps 以外無くなればいいと毎日祈っている俺としては、ステキなデフォルト設定です。 Maya様愛してます。



で、このデフォルト設定は、いったいどこで設定されているのか。

そりゃ Preference に決まってますよねえ。 Preference って、普通、そういうものですよねえ。

Fpssettings1


ここをその時のプロジェクトの仕様に合わせて、仕方なく 30fps に設定したり、嬉々として 24fps に設定したりします。 

すると、次回からのシーンでその値になっているのかと思いきや、現在開いているシーンのフレームレートまでもが変更されるので、おや? Maya の場合は、初期設定としたいフレームレートが現在のシーンにも否応無く適用されてしまうのかな・・・・? と一瞬疑問に思いました。 そうではなく、そもそも違うものだと後で分かるのですが・・・・。





・・・・で、その後、新規シーンを実行したり、Maya を再起動したりします。フレームレートの設定が、先ほど設定した値になっているはずです。

・・・・なってねえ
fps の値は、変更前の値に戻ってしまってます。


なんでだよ Maya様
俺が初期設定を変えたんだから、その初期設定を勝手に変えんじゃねえよ
(# ゚Д゚)ドルァ

何度やってもこうなので、疲れ切って先輩諸氏に教えを乞うと、秒殺で答えが返って来ました。 「あ~ そこね。 分かりにくいよね」 みたいな感じで。


デフォルトのフレームレートの値は、Preference ではなく、New Scene Options の方で設定するそうです。

Fpssettings2

基本だそうですね。Maya様使いならみんな知っているという。


そうですか。



なんでやねん



普通そういうのは Preference でやるもんでしょうが

これだと、「初期設定(デフォルト値)」を変えているんじゃなくて、「現在のシーンの値」 を変えていることになるじゃないですか。 そんなの、普通 Preference って言わないよ。

全部その法則ならまあいいのですが、Preference 以下の他の設定は基本的に皆、初期設定(デフォルト値)をいじるためにあるじゃないですか。なんでフレームレートだけ、現在のシーンの値の変更になるんですか。 わざとやってんですか Maya様。





Maya様を長く使っている人に話を聞くと、昔は Preference の設定しかなかったそうで、そしてこれがちゃんと 「初期設定(デフォルト値)」 として扱われていたそうです。 でもその後、現在のような 「初期設定は New Scene Options の方。 Preference の方は、初期設定ではなく、現在シーンの状態をいじるために使う」 という仕様に変更なったそうです。 俺はそのように解釈したのですが、間違っていたら指摘して下さい。


専門学校で Maya様を教える授業をやっておられる某先生は、アニメーションのクラスの冒頭でこれについて説明するそうです。 それくらいポピュラーなトラップだということですね。 了解しました。






いやあ、勘弁して下さい Maya様。

一度覚えてしまえばなんともないってのはありますけどね。それにしてもひどいね。 作った人出てきなさい。小一時間説教したいです。





もっかいまとめると、


フレームレートの初期設定(次回からのデフォルト値)を変えたい → New Scene Options


現在のシーンのフレームレートを変えたい → Preference




ってことでよろしいでしょうか。作った人出てきなさい。




.

| | コメント (0) | トラックバック (0)

« 2014年5月 | トップページ | 2014年7月 »