Mayaでの位置合わせ MEL

mayaでの位置合わせするためのメル

参照元はこのサイト
http://www23.atwiki.jp/9boz/pages/30.html

只このままだと、Freezeなどで原点がずれたオブジェクトの場合その分だけ位置がずれる

そこで、ピボットポイントを基準に移動させるようにして、ピタッと位置が合うようにした。

下記が改変した物

位置

string $object[] = `ls -sl`;

int $arraySize = `size $object`;
if ($arraySize < 2)
print "only one object selected";
else

{
float $e[] = `xform -q -rp -ws $object[0]`;
move -rpr $e[0] $e[1] $e[2] $object[1];
}


回転

string $object[] = `ls -sl`;

int $arraySize = `size $object`;
if ($arraySize < 2)
print "only one object selected";
else

{
float $e[]=`xform -q -ro -ws $object[0]`;
xform -ws -rotation $e[0] $e[1] $e[2]  $object[1];
}

mayaのビューポート上でのテクスチャ解像度の変更


 mayaテクスチャ解像度の変更メモ

重いシーンを軽くする為に使う

背景などでテクスチャが原因でビューの表示が重くなった時に一括で[texture resolution]を変更する

string $tex[] = `ls -type "file"`;


for ($texRes in $tex)
{

if (!`attributeExists "resolution" $texRes`) addAttr -ln "resolution" -at long $texRes;
 
setAttr  ($texRes + ".resolution")  32;
}



最後の「32」の所を任意の数字に変更

Ztreeメモ

Ztreeメモ

Zsphereでツリーを生成するプラグイン
触ってみた感じのざっくりとしたメモなので間違いがあると思う



メッシュにするときには Mesh>Gradialで何角形か指定して、MakeAdaptiveでメッシュ化し、
DleteLoopsで減ポリもできる


Lsys StoreボタンでCopyZSの情報を更新するみたいでそのままでいくとうまくいかない(Version5以降?)

ハードエッジとソフトエッジを判別してハードエッジのみにクリースを入れる

ハードエッジとソフトエッジを判別してハードエッジのみにクリースを入れるmel

クリースはポリゴン分割せずにシャープなエッジを作成できるが、フランクにぶっ壊れるので
これを使うと便利かも

コードは下記のサイトから、入れる場所が「script」ではなく「shelf」なのが注意点
http://www.undoz.com/blog/tag/script



アウトライナーを複数表示

アウトライナーを複数表示するコマンド


window;
frameLayout -labelVisible false;
string $panel = `outlinerPanel`;
string $outliner = `outlinerPanel -query -outlinerEditor $panel`;
outlinerEditor -edit
-mainListConnection "worldList"
-selectionConnection "modelList"
-showShapes false
-showAttributes false
-showConnected false
-showAnimCurvesOnly false
-autoExpand false
-showDagOnly true
-ignoreDagHierarchy false
-expandConnections false
-showNamespace true
-showCompounds true
-showNumericAttrsOnly false
-highlightActive true
-autoSelectNewObjects false
-doNotSelectNewObjects false
-transmitFilters false
-showSetMembers true
-setFilter defaultSetFilter
$outliner;
showWindow;

http://www.peeldog.com/code/maya/19-multipleoutliners

3dCoatメモ群

3dCoatメモ群


目的
概要
機能場所
補足

この順番で記述する

基本操作


画面回転 alt+ドラッグ
画面拡大 alt+右ドラッグ
画面経高移動  alt+中ボタンドラッグ
ペンの大きさ、右クリック押しながら左右にドラッグ
ペンの深度、右くりっこ押しながら上下にドラッグ
シンメトリー 「s」
不透明度 減「o」増「p」
カラーピック 「c」
カラー入れ替え「v」
ワイヤーフレーム表示 「w」


日本語化


Help>Languages>Japanese
ヘルプの言語も日本語してくれるのでかなりわかりやすくなるのでオススメ



3Dペイントをする


インポート>ピクセルペイント用モデル>後に開かれる画面で解像度やUVセット名を決定
(この時Defaltと名前のままにするとエクスポート時にバッティングが起こるので必ず固有名に!)

オブジェクトを追加>追加したいオブジェクトの解像度セット名を決める。



テクスチャのインポート


テクスチャ>インポート>カラーやその他を選択
アクティブなレイヤーにインポートされるので注意

補足

テクスチャのみの表示はショートカットで「2」
アルファを持ったテクスチャを正常に表示させたいときは「6」の低解像度モードを使用する。




テクスチャのエクスポート


2パターン有り

テクスチャを統合したものをだす方法

テクスチャ>エクスポート>カラーやその他を選択

レイヤー構造を全て、もしくは特定のものだけ

レイヤー(ペイントモードにする)>エクスポート>カラーのエクスポート or  全てのレイヤー


注意、エクスポート時のパディング(ノリシロ)を設定がデフォルトでは64になっているはず

編集>環境設定>General>パディング幅>好みの幅に設定




