【Substance】 ノーマルマップでとがった角を丸く見せるツール
Substance Painter で mental ray の mia_roundcorners っぽい処理をするジェネレーター。 面取りをしていない角やぶっさし部分のノーマルマップをいじって、ベベル・面取り処理したように見せる。

Unity のシェーダー開発方法のまとめと備忘録・頂点アニメーションテクスチャ(VAT)シェーダー
Unity のみで完結できる頂点アニメーションテクスチャー(VAT・Vertex Animation Texture)のエクスポーターとシェーダーを作りました。
![[MEL] タイムライン上のキーフレームの色を変える MEL スクリプト [MEL] タイムライン上のキーフレームの色を変える MEL スクリプト](https://4.bp.blogspot.com/-wsUx2Ksgr48/XFRkRHhi_aI/AAAAAAABA0s/o8_JYM4SF9QQ74RY1vxDuID-cYsl2kwyACKgBGAs/s1600/icon_mel_2012.png)
[MEL] タイムライン上のキーフレームの色を変える MEL スクリプト
Maya でタイムライン上に表示されるキーフレームインジケーターの色を変える。 Convert to Breakdown でも色は変えられるけど、タイミングが自動調整されて使いづらい。そんな時に。

日本語版 After Effects で 英語キーボードに対応したショートカットキーを使う
英語キーボードだと @ は Shift + 2 になっていて、パネルの最大化が出来なかった・・・、けどついに。
リニアワークフローとカラースペース覚書
色と光を区別する 従来は 【 色 】 の情報を使用してレンダリング・コンポジットを行っていたが、 【 色 】 ではなく 【 光 】 の量をテクスチャ・レイヤーとして出力し、レンダリング・コンポジットが終わった後に 【 光 】 を 【 色 】 に変換しよう、というワー...
![[MEL] リファレンスをアルファベット順に並べ替えて整理する MEL スクリプト [MEL] リファレンスをアルファベット順に並べ替えて整理する MEL スクリプト](https://1.bp.blogspot.com/-5SRsLskQzi4/ViD3CZ8o7gI/AAAAAAAAAvE/9TTa4pTOpKI/s1600/STMG_RenameReferenceNode_Result_A.png)
[MEL] リファレンスをアルファベット順に並べ替えて整理する MEL スクリプト
Maya の Reference Editor は余裕なくぴっちり表示されるわ、ソートは出来ないわでまあごちゃごちゃと見づらい。 まずはリストを見やすくしつつ並べ替えるために、アンダーバーを付けまくる。
![[AE] レイヤーマーカーでタイムリマップを使ったフリッカー処理をコントロールするエクスプレッション [AE] レイヤーマーカーでタイムリマップを使ったフリッカー処理をコントロールするエクスプレッション](https://lh3.googleusercontent.com/-a1o_18zKNf0/UKcYcz6QALI/AAAAAAAAAYQ/0eKLDGI9Phc/s640-Ic42/AnimeAE_FlickeringAnnotated.png)
[AE] レイヤーマーカーでタイムリマップを使ったフリッカー処理をコントロールするエクスプレッション
最近アニメの撮影でタイムリマップとフリッカー処理をよく使う。 手でキーフレームを打ってフリッカー処理をやってると、3D のタイミングを調整して再設定とかすごく手間でいやになる。ということで・・・

Transform のパフォーマンス最適化まとめ
毎フレーム大量の Transform を扱う機会があったので、Unity 上で Transform を更新する際の手法とパフォーマンスの比較・最適化の方法のまとめを。 毎フレーム数百かそれ以上の Transform の .position や .rotation / .eulerAngles へのアクセスや変更がある場合には考慮する意味がある、といった内容です。

Vive トラッカーのトラブルと対処方法
設定に問題もなく絶っ対に動くはずなのに、トラッカーが想定通りに動かない状態になる原因は、(おそらく)トラッカーが過去にペアリングしたことがあるドングルが複数、同じ場所に存在する環境で使用しようとすること。
Maya の Reference Editor は余裕なくぴっちり表示されるわ、ソートは出来ないわでまあごちゃごちゃと見づらい。
まずはリストを見やすくしつつ並べ替えるために、アンダーバーを付けまくる。

使っていないリファレンスの削除やら、ネームスペース末尾を 1 から A に等々、もろもろ仕様に沿うように整理。
整理が終わったら再度実行、RN を入力して Maya の命名規則に則ってリネーム。

元通りに。

リファレンスのソートは MEL の機能としてあるわけではなく、エディターの表示を無理矢理いじっているので Reference Editor を閉じると元にもどる。
Stmg_RenameReferenceNode.mel
// rename reference node based on its related namespace.
if( "Rename" == `promptDialog -t "Rename Reference Node"
-m "Suffix: ( \"RN\" to rename based on Maya's naming convention )"
-text "________________"
-b "Rename"
-b "Cancel"` )
{
ReferenceEditor;
string $refList[] = sort(`ls -type "reference"`);
for($ref in $refList)
{
if( catch(`referenceQuery -topReference -rfn $ref` != $ref) )
{
continue;
}
string $prefix = "";
string $suffix = `promptDialog -q`;
string $filename = `referenceQuery -filename $ref`;
string $ns = "";
if(`file -q -usingNamespaces $filename`)
{
$ns = `file -q -renamingPrefix $filename`;
}
else
{
// ignore no namespace
continue;
}
string $name = `substitute "[0-9]+$" $ns ""`;
string $number = `match "[0-9]+$" $ns`;
// $suffix == RN or /^_+$/: special mode
string $newName = $prefix+$name+$suffix+$number;
if("RN" == $suffix)
{
$newName = $prefix+$name+$number+$suffix;
}
else if("" != `match "^_+$" $suffix` )
{
$newName = $prefix+$name+"___"+$number+$suffix;
}
lockNode -l false $ref;
$ref = `rename $ref $newName`;
lockNode -l true $ref;
}
// force reorder reference file list.
string $set = `sets -empty`;
$refList = sort(`ls -type "reference"`);
for($ref in $refList)
{
sets -e -add $set $ref;
referenceEditorViewSetCmd $set;
refresh;
}
global string $gReferenceEditorPanel;
filterUIClearFilter $gReferenceEditorPanel;
delete $set;
}