Let's Enjoy Unreal Engine

Unreal Engineを使って遊んでみましょう

UE4.26 Water Systemを使ってみる

UE4.26 Preview 4が絶賛公開中ですが、新機能を少しずつ触っています。詳しい情報はある程度フォーラムにまとまっています。完全なリリースノートは正式版が公開次第でてくるでしょう。

forums.unrealengine.com

Chaos標準化、Fullbody IK、Mobile Deferred Renderer、GPU Lightmassなどなど、多くの新機能が搭載されていますが、今回はその中でも色々と面白そうなWater Systemについて触れたいと思います。

Water Systemはフォートナイトで既に実用化されており、既にある程度実用性の高いものとなっています、現状ではまだExperimental(実験段階)となっているので注意が必要です。

続きを読む

UE4 Cheat Managerを活用しよう

UE4.26のPreviewがでました。ちょっと新機能がてんこ盛りですが、調べるほどの時間がないので、今日は小ネタでいきたいと思います。

今回解説するのはUE4の隠れた便利機能である、Cheat Managerについてです。Cheat ManagerはUE4からの機能ではなく、UE3時代からあるUnreal Engineの由緒正しい機能のひとつです。名前だけを直訳すると、ずるい管理者という意味で、チートというのは基本的にゲームでは叩かれる行為です。

ただし、UE4のCheat Managerは開発を楽にし、デバッグをより効率的にするための機能なので、活用しない手はありません。Cheat ManagerはC++を使うことで本領を発揮する機能ですが、実はブループリントからでも活用可能です。今回はC++に頼らずに出来る範囲でCheat Managerを活用してみるという内容です。

実際のC++とBPのAPI一覧は以下にあります。

docs.unrealengine.com

docs.unrealengine.com

Cheat Managerの補足として、Player Controllerに紐付いており、Player Controllerを経由して利用します。またCheat ManagerはDevelopmentビルドでは利用可能ですが、Shippingでは全体の効果が無効化されますのであくまでも開発時専用の機能だと思ってください。

それでは早速実際に使ってみてどのような効果のノードがあるのかを解説していきます。

続きを読む

UE4 C++ Hot Reloadプラグインを使ってみる

今回も前回同じプラグイン関連の記事となります。

個人的に以前から少し気になっていたプラグインがあったので、検証してみました。

f:id:alwei:20200830113051p:plain

www.unrealengine.com

このプラグインUE4標準のC++をホットリロードする機能とは別にホットリロードの機能を提供するプラグインです。

説明だけを読むと、とても素晴らしいことが書いているので気になっていました。以下は英語の説明。

Ultra-fast reload of source code no matter how big is your project, C++ Hot Reload only reloads your modified files creating micro-dlls, which allow you to change the whole class structure of your header files and see the changes reflected in your BPs and Editor properties in seconds.

Stop wasting time doing full builds, using LiveCoding or thinking in buy a new machine. Check out the reviews of developers that are using this plugin. Whatever the doubt; visit Discord, you will not regret to buying this plugin.

標準のホットリロードや、Liveコーディングよりも高速でかつ、すべてをリロードし、大幅にビルド時間を短縮してくれるそうです。「このプラグインを購入することは後悔しません」とまで書かれています。

そこまで言うのなら検証してみようということで早速マケプレで購入して検証してみました。値段が非常に高いプラグインなので、購入を迷っている人に少しでも参考になればと思います。

続きを読む

UE4 BPで使える非同期タスクやマルチスレッドのプラグインを比較してみる

ブループリントでは非同期処理こそ扱えるものの、マルチスレッドな処理を通常扱うことはできません。マルチスレッドな処理は扱いが非常に難しく、バグが発生すると手が付けられないほどに問題が複雑するからだと思います。

しかしブループリントではどうしても処理が重くなってしまい、負荷をバックグラウンドに逃がしたいというケースは少なからずあります。エンジン標準機能にマルチスレッドの呼び出しは用意されておりませんが、マーケットプレイスには多彩なブループリント用マルチスレッドプラグインがありますので、今回は一通りを触ってみて、どのように使えるかを比較検証してみました。

今回検証したプラグインは以下の4つとなります。

Actions Extension:Piperift:Code Plugins - UE4 マーケットプレイス

BPThreads:Mashmashu Studio:Code Plugins - UE4 マーケットプレイス

Call Function Async:Alexandr Vasilyev:Code Plugins - UE4 マーケットプレイス

Multi Task Pro:Yaki Studios:Code Plugins - UE4 マーケットプレイス

Actions Extensionのみ無料で、残りは有料となります。Multi Task Proのみ、無料版があり、こちらは非同期処理のみで、機能はMulti Task Proの機能制限版となるので比較には入れていません。試してみたいという方は以下からどうぞ。

Multi Task:Yaki Studios:Code Plugins - UE4 マーケットプレイス


f:id:alwei:20200725184659p:plain

ちなみに今回検証したプラグインは全て最新版のUE4.25.2まで対応しています。最新バージョンでもしっかりと動作することを確認済みです。

それでは早速比較した結果を見ていきましょう。

続きを読む

UE4 AIがナビメッシュを使わずに移動する際のTips

AIが移動を行う際には、MoveToなどのノードや関数を使って移動することが多いとはずです。

そしてMoveToなどを使う際には必ずといっていいほどにナビゲーションメッシュを使うことになりますが、実はナビゲーションメッシュがなくても移動自体は可能です。以下の記事を読んでいただくと簡単に移動系ノードについてを理解できると思います。

unrealengine.hatenablog.com

続きを読む

UE4 ランタイムバーチャルテクスチャーとランドスケープによるメッシュ境界のブレンド

UE4.23から使えるようになったバーチャルテクスチャー(Virtual Texture)という、非常に大きなテクスチャーでもメモリー消費量を抑えて、更にパフォーマンス効率も上げて使用できる機能があります。

バーチャルテクスチャーには2種類あり、ランタイムバーチャルテクスチャー(Runtime Virtual Texture)と、ストリーミングバーチャルテクスチャー(Streaming Virtual Texture)と呼びます。両者の違いは名前の通り、ランタイム(実行中)で使うか、ストリーミング(逐次)で使うかの違いです。

RVTは主にランドスケープで複雑なマテリアルのブレンドに最適です。SVTはUDIMと呼ばれる複数のUVを持たせたいオブジェクトなど、更に巨大なテクスチャーを効率よく扱う時に最適です。

docs.unrealengine.com

今回はランタイムバーチャルテクスチャー、通称RVTを使ってランドスケープによるメッシュ境界のブレンドというものをやってみます。メッシュ境界のブレンドというのは背景物が地面などに刺さったりしてしまい、違和感のあるような状態を少しでも緩和させる際に最適な手法です。UE4には他にも背景物を地面を馴染ませる方法がいくつかありますが、RVTはより効率よくブレンドが可能な仕組みとなっているのでお勧めです。

続きを読む

UE4.25で追加されるマイナーなプラグインを3つ紹介

ついにPreview 7まで来てしまったUE4.25ですが、そろそろきっとリリースされるだろうと思い、今回は4.25で追加されるメジャーな機能ではなく微妙にマイナーそうなプラグインを3つ紹介したいと思います。

今回紹介するのは、"Blueprint File Utilities"、"Data Charts"、"Volumetrics"という3つのプラグインです。

f:id:alwei:20200425200258p:plain

これらのプラグインを個別のオンにしておきます。※上記画像の3つのプラグインは同じ位置に並んでいるわけではないので注意

では中身を見てみましょう。

続きを読む