Mayaで クリップボードに書き込む操作 は他にどんなケースで使用できるかを少し考えてみようと思います。
2024年5月27日月曜日
2024年1月22日月曜日
MAYAのファイル名をクリップボードに書き込む。いわゆるコピーのこと
Mayaを使っていると現在開いているシーンの名称を使用したいときが、たまにあります。
例えば、こんなような場面
Game Exporterを使って FBXを出力するとき、出力ファイル名にシーン名を使いたいときなどです。
2021年1月25日月曜日
mayaのswatchesフォルダを除去する
mayaでファイルを開きテクスチャを表示させるなどすると開いた画像と同じパスに .mayaSwatches というフォルダが作成されます。
たまに隠し属性になっていたりするので、気にならない人も居るようですが、ファイルの受け渡しなんかで見つけるとゴミを含んでいるようで、なんだかスッキリしません。
ブログへ上げたような気もしたのですが見つからなかったので改めて。
2020年4月13日月曜日
NodeEditorとHyperShadeが使用できない!?
リーマンはMPが減っただけだけど、ウーハンはHPを削るから厄介。
そんなこんなで、maya2020をインストールしたときに気が付いたのですが、なぜか、Node Editorを起動するとエラーが出る。
HyperShadeに至っては使えない状態となっていました。
なぜ、そんな状態なってしまったのか!?
そんなこんなで、maya2020をインストールしたときに気が付いたのですが、なぜか、Node Editorを起動するとエラーが出る。
HyperShadeに至っては使えない状態となっていました。
なぜ、そんな状態なってしまったのか!?
2019年6月17日月曜日
いよいよWindowsもUTF8の時代に
Windows10 May 2019 updateに不具合12件とか、なんかのサイトで見て、どんなアップデートがあったのかなぁと色々調べていたら、2018年の年末くらいから Windows10 でも UTF8 が設定できるようになったと知りました。
まだ初期設定では使えないようなので切り替え方を。
まだ初期設定では使えないようなので切り替え方を。
2019年4月8日月曜日
MayaのスクリプトエディタでPythonを実行する
PythonスクリプトをMELのようにスクリプトエディタで実行してみるテスト。
サンプルの.melファイルと.pyファイルはこんな感じのこんにちは表示。
サンプルの.melファイルと.pyファイルはこんな感じのこんにちは表示。
2019年2月18日月曜日
4Kモニターを買ってみた
2017年1月10日火曜日
DoxygenをつかってMELからドキュメントを抽出してみる
スクリプトの数が増えていくと、コメントなんかを読むためにファイルを開くのが面倒になります。
ソースコードからドキュメント作成できないかなぁと思っていたりしたのですが、まぁ、使うならDoxygenだろうと。
Doxygenの使い方を解説しているところは かなりありますが、MELに特化させている日本語サイトは見つからなかったので、備忘録。
まずはここから、
Doxygen の日本語サイト。
http://www.doxygen.jp/
Doxygen のインストーラへのリンクが分かりづらいので、ダウンロードサイトはこちら。
A binary distribution for Windows. All versions of Windows since XP are supported.
のところですね。
doxygen-x.x.xx-setup.exe をダウンロードします。
※以降 1.8.13を元に説明します。
無事インストールできたら、スタートメニューから Doxywizard を起動。
GUIが立ち上がるので、設定を始めます。
基本的な部分は他の言語と同じ感じで良いようです。
Step 1:の欄には Doxygen の bin フォルダでも指定しておきましょうか。

作業エリアとしてこのパスが使われるみたいです。
Wizard - Project
プロジェクト名とかは とりあえず初期値のままでいくとして、ソースコードのパスと出力先を指定します。

自分の場合はSVNに登録してあるscriptsフォルダと出力先にdocというフォルダを作って指定しました。
サブフォルダが在る場合は、Scan recursively にチェック。
Wizard - mode

Documented entiries only にすることで Doxygen 用のコメントが記述されないと解析してくれませんが、MELだとゴミが増えるだけみたいなのでこちらにします。
※Include cross-referenced ~ にチェックを入れるとhtmlにソースコードが含まれます。
Optimize は初期値のままC++で。
Wizard - Output

HTMLだけをチェックします。
with navigation panel を選ぶと、こんな感じにフレームが作成されて便利です。

