Let's Enjoy Unreal Engine

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

UE4 GameUserSettingsを使ってウィンドウモードなどを設定する

UE4.10か4.11辺りから"Game User Settings"というものを利用できるようになりました。
これは元々UE4のコンソールコマンド経由で設定できたものを、ブループリントのノードから設定できるようにしたものです。

以下のページに設定ができるブループリント用ノード一覧があります。

docs.unrealengine.com

コンソールコマンドの場合、コマンド名がわからなかったり、複雑なコマンド用文字列を生成しなくてはならなかったりで面倒が多いものです。

今回はこれらのノードの使い方と注意点についてを解説します。

続きを読む

UE4 実行ファイルに自作アイコンを設定する

リリースする直前にゲームが完成する時点でより細かい部分にこだわる人は実行ファイル(exe)のアイコンなども設定したいと思うはずです。

UE4でもこの設定が可能なのですが、ちょっと特殊なことになっていたので解説しておきたいと思います。

Windowsのアプリケーションのアイコンファイルはicoという拡張子で、単一画像と複数画像を含めたものを作成することが可能です。

しかしUE4でアイコンを設定する場合に単一画像で設定した場合には、正しい画像が設定されず、UE4デフォルトのUの文字のアイコンになってしまいます。

今回はこれを回避する方法を解説します。利用しているバージョンはUE4.12.5です。

続きを読む

UE4 日本語環境でのMS-IME使用時のクラッシュなどの問題について

UE4には昔から日本語環境にてMS-IMEを利用した際に、ブループリントコンパイルを行うと、とても重たくなるという問題がありました。

Microsoft IME 2010を使用しているとBlueprintのコンパイルが異常に遅くなる - UE4 AnswerHub

この問題はかなり根が深く、MS-IMEを利用しなければそこまで問題になることはなかったので、一部のUE4ユーザーの中での暗黙の了解となっていました。
しかしこれがUE4.12で問題が更に深刻化しており、ブループリントコンパイル時にクラッシュが多発するようになったようです。

私の方からも「 この問題については早急に修正していただきたい」とエピックゲームズジャパンの中の人にお伝えしていますが、現状では修正されていない状態です。
一先ず注意喚起のためにこの記事を書いておきますので、UE4.12にてクラッシュが多発しているという方は、まずIMEをチェックしてみてください。

追記 : 他のどのIMEを使えばいいかわからないという方へ

Google日本語入力などをインストールしてください。ただしこれを使用したからといってブループリントの問題が全て解決するわけではありません。ただし、クラッシュはなくなるはずです。

pc-karuma.net

Windows 7Windows 8Windows 10で微妙に導入方法が違いますがそこまで対した違いではありませんので、必要になれば調べてみてください。

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

続きを読む