社員技術ブログ

【社員技術ブログ】UnrealEngine4(UE4)のWorld to Metersを使って巨人または小人になる方法

どもっす!

10月のブログ担当のミデンっす!

10月も今日で3X日、秋の過ごしやすい気温が徐々に肌寒いものになってきましたね。

え?投稿遅れただろって?違います。現在アルファケンタウリあたりに意識が飛んでいまして、

その影響で時差がですね、出てしまうんですね。

あれ・・・

   文字が・・・  遅れて・・・・

         打たれて・・・

                いくぞ・・・ ・・・ ・・ ・ ・

 

こんな感じでご納得いただけたところで(強引)今回もUnrealEngine4とVRが題材です。

 

VR内で巨大化する!

昨今は巨人が流行だそうで、弊社でもその流行にのって巨人化するコンテンツを手がけました!

というのは半分冗談ですが、実際に自分が大きくなってフィールド全体を俯瞰したいという要望はございました。

最初は等身大で体験をして、その後巨人になり何が起こったのかを確認するといった具合です。

巨人になることで全体を俯瞰でき、また回り込んだりして様々な角度から見ることができます。

単に移動量に補正を掛けただけでは巨大ロボの頭に乗っているのと同じ状態になり、

この状態ではかなり酔いやすいですから、スケール感の変更は貴重な機能と言えます。

 

巨人化実装

さて、そんな重宝している機能ですが、実装方法は超簡単!

World SettingsのVRのところのWorld to Metersの数値を変更するだけ!

たったこれだけです!

 

ここでは1mが何単位か(=何cmか)を定義しており、その数値を変更することでVR内でのプレイヤーの大きさを変えることが出来ます。

デフォルトでは100が入っており、例えばこれを1000に変えるとプレイヤーは10倍の大きさになる事ができます。

 

Before

 

After

スケール感がわかり易いようにオシャレな寝室風にしてみました!

(しかし、安いからと目的もなく買ったアセットがこんなところで役に立つとは・・・)

以上です!

 

・・・では内容が寂しいのでブループリントでの実装例もご紹介します。

同じ機能がブループリントでも用意されています。

ブループリントではSet World to Meters Scaleノードを使います。

それでは早速VRプレビューにて巨人ライフを満喫だ!

 

挙動がおかしい

ですが、ここで 満喫だ!とはいかない事態が発生しました。

というのも、ちょっとの動作でかなりの距離を動いてしまい久々にVR酔いのダメージを負いました (><;

これじゃ使えないぞ、ということで対策を検索するも思うようにヒットせず・・・

途方にくる中、とりあえずパッケージ化してみると・・・あれ?普通に問題なく動くぞ(@@;

どうやらパッケージ化するとちゃんと動くようです。

 

おまけ だんだん大きくなるモード

Set World to Meters Scale ではVRPawnの中心を基準にスケールされるので、

数値を変更すると中心に立っていないかぎりはカメラの位置がずれてしまいます。

そこで、それを補正する為に以下のようにブループリントを組みました。

これで同じ場所に立ったまま大きくなることができます。

銀のスプーンや懐中電灯を片手に連打してお楽しみいただければ幸いです。

 

※当ブログ記事はすべて自己責任の下にご利用ください。

 

関連記事

TOP