UnityでMatCapシェーダーをあてる記事は数あれど、Mayaはなかなか見かけないのでやってみます。
【Maya】最近開いたファイルをホットキーで開くプラグイン
わざわざメニューバーからFiles>RecentFilesと辿るのがめんどいので、こんなやつがホットキー(キーボードショートカット)で開くやつを作ります!
【Maya】ファイルロードが異様に遅くなったので解決した話
Mayaでファイルとして書き出してあるコントローラファイルを読み込むようなツールを管理しているのですけど、この読み込みが異常に重い環境がありました。
一体何が悪いんや…と色々調べた結果、どうやら「startupMainWindowState」というprefsのmainWindowStatesディレクトリ内にあるファイルが悪さしているようだ、ということが分かりました。なんでや。
このファイル一体なんなのかというと、mayaのUIの状態を保存するものみたいです。尚更なんでや。
カスタマイズしたユーザーインターフェースのドッキング位置を初期状態に戻す方法 | Maya | Autodesk Knowledge Network
ファイル読み込みが重くなる環境ではこのファイルが100kbを超えていました。
というわけで犠牲になるのはUIの状態だけのようなので、削除した上でMayaを再起動してファイル読み込みを実行すると解決しました。ヤッター。ヤッター?
確認した限り再現したのはWindows、MacともにMaya2015〜2017。2018では再現せず。
ちなみに消す以外に何か回避方法ないのかと色々試したところ、以下のような処理で回避できました。
cmds.window("MayaWindow", e=True, vis=False) # ファイル読み込み処理をここに書く cmds.window("MayaWindow", e=True, vis=True)
ファイル読み込み処理の前後にMayaWindowの表示状態を非表示→表示に切り替える処理を入れる感じ。
回避できるものの、もちろんMayaWindowがファイル読み込み完了まで非表示になるので、この処理にすると何も知らない利用者はびっくりすると思うので、なにがしかケアしてあげると心臓にいいと思います。
めでたしめでたし(もやもや)
【CEDEC2017】テクニカルアーティストにおすすめのセッション
去年に続き、CEDECに参加してきたのでTAおすすめセッションのまとめです。
- Technical Artist Bootcamp 2017 vol.1 「Automation for TA」
- Technical Artist Bootcamp 2017 vol.2 「Math for TA」
- Maya + Python でインハウスツールを作ろう!
- Pixar USD 入門:新たなコンテンツパイプラインを構築する
- アーティストのためのリアルタイムシェーダー学習法
- ゼルダ全般
- リアルな表情を生み出すテクスチャ表現と、豊かなアニメーションを生み出すFACSを使用したリギング
- RE ENGINEでのゲーム開発を支えるMacro(Plug-in)機能の紹介
- おわり
【Unity】ARCoreでUnityちゃんを召喚する
ARCore出ましたね!TangoさんRIP。
というわけで早速サンプルをいじってUnityちゃんを召喚してみます。
動作環境について
現状はドキュメントに書いてある通り、動作を確認する場合PixelかGalaxyS8が必要です。
一応すり抜ける術もいくつかあるようなので一応貼ってきます。
ARCoreをPixelやS8以外の端末で動かす - Qiita
GitHub - tomthecarrot/arcore-for-all: Google ARCore for "unsupported" Android devices
後者が有志のサポート外の端末でもARCore動かそうぜというプロジェクトです。
現在の対応状況は以下で確認できます。
arcore-for-all/Device-Research.md at master · tomthecarrot/arcore-for-all · GitHub
ちなみに個人的に持ってるGalaxyS6はどちらも動作対象外。かなしみ。
準備
以下の指示に従って準備します。
Getting Started with Unity
まずはSDKとAndroid端末に入れるARCoreのapkのダウンロード。
SDK Preview for Unity
ARCore Service apk
そして手持ちの対応端末をUSBで接続して以下を実行。
adb install -r -d arcore-preview.apk
次にUnityのプロジェクトの準備。
上のドキュメントにはUnity2017.2b9以降ならおっけーと書いてありますが、b10だと動かなかったので現時点ではb9を使うのがよさそう。
(エラー見る限りメソッド名かパッケージあたりが変わった?)
2017.09.13追記:現在はUnity 2017.2 Beta 11を使ってねと書いてあり、実際にこのバージョンで動作したのでこちらをオススメします。
任意の名前で3Dのプロジェクトを作成し、ダウンロードしたSDKを入れます。
次に以下の作業を行います。
- File>Build SettingsからAndroidにSwitch Platform
- 同画面(もしくはEdit > Project Settings)からPlayer Settingsを開く
こんな感じ。
また、GalaxyS8などを使う場合、Resolution and PresentationのAspect Ratio ModeをLegacy Wide Screen(1.86)にしておかないとカメラが縦に引き伸ばされる感じになります。
早速プレハブを差し替える
GoogleARCore > HelloARExample > ScenesのHelloARを適当な場所にコピーして開きます。(そのまま編集してもよいです)
次にコピーしたHelloARをBuild SettingsのScenes In Buildにぶっこみます。
次に、このシーンにあるExampleControllerに追加されているHelloARControllerを選択してInspectorを開きます。
すると、AndyAndroidPrefabというフィールドがあるので、こちらに設定されているAndyを差し替えたいプレハブに変更。
最後にプレハブにPlaneAttachmentコンポーネントを追加すれば完了です。かんたん!
完成
今回はSDのUnityちゃんに差し替えてみました。
ちなみにこの画像では上の作業に加えて無理矢理影を出したりしてます。
もちろん回り込むことも出来ます。やったぜ。
次はライトもよしなにしてもうちょっといる感を出したい。
影の解説はまた今度…!
この作品はユニティちゃんライセンス条項の元に提供されています
【Maya】GUIのレイアウトの状態を確認する
MayaでUIの調整をしていて、なんか思ったレイアウトにならんなーというとき、各レイアウトの範囲がどうなってるか色分け出来たら捗りそうだなーと思って、適当に書いてみました。
【Maya】カラーコードをMayaのUIで利用できる形式に変換する
MayaのUIはカラーを bgc=[0.29, 0.75, 0.42] みたいな形式で指定するんですけど、この形式で書くのめんどいですよね。
というわけでカラーコードまたはカラーピッカーで指定した色をこの形式に変換するやつを作りました。