UV展開

かなり融通が聞く、ペイントした後でのUVの移動に対応、自動フィッティング等が
基本はシーム(境界線)を指定してからUVを展開ボタンを押して適用する

ループで指定orシームで指定>UV展開


クラスタの追加 中心の指定していするとそこが真ん中になるように展開される。

3DcoatAppLink

他のソフト間のやり取りを楽にするツール

入れ方>
ダウンロードしたZipの中身をPCの2箇所に入れる
plug-insのフォルダをProgramFiles下のMayaフォルダのbinにコピー
iconとshelves、ドキュメントフォルダーの例の場所に入れる

使い方
3Dcoat Mayaを起動
Maya上でエクスポートしたいオブジェクトを選択してEXPを押す。
3D ペイント用にPerPixelPaintingをボタンを押す
エクスポートされる。

3DCoat>ファイル>オブジェクトを送り返すでマテリアル突きでエクスポートされる
エクスポート時にカラーやディスプレイスメントなどをエクスポートするかチェック
Maya上でどの項目をインストールするか決める。


注 バージョン違いによるものなのか、エラーが起こる

リトポロジー

Zbrushなどで作ったモデルを、動きを考慮したトポロジーに手動で変換する作業

概要としては3パターン位あって

まず参照メッシュを指定する、

そこから面を貼って作る
   一番自由度が高いけれども、一番時間がかかる
自動でメッシュを生成する
   一番楽だけれども、細かいところが思い通りにならない、プロップス等の動かない物向け
またはベースオブジェクトをスナッピングさせる。
   上記2つを合わせた感じ、肩や肘などの可動部分は予め作っておいてそれをリトポ用メッシュに読み込んで微調整ということもワークフローとしてはあり得る





Zバイアス 重なって見えない時に数値を大きくする、Mayaのビューポートクリッピング見たいなニュアンス
不透明度 リトポメッシュの透明度デフォルトだと結構濃いので見えづらい

MAX Skinning Weight Tool for mayaを改造する

MAX Skinning Weight Tool for maya
http://www.creativecrash.com/maya/script/max-skinning-weight-tool-for-maya


ローポリ御用達のウェイトツール
ジョイントリストの覧でキーボードを打つとその英字が頭文字のジョイントに飛べるので選択しやすい
一つ難点があって、ジョイントリストの覧が短すぎること。
なので記述を少し変えて長くしてみる。


87行目のSkin Jointsというところがジョイントリストの覧の記述なので


////////////////////////////////////////////////////////////////////////////
frameLayout -l "Skin Joints" -la "center" -w 198 -h 120 -mh 3 -mw 5 -bs "etchedOut";
columnLayout -adjustableColumn 1 ;
textScrollList -numberOfRows 7 -allowMultiSelection 0 -w 183 -bgc 0 0 0 -sc SelInfJoint_proc listBox ;
setParent ..;
setParent ..;

////////////////////////////////////////////////////////////////////////////////
frameLayout -l "Skin Joints" -la "center" -w 198 -h 280 -mh 3 -mw 5 -bs "etchedOut";
columnLayout -adjustableColumn 1 ;
textScrollList -numberOfRows 16 -allowMultiSelection 0 -w 90 -bgc 0 0 0 -sc SelInfJoint_proc listBox ;
setParent ..;
setParent ..;
///////////////////////////////////////////////////////////////////////////////

この上下の覧が大体ウィンドウレイアウトのことなので、ハイトの部分をいじれば好きにカスタマイズできる。


バックアップは必ずすること。


補足
スクリプトの名前を勘違いしていたので修正

2012以前のタイプで開く方法

maya2013以降のシーンデータを2012以前で開く方法

[概要]

ma形式で保存

テキストエディタで [-ch xxxxx]となっている記述を全排除

サクラエディタで 置換>正規表現にチェック>-ch\s\d*で-ch部分を全部空白で置換する

理由は2013以降でフェースの数も保存するようになったからとのこと

http://tech.autodesk.jp/faq/faq/adsk_result_dd.asp?QA_ID=7361



auto unwrap uvs tool メモ

auto unwrap uvs tool(2015) メモ

UVの自動展開調整機能[Unfold]の機能強化バージョン

[Button]
bounusTools>UV Editing>AutoUnwarpUVstool Options>legascyUnfoldかUniFormFaceMethod(Unfold3Dだと挙動がおかしい?)


オブジェクト選択して
AutoUnwarpUVstoolを起動(EnterTool)
エッジを選択してAddBordersでエッジ登録、Continueで適用
Doneで終了させる。


[補足]
AutoUnwarpUVstool Options>SetEdgeColorToRed
自動的にグリーンのシェーダーが割り当てられるので、変更したくない場合はチェックを外す

複製したオブジェクトだとエラーが出た、名前を変更したら解決した


maya importメモ

maya importメモ

インポート時にネームスペースを付けたくない場合

