R15辺りでGIの性能が悪くなったっつーのは何処かで読んだことがあったんですが、今日検証していると確かに画質が悪くなっているし遅い。
下の画像はR16の標準的な設定によるレンダリングですが、遅い上にムラがあります。
プライマリをイラディアンスキャッシュ(旧)に変えると激速というか、以前はこれくらい速かったはず。しかも壁面のムラもない。
ただし、TeamRenderを使う際にはイラディアンスマップ(旧)は仕様上使えないとのこで・・・
ちなみに両方の画像ともAOを併用してます。
R15辺りでGIの性能が悪くなったっつーのは何処かで読んだことがあったんですが、今日検証していると確かに画質が悪くなっているし遅い。
下の画像はR16の標準的な設定によるレンダリングですが、遅い上にムラがあります。
プライマリをイラディアンスキャッシュ(旧)に変えると激速というか、以前はこれくらい速かったはず。しかも壁面のムラもない。
ただし、TeamRenderを使う際にはイラディアンスマップ(旧)は仕様上使えないとのこで・・・
ちなみに両方の画像ともAOを併用してます。
さて木曜日の夕方に届いたOculusRiftDK2です。
いくつかのデモを試してみたんですが、これ(下の画像の)を試したら、数分で酔いました。
頭を傾けても、後ろを向いても上を向いても下を向いても追従してくるので、逃げ場がないって感じ。没入感覚がすご過ぎる。
その場にとどまって首を振っている程度ならいいのですが、WASDキーで移動するようになると、感覚とのずれが生じて酔うのかな。時々目を瞑って落ち着く必要があります。
上野の東京国立博物館のシアター360も感動しましたが、それ以上です。酔わなければ(泣)
続きです。
モーション用に読み込んだ階層のCharacter1_Headをエディターで表示せずレンダリングもしないようにします。モーフ用のポリゴンはこのジョイントの子なので。これで余計なものは出なくなりました。コンスタントシェーディングにすると、よりかわいい感じに表示されます。
4つのポーズモーフタグがありますので、それぞれ見ていきましょう。MTH_DEFのタグは口の動きです。
EYE_DEFのタグは目の動きです。スライドを動かすと、目の周りのポリゴンがすっ飛んで行ってしまいます。うわぁ・・・なんてこった。
そのタグを選択したまま、「基本」タブの方を開いて、「X優先順位」がデフォルトで「エクスプレッション」になってるところを「アニメーション」に変更します。するとこの問題は解決します。よかったね!Unitychan。
それで、読み込んだ方のFBXの方は、ちゃんとキーが付いているぽいですが・・・
モーション移植タグでモーションをもらった方はキーが付いてないです。なので、アニメーションを再生しても、体は動くけど、表情はそのままって状態になってます。
しかし、Animationレイアウトのタイムラインでモーションをもらったはずの方のポーズモーフタグのFカーブを見てみると・・・
なぜかキーを持ってる??
なんかもうよくわかんないし、この役に立たないカーブを使って新たにキーフレームを追加します。えーと、10Fと29Fと48Fが0%で、21Fと42Fが100%なのね・・・
キーフレームを追加すると、一番下の方新たなキーを格納したトラックが表示されてました。自動の補完でだいたい同じような感じになってます。つーか、なんでこんな場所に作るの?一番下だから??
気にせずに、他のスライダーの強度にもキーを打っていきます。
全部のモーフに対して同じようにキーフレームを作り直していきます。疲れそうだと思ったけど、たった9本だし、たいした手間じゃなかったです。
おしまい
追加
白目の色が緑なのはおかしいので、テクスチャを修正しました。
わぁお!ますますかわいいね♪
そういうわけで、Cinema4Dに読み込んだUnitychanのデータには、モーションのデータは入ってなかったわけでして、モーションのデータは動きごとに別のFBXファイルに分けられて用意されているのですね。
ですので、Cinema4DでFBXのデータで動かしたかったら、好きな動きの情報を格納しているFBXファイルをインポートしてモーションをモデルのジョイントの角度情報に移植してやる必要があるようです。Unityのmecanimもこれと同じことをやってるンでしょう。
まず、unitychanのデータ群の中から、好きなモーションの格納されているFBXファイルをCinema4Dで開きます。自分の場合はUnity側で、結構開いてみていたので、すんなり選べましたが・・・
UnityにUnitychanを読み込んでる場合は、そのプロジェクトの中のAsset→UnityChan→Animationsの中にモーションのデータがたくさんあります。unitychan_WIN00.fbxを選んでみました。
「開く」を押すと、インポート設定のウィンドウが開きます。「ジオメトリ」と「トラック」と「ポーズ」にチェックを入れておけば大丈夫です。多分・・・なぜモーションデータなのにジオメトリがいるのかというと、目や口や眉毛の動きはモーフでやってるからですね。
「OK]をおすと、テイクの選択とかいうのが開くので、「Take001」とかいうのを選びます。4秒分のアニメーション情報が入ってるみたいな事が書いてありますね。「Default」の方を選ぶとダメだった気がします。
そうすると、別のファイルとしてインポートされます。
ジョイントの階層を開いていきます。背骨(Spine)をどんどん開いて、首、頭のジョイントの子として顔関係のジオメトリと、そのモーフデータ(Cinema4Dのモーフタグとして作り直されてます)がありますね。再生すると、モーフターゲットに設定された値がアニメーションしてるのがわかります。
そしたら、このデータを階層全部コピーして、さっきのデータの方に持っていきます。
元からあったUnitychanの階層を選んで、右クリックし、開いたメニューの「キャラクタタグ」→「モーション移植」を選びます。
モーション移植タグの「オリジナル」の方に動きのついている方(インポートしてコピペした方)を入れて、「ターゲット」のほうに元のデータ(動きついてない方)を入れます。
すると、いきなりUnitychanがひっくり返ります。
いきなりでビビりますが、落ち着いて「名前の替わりに階層構造を参照」のチェックを外します。
やったね!ちょっと顔面が変なことになってますが、これは読み込んだ方のFBXファイルの顔のポリゴンが表示されてるので、後でレンダリングされないようにしますので、大丈夫です(削除しないように)。再生すると動きます。
顔の表情関係は続きに書きます。
そういうわけで、googleで「unity mecanim」で検索すると、いろいろ教えてくれるページが表示されるので、ちょっとやってみました。
まぁ、とっても可愛らしいこと。
右側のロボにも全く同じモーションを割り当ててます。
待機状態のステート(Stateって「状態」って理解すればいいんかな)(ここではIdle_01とかIdle_02)からJumpなどのキーボードのキーを割り当てたステートに行く方の線を選択して青くなってる状態で、インスペクタの「Has Exit Time」のチェックを外す必要がありました。Idleのステートに戻る方の線は「Has Exit Time」はチェックされたまま(デフォルト)でOKみたいです。
そういうわけで、UnrealEngine4がスゲーのはもう十分わかったので、Unityに戻りました。っつーか、UE4って重いってのは知ってたんですが、実際触ってみると想像を超える重さで、特にノートPCだとすぐにファンがフオオオオオー!!キィーーーンって轟音をたてはじめるので精神衛生上よろしくないです。離陸でもする気かよ。
そういうわけで、UE4の無料化に驚いたのか、Unity5が早速登場したので、いじってるんだけど、やっぱ自分はUnityの方がいいや。今のところ。
そんなこんなで、Unityのメカニムのことを調べていて、モーションのサンプルとしてUnitychanを使ってたので、ついでにCinema4Dに読み込んでレンダリングしてみたけど、かわいい!マジ天使かよって感じ。
服のマテリアルのタイプはIrawanってのを使ってみました。ハイライトが布っぽくなってる気がします。
尚、顔色や肌の色が悪い感じがしたので、発光チャンネルでピンク色を設定して多少発光させて血色良い感じにしました。
うわぁぁぁぁぁぁ!かわいい!!表情も変えられるンだね!
そういうわけで、Unitychanに会いに行くために、Oculus Rift DK2とかいうのを買おうとしたところ、クレカの決済がエラー出まくりでまだ購入できてません。
-------------------
追記
クレカで決済できないのでクレカの会社に問い合わせたところ、時間をおいて、もう一度やってみて!と言われたんで時間を置いたけど、やっぱダメなんでPayPalでアカウント作って試したらOKでした!
追記
白目の色が黄緑色だったのを修正しました
http://docs.unity3d.com/ja/current/Manual/HOWTO-bumpmap.html
↑こういうノーマルマップ用の画像を用意するには?Unityで変換せずに?
ノーマルマップの画像を作るにはどうすんの?って調べていたところ、NVIDIAのPhotoShop用のフィルタってのを発見したのでメモ。
NVIDIA Normal Map FilterってのをインストールしてPhotoShopのフィルターのところから適用します。
Invert Y (Yを反転)にチェックを入れて、Scaleの値をでっかくします。
すると上のリンク先の画像と同じような感じになります
Cinema4Dでもちゃんと表示できました
UnrealEngine4のエディタのビューポートのナビゲーションで、Cinema4DとかMayaみたいにAltキー+マウスの各ボタンを組み合わせてカメラの回転、拡大縮小、移動などが出来ますが、移動(パン)が感覚的に逆な場合の対処方法は以下です。
UnrealEngine4が1年間無料で使えるクーポンが付いた本を読んで勉強してるわけですが、1年どころか1か月経つ前にUnrealEngine4が無料になってしまいました。やったね!
https://www.unrealengine.com/ja/blog/ue4-is-free
一方Cinema4Dの方もSubstance Desigunerのプラグインが出るの?へえ