ぼっちプログラマのメモ

UE4とかUE5とかについて書いたり書かなかったり。

UE4でHTC Vive Trackerを動かしてみた

はじめに

HTC Vive Trackerが発売されました!
(なにそれ?という方は↓の記事がとても参考になります)
teruaki-tsubokura.com


ということで、早速UE4上で動かしてみました。( UE4.15.1 )

MotionControllerコンポーネントを試してみる

まずは、ViveコントローラやOculusTocuhを動かす際に使うMotionControllerコンポーネントを試してみました!
…動かない!

どうやらまだViveTrackerには対応していないようです(;_;)

現状の方法

GetTrackedDevicePositionAndOrientationを使うことで、ViveTrackerのトラッキング情報を取得可能です。指定するDeviceIdは動作環境によって変わってくると思います。
f:id:pafuhana1213:20170331015440p:plain

VirtualRealityテンプレートを使用する場合、↑のノード・コンポーネント階層構造のActorを作成し、MotionControllerPawnのBeginPlayでそのActorをSpawnすることで動作します。BP_MotionControllerをSpawnしている箇所の実装が参考になります。

おまけ:VR空間で酒を飲んでみた


f:id:pafuhana1213:20170331015944j:plain

深夜のテンションこわい

UE4のFullBodyIKプラグイン「IKinema RunTime Plugin」とRecording Sequence機能を使って簡単にモーションを録画・作成してみた

前回
pafuhana1213.hatenablog.com

はじめに


「UE4にはデフォルトでレコーダーシステムがついてるので、モーションキャプチャーの代用にもなるのでは?」

やりましょう!

ということで、IKinemaプラグインで付けたポーズ・モーションからAnimationSequenceアセットを作成してみました。録画はUE4標準機能であるRecording Sequenceを使っています。4.14で入った新機能です。
www.youtube.com
か、簡単過ぎる…!ちょっとしたポーズなら十分これで作れそうな気がします!
それでは、どういう実装・流れなのかを紹介します。

Recording Sequence

docs.unrealengine.com
www.youtube.com

この録画機能を使ってアニメーションを保存します。↑では録画ボタンを押していますが録画開始/終了用のBPノードが用意されているのでそちらを使います。
f:id:pafuhana1213:20170213230059p:plain
Actors to Recordには録画対象であるActorの配列を渡します。今回はVRコスプレしたキャラクタだけでいいので↑の実装になっています。

そして、シーンを実行 → 録画開始 → 録画終了すると…
"Content\Cinematics\Sequences\Animations"にアニメーションが出力されています!
おわり!

f:id:pafuhana1213:20170213230521j:plain
(あまりにも簡単過ぎて手抜き記事になってしまった…)

UE4のFullBodyIKプラグイン「IKinema RunTime Plugin」を使ってVRコスプレしてみた

はじめに

突然ですが、
VRコスプレデビューしましたー!


(いや、まあ、便乗してやってみたレベルですが…)


今回使用したのは
UE4用FullBodyIKプラグイン「IKinema RunTime Plugin」です。
www.ikinema.com
この記事を書いた時期だと↓の動画で話題になっていました
www.youtube.com

IKinemaは様々なプロジェクトで使用されているアニメーション用プラグインですが、
UE4を用いるインディーズ向けに格安なライセンスが用意されています。
なんと99ドル!…いやいや格安ですって!

  • バイナリ形式での配布
  • 99ドル(買い切り)
  • フォーラムでのサポートのみ
  • Launcherで配布されているエンジンのみに対応
  • PCサポートのみ
  • 14日間無料体験可能

単純なIKならUE4標準で用意されていますが、
全身を取り扱うFullBodyIKの実装はかなり難易度が高いです。
ということで、早速このプラグインを試してみましょう!

続きを読む

マテリアルインスタンスのMaterial Property OverrideのOverrideフラグをロックするエディタ拡張について

前回
pafuhana1213.hatenablog.com

前々回
pafuhana1213.hatenablog.com

はじめに

突然ですが、先日開かれたUE4マテリアル管理勉強会(#UE4DD)のスライドに
こんなページがありました。
f:id:pafuhana1213:20170129153703p:plain

www.slideshare.net

ということで、今回はMaterial Property Overrideをロックするフラグを追加します。
具体的な実装手順については続きにて。エンジンのバージョンはUE4.15です。
f:id:pafuhana1213:20170129154027g:plain
※ エンジン拡張した場合、その後の動作は保証できない上に
  バージョンアップ時のマージ対応が必要になります。ご注意下さい!

続きを読む

マテリアルインスタンスのStaticSwitchParameterのOverrideフラグをロックするエディタ拡張について

はじめに

突然ですが、先日開かれたUE4マテリアル管理勉強会(#UE4DD)のスライドに
こんなページがありました。
f:id:pafuhana1213:20170125224856j:plain

何故StaticSwitchParameterの使用に慎重にならないといけないかについては
↓のスライドを見て頂くとして…

www.slideshare.net

この話が出た時、
「Static Switch Parameterをロックできるフラグがあるといいね」
というツイートを幾つか見ました。

ということで、今回もエディタ拡張してみました!
f:id:pafuhana1213:20170125230015g:plain

Lockフラグを有効にしたらStaticSwitchParameterを全グレーアウトしたかったのですが、
予想以上に難しそうなので、「StaticSwitchParameterのOverrideフラグをロック」する形にしました。

具体的な実装手順については続きにて。エンジンのバージョンはUE4.15です。

※ エンジン拡張した場合、その後の動作は保証できない上に
  バージョンアップ時のマージ対応が必要になります。ご注意下さい!

続きを読む

UE4のアセットに説明文・タグなどを追加するエディタ拡張について

はじめに

突然ですが、先日開かれたUE4マテリアル管理勉強会(#UE4DD)のスライドに
こんなページがありました。

f:id:pafuhana1213:20170123222157p:plain
f:id:pafuhana1213:20170123222121p:plain
f:id:pafuhana1213:20170123222034p:plain

説明文を記述できるように拡張!
タグ付けの機能を追加!

なにそれ超便利!

ということで、早速やってみましょう!
エンジンのコードを弄る必要はありますが、凄く簡単です!

…あ、UE4マテリアル管理勉強会のスライドはこちらです。
超有益な情報の塊なので読むことを超おすすめします!
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DD
マジシャンズデッド ポストモーテム ~マテリアル編~ (株式会社Byking: 鈴木孝司様、成相真治様) #UE4DD
大規模タイトルにおけるエフェクトマテリアル運用 (SQEX大阪: 林武尊様) #UE4DD

続きを読む

VR FUNHOUSE用ModをSteamにアップする方法について

f:id:pafuhana1213:20170117014907j:plain

はじめに

2017/1/20 を締め切りとして、NVIDIA 公式の「VR FUNHOUSE MOD コンテスト」が開催されています!
VR FUNHOUSE MOD コンテスト | NVIDIA
http://www.nvidia.co.jp/object/nvidia-vr-funhouse-modding-contest-jp.html

詳細や作り方などは↓を見て頂くとして、
MOD を作る 1DAY ハッカソン「VR Funhouse MODthon」が2017 / 1 / 15(日)に開催されます
実際に作ったModをSteamにアップするまでの手順・注意点を説明します!

この作業に入る前に、
必ずSteam版のVR Funhouseをインストールして下さい
Modをアップロードする上で必須です。

続きを読む