With search function のチェックで検索機能が付きます。
スクリプトコマンドが増えたてきら便利でしょう。
Wizard - Diagrams
クラス図とか依存関係の表を作ってくれるみたいですが、MELには反応しないようなので
No Diagrams で問題ないです。
次に Expert タブ。
いろいろ変更する部分があります。
まずは、日本語が出力できるように文字コードとかを UTF-8 から Shift-jis へ変更。
Expert - Project
DOXYFILE_ENCODING = CP932
OUTPUT_LANGUAGE = Japanese

Expert - Input
INPUT_ENCODING = CP932

の2箇所。
片方だけで良いような記事もありましたが、環境依存だったりするみたいで安全策として両方変えます。
今度は Doxygen に.melファイルを認識させます。
Expert - Input - FILE_PATTERNS
に *.mel を入力して+で追加します。
Expert - Project - EXTENTION_MAPPING
では、mel=c と入力して+で追加します。
こうすることで、.melファイルをc言語のルールを使って解析してくれます。
最後に Expert - Build
ここは特にイジる必要は無いようです。
初期状態では、Wizard - mode で設定したDocumented entiries onlyが効いて何も出力されないですが、EXTRACT_ALLにチェックを入れるとDoxygenの雰囲気が味わえます。
この部分の設定は日本語サイトのマニュアルから設定、Build 関係のオプションを熟読する必要がありそうですね。
初期値と違う部分が赤くなってくれるので便利です。
いよいよRunタブでhtmlに出力です。
doxygen用のコメントを書いてあるファイルであればMELでもこんな感じで出力されます。

書式に沿ったコメントを書く手間が必要ですが、なかなか良い感じ。
インストールせずに手っ取り早くdoxygenを知りたい人は、Cプログラマのためのdoxygen が参考になるかと思います。
かなり綺麗にまとまっているのでオススメ。
ソースコードからドキュメント作成できないかなぁと思っていたりしたのですが、まぁ、使うならDoxygenだろうと。
Doxygenの使い方を解説しているところは かなりありますが、MELに特化させている日本語サイトは見つからなかったので、備忘録。
まずはここから、
Doxygen の日本語サイト。
http://www.doxygen.jp/
Doxygen のインストーラへのリンクが分かりづらいので、ダウンロードサイトはこちら。
A binary distribution for Windows. All versions of Windows since XP are supported.
のところですね。
doxygen-x.x.xx-setup.exe をダウンロードします。
※以降 1.8.13を元に説明します。
無事インストールできたら、スタートメニューから Doxywizard を起動。
GUIが立ち上がるので、設定を始めます。
基本的な部分は他の言語と同じ感じで良いようです。
Step 1:の欄には Doxygen の bin フォルダでも指定しておきましょうか。

作業エリアとしてこのパスが使われるみたいです。
Wizard - Project
プロジェクト名とかは とりあえず初期値のままでいくとして、ソースコードのパスと出力先を指定します。

自分の場合はSVNに登録してあるscriptsフォルダと出力先にdocというフォルダを作って指定しました。
サブフォルダが在る場合は、Scan recursively にチェック。
Wizard - mode

Documented entiries only にすることで Doxygen 用のコメントが記述されないと解析してくれませんが、MELだとゴミが増えるだけみたいなのでこちらにします。
※Include cross-referenced ~ にチェックを入れるとhtmlにソースコードが含まれます。
Optimize は初期値のままC++で。
Wizard - Output

HTMLだけをチェックします。
with navigation panel を選ぶと、こんな感じにフレームが作成されて便利です。

With search function のチェックで検索機能が付きます。
スクリプトコマンドが増えたてきら便利でしょう。
Wizard - Diagrams
クラス図とか依存関係の表を作ってくれるみたいですが、MELには反応しないようなので
No Diagrams で問題ないです。
次に Expert タブ。
いろいろ変更する部分があります。
まずは、日本語が出力できるように文字コードとかを UTF-8 から Shift-jis へ変更。
Expert - Project
DOXYFILE_ENCODING = CP932
OUTPUT_LANGUAGE = Japanese

Expert - Input
INPUT_ENCODING = CP932

