夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

HoloLensで使える3Dモデルを作る ~ライトセーバーを作る~ その⑪ ライトセーバーの刃を作る

 HoloLensでは現実空間に3Dオブジェクトを配置、作用させることによってMixedReality(複合現実)を実現しています

 この3DオブジェクトはHoloLensやxRの分野だけではなく、映画、ゲーム、製造、建築など多くの業界で幅広く用いられるようになりました。

 3Dオブジェクトを作成するツールも増え、少し良い性能のPCさえあれば3Dモデルを作ることは誰でも簡単にできるようになりました。

 前回からライトセーバーを作っています。 今回は11回目の記事です。

 前回の記事はこちら

redhologerbera.hatenablog.com

Blenderでブレードを作成しエクスポートする

 前回まででライトセーバーは完成しましたが、今回はその刃であるブレードを作成します。

Blenderでブレードを作成する。

 資料によると、ライトセーバーのブレードはただのレーザーや炎とは異なり電源ユニットから放出されたプラズマを、カイバークリスタルを介して収束させた高温高圧の物質として存在することで切り結ぶことができるようです。

 Effectの作成にはUnityの場合ParticleSystemを用いる場合が多いですが、今回はParticleではなくオブジェクトとしてブレードを作成しました。

 f:id:Holomoto-Sumire:20200112150156j:plain

 Blenderでブレードエミッター(刃先)から伸びる円柱を作成しました。

 エクスポートしてUnityへインポートします。

 過去の記事を参考にしてください

redhologerbera.hatenablog.com

〇UnityでMaterialを作成する。

ライトセーバー本体のMaterial

・グリップ部のMaterial

  

f:id:Holomoto-Sumire:20200112151246j:plain
グリップ部のMaterial、金属のテクスチャを使用しています。

 金属のテクスチャを使用しています。 今回は別アセットに含まれていたものを使用していますが、このようなテクスチャは、ロイアリティフリーで配布されている場合やPhotoshopなどの素材として含まれている場合もあります。

 また、今回UV展開の作業を行っていないため[Triplaner Mapping]を使用しています。

 Triplaner Mappingは過去の記事で解説しています。

redhologerbera.hatenablog.com

・ブレードエミッターのMaterial

f:id:Holomoto-Sumire:20200112151537j:plain
ブレードエミッターのMaterial 

  特別なことはしておらず、[Albedo]のカラーと[Metallic]、[Smoothness]のみで作成しました。   マテリアルを適応させたライトセーバーが次になります。

 f:id:Holomoto-Sumire:20200112152246j:plain  

・ブレードのMaterial

 ライトセーバーのブレードは白いプラズマの淵にそれぞれの色の発光を示しています。

f:id:Holomoto-Sumire:20200112153109j:plain
アナキン・スカイウォーカー

 今回はMRTK StandardShaderのアウトラインを用いて再現します。アウトラインは過去の記事を参考にしてください。 

redhologerbera.hatenablog.com

・プラズマ部のMaterial

f:id:Holomoto-Sumire:20200112153749j:plain

 プラズマ部には次のMaterialを作成しました。

 f:id:Holomoto-Sumire:20200112153910j:plain

 [Albedo]のカラーは白ですが、[Emission]および[RimLight]でアウトラインになじむように発光させています。

 [Border Light]によって色合いをブレンドしています。

・アウトライン

 アウトラインを使用するためにブレードオブジェクトの[MeshRenderer]の[Size]を2に設定します。[Element 1]にアウトライン用のMaterialを設定します。

 アウトライン用のMaterialは以下のように設定しました。

 

f:id:Holomoto-Sumire:20200112155057j:plain
アウトライン用のMaterial

 [Vertex Extrusion]のチェックボックスを有効にして値を設定することで法線方向にメッシュを展開してアウトラインを実現しています。

 ここで[Rendering Mode]を[Front]に設定することでメッシュの内側のみが描画され、プラズマ部の見えるアウトラインができました。

 以上でライトセーバーが完成しました。

f:id:Holomoto-Sumire:20200112155808j:plain

 次回以降完成したライトセーバーに機能を付けていきます。