Let's Enjoy Unreal Engine

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

UE4 Color Correct Regionで特定範囲内だけのカラコレをやってみる

UE4.26にはColor Correct Regionという特定の範囲内に対してのみ影響を与える色補正をかけることができます。Color Correctは元々映像系の専門用語ですが、UE4にも様々なColor Correct機能があります。

今回紹介するColor Correct Regionはボリュームのように扱うことができ、特定の範囲に対してのみ影響を与えるという少しだけ特殊な機能です。早速使っていきます。

続きを読む

UE4 Color Correct Regionで特定範囲内だけのカラコレをやってみる

UE4.26にはColor Correct Regionという特定の範囲内に対してのみ影響を与える色補正をかけることができます。Color Correctは元々映像系の専門用語ですが、UE4にも様々なColor Correct機能があります。

今回紹介するColor Correct Regionはボリュームのように扱うことができ、特定の範囲に対してのみ影響を与えるという少しだけ特殊な機能です。早速使っていきます。

続きを読む

UE4 アクターパレット(Actor Palete)でレベルデザインを少し楽にする

今月もミニ更新です。

UE4.26かひっそりと追加されていた『アクターパレット(Actor Palete)』プラグインというものがあります。このアクターパレットというのは、名前の通り"アクター"を画材の"パレット"のように便利に使えるようにするためのプラグインです。

ただUE4でパレットと言われてもパっとイメージがつかないかもしれません。アクターパレットはレベルデザイン時に、別のレベルに配置されているアクターを直接選択し、そのまま編集中のレベルにD&Dで持ってくるといったことが可能なプラグインです。

文章で説明するよりも使われているイメージがあった方がわかりやすいと思いますので、実際に使ってみましょう。

続きを読む

UE4 ネットワークマルチプレイヤーゲームを作る時の役割について

ここ最近はUE4でネットワークを使ったマルチプレイヤーゲームを作る機会が多くなってきました。UE4はエンジン自体が最初からネットワークマルチプレイヤーを幅広くサポートしています。しかし、実際に制作を行うためにはエンジン独特のノウハウが必要で、これらを解説している情報というのは少ないというのが現状です。

そこで今回はUE4でネットワークマルチプレイヤーゲームを作るための設計やクラスごとの役割についてを解説したいと思います。UE4のネットワーク周りについてのドキュメントは以下のページにありますのでこちらも参考にしてください。

docs.unrealengine.com

またUE4でネットワークを扱う際に非常に重要な部分となる所有権とRPCについて、ヒストリアさんのブログ記事が非常に参考になるので、こちらもどうぞ。

historia.co.jp

今回の記事はListenサーバー、Dedicatedサーバー、どちらを使ったとしても考え方そのものは同じです。Listenサーバーの場合は、クライアント側の処理も含めてサーバーが行う必要があるということに気をつけましょう。

それではメインの解説をしていきます。

続きを読む

UE4 マクロでワイルドカードを使って等価比較ノードを作る

今回は久し振りに軽めのネタです。

UE4のブループリントマクロではどんな型でも接続可能なワイルドカードピンというものを作成することができます。いわゆるプログラミング言語ジェネリクスと呼ばれるものに近いものではあるのですが、ブループリントのワイルドカードは制約も多く、一般的なジェネリクスのように作成することが難しいです。

等価比較というのは指定した2つの値が同じものかを調べることです。UE4でも等価比較ノードは沢山用意されており、以下のように型ごとに用意されています。(この他にも沢山)

f:id:alwei:20210124160232p:plain

マクロで作成しようとした際、ワイルドカードによって比較しようとしても結局は以下のように型が決められてしまうので、汎用的なノードを作ることができません。

f:id:alwei:20210124160402p:plain

そこで登場するのが配列用ノードです。配列用のノードは元からワイルドカードで指定できるようになっており、これを少し工夫することでなんと等価比較ができるようになります。それを実装したのが以下です。

f:id:alwei:20210124160630p:plain

片方側の要素でMake Arrayで配列を一度作成し、その配列からContainsノードで要素が存在するかをBooleanで受け取ります。これでどんな型にも対応できる等価比較ノードの出来上がりです。実際に使ってみると以下のような具合です。

f:id:alwei:20210124160830p:plain

全て同じノードであらゆる型のピンに対応が可能です。中身はそれぞれ同じ値を設定しているので結果も全てtrueになります。

f:id:alwei:20210124160944p:plain

ちょっとした工夫ですが、こういうハック的なことができるのはブループリントの面白いところかもしれません。非等価比較も条件を逆にすれば簡単に作成できますね。当然ながら内部で配列を作成する必要があるので、通常の等価比較よりも重たくなることは注意が必要です。

以上、ワイルドカードを使った簡単な等価比較ノードの作り方でした。

UE4 セルシェーディング系アセットレビュー!

この記事はUnreal Engine 4 (UE4) Advent Calendar 2020 その1日、25日目の記事となります。

qiita.com

今年は技術記事ではありませんが、UE4マーケットプレイスで販売しているセルシェーディング系アセットについて、私が所持しているものを徹底レビューします!

思えばマケプレにもかなりの数のNPR系のアセットが増えましたが、なかなか購入までは至らず、中身が気になっている人もそれなりにいるでしょう。少しでも購入の際の参考になればよいかと思います。

今回レビューするアセットは主にポストプロセスを未使用のものを中心に紹介しています。ポストプロセス系はお手軽ですが、どうしても表現力で一歩落ちるのと数が多いので今回は省くことにしました。その分ひとつひとつのアセットを濃い内容で解説しています。レビューは★の数で評価していますが、最大は★5つとしています。

レビューをするアセットは以下となっておりますので、気になるアセットがあればぜひ購入してみてください。

  • JIFFYCREW CEL SHADING
  • Advanced Cel Shader Essentials
  • Anime Toon Shading
  • Cel-Shader & Outline
  • Cel Shading +
  • Cartoon Cel Shader
  • まとめ
続きを読む

UE4.26 Enhanced Inputについて

そろそろ正式版がリリースされそうですが、今回もUE4.26ネタです。

UE4.26 Previewの概要については以下から。
forums.unrealengine.com

今回は数ある4.26の新機能であるEnhanced Inputについてを解説します。Enhanced Inputはその名前の通り、強化された入力のシステムです。既存の入力システムでは微妙に届きづらなかった部分にもアクセスが可能になっています。

では早速使い方を解説していきましょう。

続きを読む