の2箇所。
片方だけで良いような記事もありましたが、環境依存だったりするみたいで安全策として両方変えます。
今度は Doxygen に.melファイルを認識させます。
Expert - Input - FILE_PATTERNS
に *.mel を入力して+で追加します。
Expert - Project - EXTENTION_MAPPING
では、mel=c と入力して+で追加します。
こうすることで、.melファイルをc言語のルールを使って解析してくれます。
最後に Expert - Build
ここは特にイジる必要は無いようです。
初期状態では、Wizard - mode で設定したDocumented entiries onlyが効いて何も出力されないですが、EXTRACT_ALLにチェックを入れるとDoxygenの雰囲気が味わえます。
この部分の設定は日本語サイトのマニュアルから設定、Build 関係のオプションを熟読する必要がありそうですね。
初期値と違う部分が赤くなってくれるので便利です。
いよいよRunタブでhtmlに出力です。
doxygen用のコメントを書いてあるファイルであればMELでもこんな感じで出力されます。

書式に沿ったコメントを書く手間が必要ですが、なかなか良い感じ。
インストールせずに手っ取り早くdoxygenを知りたい人は、Cプログラマのためのdoxygen が参考になるかと思います。
かなり綺麗にまとまっているのでオススメ。
2016年6月15日水曜日
TortoiceSVNで設定しておきたいこと
バックアップバッチ作ったけどやっぱ不便ですね。
なので、TortoiceSVN をインストールしました。
サンプルコードのテストなんかをする場合には、簡単に復帰できるので便利です。
時代は Git なのでしょうけども・・・。
とりあえず個人で使用するだけなので、外部ストレージにリポジトリを作成し、fttpプロトコルで使用中。
ファイルロックの同期が怪しいらしいので複数人で使用する場合には、サーバー立ててhttpやhttpsを使うのが良いみたいです。
インストール時、svn.exeをインストールすることをオススメします。
tortoiceProc.exeよりも取得できる情報が格段に上がり、バッチから色々出来て捗ります。
忘れた場合は、コントロールパネルのプログラムのアンインストールから、TortoiseSVNを選択し、変更を実行するとセットアップウィザードが立ち上がるので、Modify から command line client tools のチェックを入れて Next>
※windows7の場合

仕事で使う場合なんかは、インストール後、設定に *.mayaSwatches や *.swatch を追加しておくのが良いと思います。
環境によっては、こいつら隠しファイルになっているので、ゴミをコミットすることになりかねません。

大抵、新規加入のルーキー様がコミットあそばされるので、見つけた場合には魅上照ばりに
削除、削除、削除です。
なので、TortoiceSVN をインストールしました。
サンプルコードのテストなんかをする場合には、簡単に復帰できるので便利です。
時代は Git なのでしょうけども・・・。
とりあえず個人で使用するだけなので、外部ストレージにリポジトリを作成し、fttpプロトコルで使用中。
ファイルロックの同期が怪しいらしいので複数人で使用する場合には、サーバー立ててhttpやhttpsを使うのが良いみたいです。
インストール時、svn.exeをインストールすることをオススメします。
tortoiceProc.exeよりも取得できる情報が格段に上がり、バッチから色々出来て捗ります。
忘れた場合は、コントロールパネルのプログラムのアンインストールから、TortoiseSVNを選択し、変更を実行するとセットアップウィザードが立ち上がるので、Modify から command line client tools のチェックを入れて Next>
※windows7の場合

仕事で使う場合なんかは、インストール後、設定に *.mayaSwatches や *.swatch を追加しておくのが良いと思います。
環境によっては、こいつら隠しファイルになっているので、ゴミをコミットすることになりかねません。