Use namespacesにチェックをOFF
Clashing_nodes  the file nameにする

Unityメモ01

Unityの備忘録

できること
web上での3Dモデルビューアー(モーションも有り。)
ゲーム開発


[大まか流れ]
プロジェクトタブに、カメラ、モデル、モーション、テクスチャ、マテリアル、スクリプトなどの素材となるものを読み込んで、そこからシーンを構築していく

シェーダーもスクリプトで記述されているため、結構いろいろなことができる。

「このシェーダーでは両面表示で、白だけ光らせる」とか


簡単な設定で出してみた

http://3d.nicovideo.jp/works/td20530

mayaのウィンドウとShift+M

mayaのウィンドウでメニュー画面が無くなった時の対処法

UVエディターでも表示・非表示が適用されると認識していなかったので、一瞬戸惑ったのでメモ

[shift+M]を押す表示・非表示される

Maya 起動バージョンのトラブルメモ

Mayaのファイルが意図しないバージョンで開くいてしまった時の対処法

例えばプログラム登録で2012のMaye.exeを登録しているのにもかかわらず、2011で開いてしまったり。そもそも登録できなかったりする。

原因としてレジストリを何らかの原因で書き換えられている事が多い
自分の場合は英語バージョンで起動みたいなことをしていたような・・・

対処法として
HKEY_CLASSES_ROOT\Applications\maya.exe
これを削除すると、一旦リセットされる。

削除する前にかならずレジストリのバックアップはとっておくこと。





ポリゴンのすべてのエッジをカーブに変換

ポリゴンのすべてのエッジをカーブに変換

パースとるのを試行錯誤中で発見

エッジ選択状態で実行


{
string $edges[] = `ls -sl`;
$edges = `filterExpand -sm 32`;
for ($i=0; $i<`size $edges`; ++$i) {
    select $edges[$i];
    polyToCurve -form 2 -degree 1;
    CenterPivot;
}
}


補足
カーブをレンダリングするときは、ペイントエフェクトでMayaソフトウェアでレンダリングする
カーブを選択してペイントエフェクト>カーブユーティリティ>ブラシをカーブにアタッチ
太さはブラシのグローバルスケールかブラシプロファイルのブラシの幅
一括で変更するときはアウトライナとかで複数選択し、アトリビュートボックスのbush**を変更すると、一度にラインの太さがいじれる


カーブを一つにする方法は↓

https://vimeo.com/37108656

または、まとめたいカーブを選択して下記のスクリプトを実行してもいい

global proc groupUnderTransform(){
string $selCurves[] = `ls -sl`;
makeIdentity -apply true -t 1 -r 1 -s 1 -n 0;
select -deselect $selCurves[0];
pickWalk -d down;
select -add $selCurves[0];
parent -r -s;
select -r $selCurves[0];
}
groupUnderTransform;


ホワイトノイズメモ

ホワイトノイズ系の音を流しておくと集中できるので最近よく使う

http://www.noisli.com/

mari indie obj インポートメモ



mari indie obj インポートメモ

OBJをインポートしようとして
patch limit of 2
というエラーが発生する場合、UVが境界線上ギリギリにある可能性がある、MayaのプリミティブだとUV限界まで広がってるのでエラーが出て読み込めなかった。



追記


日本語マニュアル発見
http://indyzone.jp/catalog/products/foundry/mari/jpm/pdf/Mari_1.3v2_QuickStartGuide_jp.pdf

ShrinkWrap メモ

ターゲットの表面に吸着される、トランスファーアトリビュートと似たような機能

[使用]
Zburshで木や岩を作り、メッシュがきれいなオブジェクトをその形状に添わせるなど




[手順]
ライブサーフェイス(マグネットのアイコンの一番右)にターゲットを登録
変形させたいオブジェクトを選択
モデリングツールキットタブのEditでShrinkWrap Selectionで
適用される。




2013までだと以下の様なプラグインがある

http://www.creativecrash.com/maya/script/xyshrinkwrap


[補足]
あまりポリゴン数が多いと汚くなるので、その都度調整しつつ貼るのがいいみたい

スキンを入れた後のブレンドシェイプ、ヒストリーの入れ替えメモ

スキンを入れた後、ブレンドシェイプを適用すると、スキンの変化とブレンドシェイプが共存できない

なので、ヒストリーをする必要がある。
そういう時に使うもの。

変更したいオブジェクトを選択し、右クリック
input>all input
そこで中ボタンを押しながらでヒストリーの入れ替えができる。




スカルプトデフォーマーメモ

スカルプトデフォーマーメモ
ナーブスにの形状変化を、ターゲットのメッシュに反映させる

以下の動画



今度使ってみる。


レンダーセッティングのウィンドウがおかしくなった時メモ

mayaのレンダーセッティングのウィンドウがおかしくなった時
レンダーセッティングウィンドウを出して
deleteUI unifiedRenderGlobalsWindow;buildNewSceneUI;
と打ち込むと直る