ページ

2013/10/27

【MMD】反射エフェクトAutoMetallic配布

○反射エフェクトAutoMetallic!

尋常じゃなく使ってないブログですが、ここで配布しようと思います。

いままでMMDやってなかったわけではないのですが、どうもこう動画を投稿するきっかけがつかめず、気づいたらエフェクトをいじっていて・・・

配布するエフェクトについて説明いたします。
「AutoMetallic」という名前です。
こんな感じです!

3代目カマロ。砂漠ステージですが海辺っぽくしました。

今までに無いくらいキレイな反射だと思っています!
ビームマンPさんの「Full_and_MetallicDP」をベースに作りました。


○リアルに見せるための工夫

 まず、計算式が変わっていて、簡単に言えば、ビームマンPさんのFull_and_MetallicDPでは「元の色*反射の色」となっていますが、AutoMetallicでは「元の色+元の色の白黒反転*反射の色」としています。
これを分かりやすく説明するならば、「明るい面ほどよく反射する」のを、「暗い面ほどよく反射する」に変えたということです。
パトカーの画像なんかを見ていただければよく分かると思います。

また、面を斜めから見るほど反射が強くなる「フレネル反射」もどきを実装しています。これに関しては無くても気づかないかもしれません。
反射が強くなるだけでなく透明度も上がるので、ガラス表面の全反射も再現できます。
これの実装に際してはデータPの「AdultShader」を参考にしました。
本当はちゃんとした計算式があるんですが、他のエフェクトを見ても分からなかったので、実装しませんでした・・・。


○便利な機能

反射のテストをしている際に、「これ、モデル全体が同じように反射するのは不便だなぁ・・・」と思いました。
そこで、このエフェクトには、あらかじめモデルに細工をしておくことで材質ごとに反射強度を設定できる機能をつけました!

その手順を説明します。

①ボーンの設定から、車体中央に「DP_Center」という名前のボーンを追加。
②材質設定から、「反射強度」の小数点以下に、反射させる強さを入力。
 (反射強度を1で割ったあまりが、反射の強さの割合になる。元の反射強度が10で、反射の強さを25%に設定したいなら、反射強度を10.25にする)

これだけです!
・・・まぁ、これだけと言ってしまえば確かに2つしかステップは無いんですが、PMD/PMXエディタを使い慣れていない方はよく分からないと思うので、動画で説明をしています。
一時停止しながら試してみてください。
(※まだできてません)

この方法は、そぼろ氏の「AutoLuminous」を参考にしております。
もちろんAutoLuminousと同時に対応させることも出来ます。
この「小数点をいじる」という方法ですが、他に同じ事をしているエフェクトが無かったので使ってみました。
反射強度をそんなに細かく設定している人はいないと思うので、たぶん殆どのモデルで問題は無いです。
もし、AutoMetallic対応モデルが増えてくれたらとても嬉しいです!

また、この細工の方法を考える上で大切にしたのが「エフェクトが無くてもモデルが正常に見えなくてはならない」ということです!AutoMetallic用のモデルを別に添付しなければならないとなると、容量がかさんだりでよくないと思ったからです。
ですから、このエフェクトには、反射と重なって変にならないようスフィアマップを消す機能もあります。(加算スフィアのみ消すのと、乗算スフィアも消す設定の二つあり、無力化することもできます。)


○車向けシェーダー?

標準のAutoMetallicに加え、AutoMetallic_plusもあります。
これは、陰影を付けたりするだけのシンプルなシェーダーです。
また、ガラスを裏面から見ると透明度が上がるので、車内視点にも便利です。


○応用

また、ちょっと上級者向けですが、他のシェーダーエフェクトに反射をつけることも出来ます。
(どれくらい簡単かはちょっと分からない)


○最後に

作ったきっかけは、キレイな反射を実現したいという思いからでしたが、HLSLの知識は殆ど無かったので、最初はどこがどう動いているのかを理解するのに時間がかかりました。
プログラミングに関しては初心者なので、コードの書き方が汚いかもしれないですが許してください・・・。
まだまだこのエフェクトには改善の余地がありそうです。
よりよいエフェクトにするために、手助けやアドバイスなどしていただけるとありがたいです。

第12回MMD杯のアナウンス動画が公開されましたね。
このエフェクトはその時までとっておこうかと思ったんですが、私はもう高校3年なので入試が控えているため、参加は出来なさそうなので、皆さんにぜひ使っていただきたいです。

追記:MetallicのつづりをMetalicと間違えていたので(しかもずっと)全て修正しました!恥ずかしい!


AutoMetallic_v1_1.zip
Download

※2015/04/29追記
旧バージョンを残しておいても混乱のもとになると思うので、非公開にしました。
旧バージョンを引き続き使用していただくことは可能ですが、こちらから最新版(2.2)をダウンロードすることをお勧めします。

2013/03/03

Need for Speed World

全く更新してないから、誰も見ないわけで・・・。
突然ですが、ここで最近私がはまっているオンラインゲームの紹介です。
最近と言っても、始めたのはおよそ5ヶ月前でしょうか・・・。

EAが提供する「Need for Speed World」



2010年7月よりサービスが開始し、今なお世界中にプレイヤーがいるEAの小遣い稼ぎゲーム。
既存の車両モデルやマップを流用したクオリティの高さが好評です。


そんなわけで、5ヶ月プレイして私のレベルは現在すでに50を超えています。
無課金でプレイしてゴール時の平均順位は1.8といったところです。

このゲームはゲーム内通貨と「SpeedBoost」と呼ばれる課金通貨があり、課金通貨でしか買えない車両やアイテム、ドレスアップパーツがあります。
また、課金しないと所有できる車の数に制限があります。

無課金でも買える車両は、常に入れ替えられており、無課金者を楽しませるとともに車庫を買いたくなる衝動を強めます。

性能のアップグレードに関しては、最高のパーツである「ウルトラパーツ」は課金によって確実に手に入れることも可能ですが、レースをすると終了後のカード引きで運がよければ手に入るようになっています。この確率は自分のレベルによるようで、高レベルなら自分の車をフルウルトラにすることも難しくはありません。
また、車の強さによってクラスがあり、マッチングの際にはプレイヤーの強さとクラスを考えた組み合わせになります。

このゲームにはバグも多く不安定で、課金車両も「値段に見合わない弱さ」のものと「値段以上の理不尽な強さ」のものがあり、ユーザーの不満は募るばかりですが、そこそこのバランスのおかげで、どちらかというと実力がものを言うゲーム性です。
他のNFSと違って、アイテムなどによるハチャメチャな展開も魅力です。

というわけで、現在私が所有している車を紹介して終わりにします。



・S14 - S15からわざわざ買い換えた。最高速度に欠けるがDクラスとしては速い。
・TT RS - ハンドリングはひどいが、それ以外の性能のおかげでCクラス中堅。
・RX-8 - ハンドリング、加速がすばらしく、BクラスなのにAクラスを倒せるレベル。
・Mustang Boss 302 69' - こいつも、Bクラスとしては非常に魅力的な性能。
・Nissan GTR - Aクラスにギリギリ到達するチューンにもかかわらず、意外と確実に走る車。
・Corvette ZR-1 - Aクラス車の中で加速は悪くハンドルも不安定だが、乗り手が少なくお気に入り。
・Murcielago LP650 Roadster - 無課金車最強と呼ばれる車。安定性はすばらしい。
・M3 GTS - LP650と並べて語られる、強い車。総合的にすばらしい性能を持っている。