Happy My Life

日常とか技術とか

Twitterプラグイン for UE4

思いつきで作成してみた。今のところはOAuth認証とTweetのみができるようになっている。近日中にソースコードを公開する予定。githubにてソースコード公開中。プルリクも受付中。

ダウンロード

プラグイン: Twitter4UE-v011.zip サンプルプロジェクト :TwitterPluginsUE4-v011.zip

続きを読む

UnrealEditorを改造する

UE4のメリットの一つにソースコードが公開されているけど、これはゲームエンジンのみならずエディタ(UnrealEditorなど)の主要なソースコードも含まれている。

つまり、オレオレUnrealEditorを作成できる。企業や使う人によっては「デフォルト設定は微妙に使いづらいので、なんとかしたい」というニーズも(少ないかもしれないが)あるはず。ということで、UnrealEditor改造の入門編を書いてみる。

ただ、今回はうっかりUE4のmasterブランチ(UE4.10)で試してしまったので、以下で示したソースコードの行番号は今後ズレるかもしれない。ま、ソースコード自体はそう変化はしないはずなので、そのあたりは適度に読み替えてもらえるとよいかと。

改造方法は2通り

改造方法としては、2通りある。

  1. ソースコードで追加・変更する
  2. リソースを追加・変更する

ここでは、1.の例として「GridのTooltipの表示変更」、2.の例として「グリッド値の追加」を行っている。 改造前(通常時)は次の様な表示となっている。

続きを読む

「UE4Gameバイナリがありません」を解決する

タイトルだけ見ても「なんのこっちゃ?」と思う人がいるだろうし、まずその経緯を解説する。ここではUE4.9タグから取得したソースコードをビルドすることを前提に話を進めていく(UE4.8のソースコードでも同じなのだが)。

最初に言っておくが「○○したらOK!」といった明確な解決方法はよく分かっていない(追求することはできるのだが、確認にとても時間がかかるので諦めた)。なので、この方針でビルドしたら解決した、というメモとして残しておく。

UE4のソースコードを、いつものように「Development Editor」&「Win64」でビルドしてUE4Editorを起動し、Androidのパッケージを作成しようとすると、次のダイアログが表示されて、Android向けのパッケージ(apkファイル)が生成されない、という事象が発生する。もちろん、EpicGamesが配付しているUE4.8ではこのようなダイアログは表示されない。これは、あたりまえだが。

dialog

なんでだろう?と思ってググったりいろいろ試したりして、ようやく解決方法が分かった。

続きを読む

UE4のビルドが強制終了するときは

いつものようにUE4をビルドしていると、UnrealBuildTool(UBT)が動作しているときに、ビルドが中断してしまう事態が発生した。 ログを見ると、"System.ComponentModel.Win32Exception"という例外によって止まっているようだが、Win32Exceptionって具体的に何やねん!、というツッコミをいれつつ、頭を抱えた(詳細なログは最後に)。

原因はアンチウイルスソフト

開き直ってググってみると、どうもアンチウイルスソフトが影響しているらしい(私はカスペルスキーを利用)。ということで、一時的に無効にすると、すんなりとビルドが通った。

以前はこんな事はなかったのだがな。UBTの仕様変更か、カスペルスキーの問題か。どちらが悪いかは分からないので、とりあえずアンチウイルスを一時的に停止してみると、すんなりとビルドが通った。この問題のためだけにアンチウイルスソフトを変更するつもりもないので、当面は一時停止でしのぐつもり。

ちなみにこの問題は、UE4のビルドに限らずUBTを利用しているシーン全般で発生する可能性があるので。ビルドが異常終了した際、以下のログのように「UBTが動作してるときに止まっているなー」と思ったら、アンチウイルスソフトを一時停止してから、再度ビルドしてみるのがよいかもしれない。

続きを読む

UE4向けのC++スニペットがあるよ

UE4のソースコード(Engine\Extras\VisualStudioSnippetsディレクトリ)には、クラス定義、プロパティ定義などのSnippetが大量に存在している。snippetを利用することで、次のような定義が自動挿入できる。

  • クラス
  • インターフェイス
  • プロパティ
  • ブループリント関数
  • LOG出力
  • イベント生成
  • イベントのデリゲート

実際にどのようなsnippetがあるのかは、ディレクトリのファイルやreadme.mdをみてもらったらよいかと。

続きを読む