大抵、新規加入のルーキー様がコミットあそばされるので、見つけた場合には魅上照ばりに
削除、削除、削除です。
2016年4月4日月曜日
バックアップ用バッチ
スクリプトフォルダをバックアップするバッチファイル。
12行目に scripts フォルダの「親」のパス。
13行目にコピー先のパス。
6~9行目は日付と時間を8桁の文字列にする部分。
これはよく使います。定型分みたいな感じ。
差分とか手軽に調べるならサブバージョンの方が良いかもなぁ・・・。
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: mayaのスクリプトをバックアップする。 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: @echo off set YYYYMMDD=%DATE:/=% set HHMMSS=%TIME:~0,-3% set HHMMSS=%HHMMSS::=% set HHMMSS=%HHMMSS: =0% set SOURCE=D:\maya set BACKUP=D:\_backUpFolder XCOPY "%SOURCE%\scripts" "%BACKUP%\scripts\%YYYYMMDD%_scripts" /S /I /Y pause
12行目に scripts フォルダの「親」のパス。
13行目にコピー先のパス。
6~9行目は日付と時間を8桁の文字列にする部分。
これはよく使います。定型分みたいな感じ。
差分とか手軽に調べるならサブバージョンの方が良いかもなぁ・・・。
2016年3月24日木曜日
melファイルの改行コード
melスクリプトを作っていて、デバッグがてらエラーで止まったところのログを見ていたら
ちょっとした疑問がわいてきました。
サンプルスクリプトとして
と、わざとシンタックスエラーが出るようなスクリプトを作成して実行してみます。
ちなみに、3行目の行末にセミコロンが付いていません。
当然エラーが出て止まるのですが、矢印の部分。
改行してなくない?
ひょっとしてと思い、秀丸で改行コードをCRに変えてみたところ
エラーログが変わりました。
昔、fgetlineでcsvファイルを読みこんだとき、最後の語句に改行が余分にくっついて
難儀したのが役立った。
ということで、melファイルは改行コードにCRを使った方が良いみたいです。
でも、これだとメモ帳で開くと改行されないという罠。
ちょっとした疑問がわいてきました。
サンプルスクリプトとして
global proc hogehoge()
{
print("hogehoge")
}
と、わざとシンタックスエラーが出るようなスクリプトを作成して実行してみます。
ちなみに、3行目の行末にセミコロンが付いていません。
当然エラーが出て止まるのですが、矢印の部分。
改行してなくない?
ひょっとしてと思い、秀丸で改行コードをCRに変えてみたところ
エラーログが変わりました。
昔、fgetlineでcsvファイルを読みこんだとき、最後の語句に改行が余分にくっついて
難儀したのが役立った。
ということで、melファイルは改行コードにCRを使った方が良いみたいです。
でも、これだとメモ帳で開くと改行されないという罠。
2016年2月9日火曜日
開いているファイルのフォルダを開く※秀丸編
秀丸マクロを使って、現在開いているファイルのフォルダを開くマクロ。
filenameがフルパスを取得するコマンドで、プログラム実行コマンドのrunでエクスプローラを実行。
これを[Ctrl]+0に当たるマクロ10へ登録。


※maya,Photoshopはこちら。
ほかには、ファイル名を挿入するマクロや日付を挿入するマクロがあると便利。
run "explorer.exe /n,/select," + " \"" + filename + "\"";
filenameがフルパスを取得するコマンドで、プログラム実行コマンドのrunでエクスプローラを実行。
これを[Ctrl]+0に当たるマクロ10へ登録。


※maya,Photoshopはこちら。
ほかには、ファイル名を挿入するマクロや日付を挿入するマクロがあると便利。
insert basename2;
insert (year+"/"+month+"/"+day);
2015年12月14日月曜日
MELのファイル名を考察
MELは基本的に、ファイル名と同じ名称のグローパルプロシージャが起動時に登録されてコマンドとして実行できるようになっている。
なので、公式のスクリプトとプロシージャ名が重複していると誤作動するため、自作のスクリプトには、イニシャルやプロジェクト名なんかを HG_hogeHoge.mel みたいな感じで先頭につけて作ったりすることが多い。
しかし、アンダーバーで区切るのはスクリプト作っていて文面的になんか気持ち悪い。
タイピングのリズムとか。
見た目のバランスとか。
単にアンダーバーを省くのも芸が無いし、イニシャルだと子音が入っていてカッコ悪い。
余り長い接頭辞でもうざいし。
などとあれこれ考えていたところ、名前の方の子音を省いて見ようと思い立った。
ただjavaスクリプトに同じ関数あるからなぁ・・・。
と思いつつtryを使っていくか。
なので、公式のスクリプトとプロシージャ名が重複していると誤作動するため、自作のスクリプトには、イニシャルやプロジェクト名なんかを HG_hogeHoge.mel みたいな感じで先頭につけて作ったりすることが多い。
しかし、アンダーバーで区切るのはスクリプト作っていて文面的になんか気持ち悪い。
タイピングのリズムとか。
見た目のバランスとか。
単にアンダーバーを省くのも芸が無いし、イニシャルだと子音が入っていてカッコ悪い。
余り長い接頭辞でもうざいし。
などとあれこれ考えていたところ、名前の方の子音を省いて見ようと思い立った。
ただjavaスクリプトに同じ関数あるからなぁ・・・。
と思いつつtryを使っていくか。
登録:
投稿 (Atom)





