ON-BLOG

CGのこと、あれこれ書いてます。

PySide勉強 その五

次は、前回作ったUiを改良して UIに変化を追加する流れを見て見ます。 新たにLISTを作成して、そこにパラメータを追加するという 流れにしてみます。 #-'''- coding: utf-8 -'''- from PySide.QtCore import * from PySide.QtGui import * from maya.app.gen…

Pyside勉強 その四

いままでのツールで一点おかしな部分があります。 それはウィンドウがMAYA画面の後ろにいってしまう点です。 なんでこんなことがおきるんでしょうか?その原因はMAYAのウィンドウがPySideで 作成されているのが、起因になっています。 前の記事でも書いてま…

Pyside勉強 その参

次は Pysideの肝になる継承を含んだ例です。 こちらも前前回の記事に載っているものですね。 #-'''- coding: utf-8 -'''- from PySide.QtCore import * from PySide.QtGui import * class Form(QDialog): def __init__(self, parent=None): super(Form, self…

Pyside勉強 その弐

続き。ハローワールドのスクリプトはこれぐらいにして 続いてプッシュボタンについて。 これも前回記載したサイトに載っているものです。 こちらはイキナリMAYAに落とし込んだコードです。↓ # -'''- coding: utf-8 -'''- import sys from PySide.QtCore impo…

Pyside勉強 その壱

Pyside自体は今までも使ってきました。 が、その場しのぎでずっと使ってきました。数日前に数見たらPysideで作ったスクリプトが20個ほど。 ただ、これらはいろんなサンプルから作っただけなので 基本で躓くことが多く、結構時間が掛かってしまってました。ち…

Jiggleについて

使おう使おうと思って、中々手が出なかった【Jiggle】デフォーマ。 今日というかさっき、テストしたので メモ代わりに記載。初めに【Jiggle】とは? →揺れに当たる。 私はこれを見て、やりたいなぁと思いました。 これは直ジオメトリですが、骨などにも使え…

膝パーツの組み方

よくある事例なんですが、いつも接続で?ってなるのでメモ。画像みたいに、ひざにパーツがついてる時があります。 特にメカ系なんかに多いんですが… これを足の骨だけでそのまま回すと こうなるかと思います。 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ このままだと、硬い物等で違…

NameSpaceをすべて削除

リグ組んでたり、アニメーションを読み込みしてたりすると 偶にネームスペースが邪魔になることがある。 その都度一々、ネームスペースエディタを開いていたら 面倒なので、マクロを作りました。 ※家用。 # -*- encoding: utf-8 -*- import maya.cmds as cmd…

カメラを作成

スクリプトからカメラを作るコード。 これ自体はなんら意味のないものですが これに色々載せると、自由なカメラリグに。というか、Aimカメラの作り方がわからなかったので それを実行しただけですが… def Normal_Camera(self): cameraName = cmds.camera() c…

名前変更

まぁよくあるやつ。 何回書いたことか…って事で今後ググらないように、雛形をここにメモ。 import os import glob #パス指定 path = "D:/demo" #拡張子FBXだけ取得 files = glob.glob(path + '/*.fbx') for f in files: #例題 #player_mot_0000.fbx #↓↓↓↓↓↓↓…

animCurveについてメモ

animCurveについてメモ。 いつもいつもあれ?なんだっけ? ってなるんで、メモ代わりに残こそうかと。ヘルプを見るとこれだけあります。 animCurve animCurveTA animCurveTL animCurveTT animCurveTU animCurveUA animCurveUL animCurveUT animCurveUU 以下…

小物メモ2

続き選択のコンストレイントを削除するやつ。 ツール作るまではこれで、コンストを削除してました。 import maya.cmds as cmds def SelAll_Const_Del(): sel= cmds.ls(sl=True,type="constraint") for i in sel: cmds.delete(i) 続いて、これは入力した文字…

小物メモ

MacBookAirのデスクトップに放置してた、スクリプトをメモ代わりにここに残そうかと。●SpeedChange FPSを簡単に変えるスクリプト。 モーション作成時に、一々変更するのが 面倒だったので作ったと思います。 # -*- encoding: utf-8 -*- import maya.cmds as …

色々バックアップするツール

ちょいと用があり、昨日書いたスクリプトです。 こんなやつです。 シーンファイル、Xgenファイルをテキストベースのメモを残してバックアップするツールです。 Xgenはお知り合いからの要望で含めてます。 処理は簡易です。 セーブして、そのファイルをコピー…

蛇みたいな構造体を作る

どっかのサイトで見た蛇みたいなリグを作る方法。 スパイン使うよりも簡単で、何よりも軽いのが特徴。こんなやつ↓ hebi from tommy_on on Vimeo.やり方は超簡単。 sphereを原点に出して、それを複製して横にずらします。 この時、オブジェクト同士が重なり合…

