Let's Enjoy Unreal Engine

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

UE4 Lerp処理やEase処理を簡単に使う

ここ最近夏のイベントに向けてかなり忙しい状況になってきているので更新が下がっている状態です。9月まではこんな状況が続くかと思いますので、しばらく控え目の更新で。

久し振りにブループリントのノード解説をやります。今回はLerp処理とEase処理についてです。

これらのノードは移動や回転を処理する時に、加減速を伴った動作を可能とします。一部のゲームでは非常によく使う処理のひとつです。ブループリントではこれを通常のコードを書くよりも遥かに簡単に実現することが可能です。

まずは以下のように移動したいアクターと移動到達地点を予め決めておきます。これは移動開始地点と終了地点がわかればどのような方法でも構いません。

f:id:alwei:20160712194402p:plain

続きを読む

UE4 Unreal C++のリフレクションを使って文字列で関数を呼び出す方法について

今回の記事もC++なので、完全にプログラマー向けとなります。

UE4で利用できるUnreal C++はとても強力な機能を持っていますが、本来のC++にはない独自のリフレクション機能を使うともっと面白いことができます。

普段ブループリントを使っている人にはさほどありがたい話ではないかもしれませんが、C++では通常このような関数呼び出しはできませんので、とても重宝します。
まずは適当なC++プロジェクトを用意して、C++クラスでアクターを作成します。

少し古い情報となってしまっていますが、C++クラスの作り方などは過去にも記事にしたことがあるので参考にしてください。
UE4 C++コードをブループリントで使えるようにする(関数ライブラリー編) - Let's Enjoy Unreal Engine
UE4 C++コードをブループリントで使えるようにする(アクタークラス編) - Let's Enjoy Unreal Engine

続きを読む

UE4 AddActorWorldRotationのクラッシュを回避する

UE4.11からのバグですが、現在最新のUE4.12.3では"AddActorWorldRotation"ノードを利用するとクラッシュが発生します。
これが発生するのは日本語版のアンリアルエディターのみで、言語設定を英語などにしていれば発生しません。

原因はローカライズの問題です。ローカライズテキスト内部になぜか特殊な制御文字が埋め込めており、UE4側がそれを処理できずクラッシュしているようです。確実に再現されるバグなので、報告もすでにされているのですぐに直るかなと思って静観していましたが、どうやら現在も直っていないようなので、暫定的に対処方法を載せておきます。

f:id:alwei:20160624120535p:plain

続きを読む

UE4 C++ファイルをプロジェクトから削除する

今回から少しずつ、UE4のC++記事も増やしていきたいと思います。

まずはUE4で作成したC++クラスのファイルを削除する方法です。
ネットで検索してみてもその方法がまちまちで、正確な情報が書かれていないので、改めて書いてみます。

今回は以下のファイルをプロジェクトから削除してみたいと思います。

f:id:alwei:20160613102716p:plain

続きを読む

UE4 シーケンサーのカメラのZ軸があらぬ方向へロールするのを回避する

もう一週間経ちますが、UE4.12がリリースされました。日本語リリースノートも公開されました。

www.unrealengine.com

やはり今回の目玉はなんと言ってもシーケンサー正式版のリリースでしょう!
UE4.11とは別物クラスに生まれ変わっています。
早速私も色々と試しているんですが、少し問題がありました。

動画gifになっているので、詳細は続きから。

続きを読む

UE4 トゥーン(セル)シェーディングをしたいものに対してのみかける方法

この記事は前回の記事から続いた内容のものとなります。

unrealengine.hatenablog.com

セルシェーディング手法については前回の記事を参考にしてください。

さて、前回作成したものには大きな問題がひとつあります。
"シーン全体に対してセルシェーディングがかかってしまう"という点です。

これにより細かい問題が色々と発生します。まず背景のSkySphereがライティングの影響を受けて、真っ黒な状態となってしまっていました。まずはこの問題を対処してみます。

続きを読む

UE4 比較的安価な手法でトゥーン(セル)シェーディングをやってみる

過去にUE4でトゥーンやセルルック表現についてを解説しました。

unrealengine.hatenablog.com

またエピック下田さんが開発したNPRマテリアルを利用することにより、同じようなことが可能となります。

qiita.com

これらの手法を使うのは当然ありなのですが、上記はエンジンビルドが必要だったり、複雑なマテリアルを使いこなす必要があります。
まずお手軽に、そして比較的安価な手法によるセルシェーディング可能な方法が海外フォーラムで公開されていました。

forums.unrealengine.com

続きを読む