親にグループを作ってあげる

タイトル通りで、急遽家でも必要になった為 作りました。 半端なやつですが、メモようにこちらにもアップ。リグ作るときに、トランスフォームを「0」にする為、親のオフセット値を入れるとおもいます。 それの自動化版です。 特になにもしてない、マクロです…

sphinxについて

必要になったのでメモ。 ※もう半年前のやつですが… 実際仕事では、バンバン使ってるのでsphinx自体の説明は割愛。 要はドキュメント生成ツールとだけ。 sphinx-users.jp まずはインストールから。 前段階だが、Pythonをインストールももちろんしておく。 ※バ…

FormLayoutについて

FormLayout結構使ってるんですが、たまに意図しない配置になったりするので 昔書いた絵をサルベージしました。って書いてますが正直Help見ればいいですが… とりあえずその昔(MAYAを本格的に触り始めた10ヶ月前ぐらい)書いた絵を 要はアタッチ系がよくわかっ…

Pythonのメモ

こんな事できるなんて…と思ったのをメモに【リストを変数に個々に格納】 Sel1,Sel2,Sel3,Sel4 = ["polyShpere1","pTorus1","pCylinder1","pCube1"] print Sel2 結果↓ pTorus1 こんな事できたとは… あと、内包表記。 今まで少しだけ使ってたんですが、いろん…

キーワード引数のメモ

キーワード引数にリストを入れるとタプルになって 無理やり文字列操作でリストにしてたんですが 実は引数の前にアスタリスクを入れるだけでよかったという事が わかったのでメモ。 かなり初歩的な事っぽい。。 def testFunc(*args): print(args[0:]) nodelis…

続・オーダー変えるやつ

更新に時間がかかりました‥ 実際は8割り程度結構前にできてたんですが まぁ色々ありまして‥ と前置きはともかくいきなり完成コードを ↓ # -*- coding: utf-8 -*- import maya.cmds as cmds from functools import partial import re import ast def CreateLo…

オーダー変えるやつ

続けて次はアニメーションの結果を変えずに オーダーを切り替えるスクリプトを書いていきたいと思います。 SI時代にも作成していて、さらに昨年MAYA版も作ったんですが 色々あり、闇に消えてしまったので一から作り直してみたいと思います。 ※今回は色々時間…

完・続・スクリプト書いてみようかと

前回までで、UIとコマンドができたので、組み込みと テストをして、完成させたいと思います。では早速、まずは関数化していきます。ある程度前回の記事で仕様と、どうすればいいのか決まってるので それらを踏まえ、加筆しました。と書きましたが、まぁエラ…

新・続・スクリプト書いてみようかと

前回までで、書き出しと読み込みのコードが【とりあえず】できたので それらをテストも含めて、関数化してみます。まずは書き出し。 関数にする前に、一番はじめに書いた仕様を確認。 3.外部に保存するコマンドとそうではない、イテレーションが早いコマン…

続・スクリプト書いてみようかと

前回までで、選択したものの値などを外部に保存することまでできました。 今回は引き続きコードを書いていきたいと思います。次は、まず前回までで、できたものを整理します。 始めに現状だと一個のオブジェクトしか対応していないので それを対応する為 配…

スクリプト書いてみようかと

超久しぶりにブログ書きます。 というのも色々本当にありまして…… さておき では今回は割とガッツリスクリプトを書いてみようかと思います。はじめに仕様面を決めてみようかと思います。お題:ポーズセーブスクリプト 制作理由:MAYAデフォルトでポーズだけ…

フェースを表示トグルするツール

久しぶりに更新します。とある事で必要に駆られたので作りました。 ※WEBにもっといいやつありますし、あたらしいエクステンションには標準で搭載されてますが… ポリゴン表示をトグルです。 一応ルールがあります。 1.初めてフェースを非表示にする時は、オブ…

【覚書】maya python入門 其の十三

今回はmaya.cmdsを使ってXMLの簡単な例を書いてみたいと思います。SIではJSを使えば、結構簡単に出力、読み込みができましたが Pythonでやるのが、未経験だったのでメモに。今回は、シーンのディスプレイレイヤーを取得し それをXMLとして出力してみます。 …

argsってなんですのん?

会社の人に説明するときに、単純に【引数の事】でアーギュメントの略だよ。 と伝えても、うん? って感じだったので、コードと共に説明した事をメモ。 def test_code(*args): print args[0] print args[1] test_args1 = "code1" test_args2 = "code2" test_c…

【覚書】maya python入門 其の十二

今回もWEBで学んだことを書いていきます。(確かWEBだったはず…) 内容は頂点にモデルを配置するといった、簡単なモノです。 ここから、ランダムにしたり、計算によって配置したりできますね。 いきなりコードを… import maya.cmds as cmds if cmds.window("Ra…