Let's Enjoy Unreal Engine

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

UE解説

UE4 ライティングを複数PCで分散ビルドする

UE4でライティングを行う際に可動性(Mobility)をスタティック、またはステーショナリーにすることで、ライティングビルドを実行すると、ライトマップ(光と陰の情報)のベイク(焼き付け)を行うことが可能です。ライティングそのものについては公式ドキュメント…

UE4 IKを使ってリアルタイムにボーンを制御してみる

IK(インバースキネマティクス。日本語では逆運動学)という機能は3DCGの世界でごく一般的に使われている機能のひとつですが、リアルタイムのゲームではまだまだ使われていないことも多いです。IKを使うと高さに合わせて足の位置を調整したり、腕の位置をドア…

UE4 アニメーションモディファイア(Animation Modifier)で自動的にアニメーション情報を追加する

UE4.16で追加されたアニメーション新機能に"アニメーションモディファイア(Animation Modifier)"というものがあります。www.youtube.comただこれ、パッと見てもぜんぜん利点も使い方もわからないですよね…私も全然わかりませんでした。というわけでちゃんと…

UE4 AIで使う移動と停止のまとめ

UE4にはAIを移動させるための機能が沢山あります。ちょっと多すぎて、いつも移動はできるのに、どれで停止させられるのかわかりづらいですね… 個人的な備忘録も兼ねてまとめておきたいと思います。まずUE4でAIに移動で使うための機能は大きく2種類あります。…

UE4 LookAt機能を使ってGrayちゃんに見つめてもらってみる

UE4のアニメーションブループリント内で使用できる、"Look At"ノードは簡単にキャラクターたちを振り向かせることが可能です。 UE4.16では"Look At"ノードが強化され、さらに使いやすいものとなっています。今回はこの"Look At"ノードを使ってGrayちゃんに見…

UE4 コントロールリグシーケンスを使ってアニメーションを作ってみる

UE4.16 Preview 1の配信が開始されて、またまた色々と新しい機能が追加されました。今回はその中でも特に目玉機能のひとつでもある、コントールリグシーケンス機能を使ってキャラクターアニメーションを作ってみたいと思います。UE4.16 Previewについては以…

UE4 モバイル用GPSロケーションサービスを使ってみる

UE4.15からモバイルで使えるGPSロケーションサービスの機能が使えるようになりました。これを使うといわゆるポケモンGO的なアプリを作れるようになるかもしれません。当然これだけでは無理ですが。利用するには当然ながらモバイル用にパッケージングする必要…

UE4 HoloLens上でUE4のUWPアプリを実行するまで

実は少し前からMicrosoftのHoloLensをお借りして色々と試していました。このタイミングでこんなものが届いてしまった… pic.twitter.com/JZBRkfbtzT— alwei (@aizen76) 2017年3月2日で、本来HoloLensアプリの開発にはUnityを利用するか、DirectXネイティブな…

UE4 Gameplay Tagを使ってゲームプレイ時のタグ管理をより扱いやすくする

リリースされたばかりのUE4.15から正式にGameplay Tagがフルサポートされました。Gameplay Tagとはその名前の通り汎用的なゲームプレイコンテンツを作る際に利用できるラベル情報です。通常のタグと比較すると以下のような機能を持ちます。 1. 中央タグデー…

UE4 モバイルDLC&パッチ処理について

この記事は裏Unreal Engine 4 (UE4) Advent Calendar 2016への参加4日目の記事です。qiita.com裏っぽいネタを考えましたが、正直前回の内容の方がよっぽど裏っぽいと今更ながら気づきましたが、訂正はしません。さて、今回はUE4.14で追加された『Mobile Patc…

UE4 Oculus Touchについての所感

実は少し前にOculus Riftのモーションコントローラーデバイスである、『Oculus Touch』の開発機をOculus社の方のご厚意でいただくことができました。Oculusさんからのご厚意でTouchの開発機を頂きました。NDAがあるので、なんでも情報を出す事は出来ませんが…

UE4 物理アニメーションでキャラを動かしてみる

UE4.13から導入された物理アニメーションという仕組みがあります。結構時間が経ったので、公式での解説がでてくるかなと思いきや、未だに解説どころか日本語の情報が皆無なので、さっくりと調べてみたことを書いてみます。まず物理アニメーションには当然な…

UE4 Blutilityによるお手軽なエディター拡張

前回の記事にてUnreal Fest 2016 横浜にて登壇した内容のスライドを公開しました。そこで最後に取り上げたBlutilityという機能に関して、正直なところセッション中でも今ひとつ解説しきれなかった感がありました。まだExperimental(実験的)な機能ではあり…

UE4 Procedural Mesh Sliceを使ってライトセーバーでメッシュを斬ってみる

UE4.13のリリースノート内に新しく、"Procedural Mesh Slice"という機能が追加されており、非常に面白そうなのでメッシュを斬ってみることにしました。 これは以前の記事でも取り上げたので、気になる方はそちらも見てください。unrealengine.hatenablog.com…

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

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

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

今回の記事もC++なので、完全にプログラマー向けとなります。UE4で利用できるUnreal C++はとても強力な機能を持っていますが、本来のC++にはない独自のリフレクション機能を使うともっと面白いことができます。普段ブループリントを使っている人にはさほどあ…

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

この記事は前回の記事から続いた内容のものとなります。unrealengine.hatenablog.comセルシェーディング手法については前回の記事を参考にしてください。さて、前回作成したものには大きな問題がひとつあります。 "シーン全体に対してセルシェーディングがか…

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

過去にUE4でトゥーンやセルルック表現についてを解説しました。unrealengine.hatenablog.comまたエピック下田さんが開発したNPRマテリアルを利用することにより、同じようなことが可能となります。qiita.comこれらの手法を使うのは当然ありなのですが、上記…

UE4 コンポーネントベースのステートマシンについて

実はちょうど一年くらい前に公開した、ステートマシンを実装したサンプルプロジェクトを配布しているのですが、改めてそのプロジェクトの解説を聞いてみたいという方がいましたので、公開後一年を経過しておりますが改めて解説したいと思います。プロジェク…

UE4 Anim Dynamicsを使ってアニメーションに物理を入れる

UE4.11の新機能にAnim Dynamicsというシンプルで高速な物理シミュレーションをスケルタルアニメーションの中に導入できる機能が実装されました。これの良いところはまず『高速であるところ』、次に『物理機能として独立している』、更に『ボーン単位で細かく…

UE4 アニメーションの切り替えを列挙型(Enum)で行う

UE4でアニメーションを行うためには、本来はアニメーションブループリントを使ってアニムグラフ上で管理する必要があります。 しかし場合によってはアニムグラフ上で全てのアニメーションをステートマシンで管理すると複雑なステート遷移により面倒なことも…

UE4 シーケンサーを使ってみよう トラック編

シーケンサーには様々なトラックと呼ばれるキー情報を付加することのできる領域を追加することができます。 このトラックは複数の種類があり、トラックを使い分けることにより様々な制御が可能になります。今回はそれぞれのトラックについての使い方を解説し…

UE4 シーケンサーを使ってみよう 操作編

さて前回に引き続き、シーケンサーを使ってアクターを操作していきたいと思います。 前回までの手順でシーケンサーは既に使えるようになっているはずです。 unrealengine.hatenablog.com それでは実際にシーケンサーを使ってアクターを操作していきたいと思…

UE4 シーケンサーを使ってみよう 基本編

UE4.11からマチネに代わるシネマティックカットシーンツール、『シーケンサー』が本格的に導入されます。 本当はUE4.11正式版が来てからの解説にしようと思いましたが、なかなか正式版が来ないので、今回はUE4.11 Preview 6を用いて解説しています。 シーケ…

UE4 トリガーボックス(Box Trigger)とトリガーボリューム(Trigger Volume)の違い

今回はよく勘違いされる、トリガーボックス(Box Trigger)とトリガーボリューム(Trigger Volume)の違いについて解説します。 このふたつ、本当によく似ていて最初は『なんでふたつあるの?』と思っていましたが、それぞれ明確に別物です。 見た目ではほぼ…

UE4 トゥーンシェーディングとアウトラインによるセルルック表現のためにやったこと

今回はここ最近やっていた事の成果についてを解説したいと思います。まずは以下の動画をご覧ください。 www.youtube.com これはUnreal Engine4というディファードレンダリングであり、物理ベースレンダリングというゲームエンジン内で実際に実現したリアルタ…

UE4 ゲーム中にカメラ切り替えを行なう方法

ゲーム中に複数カメラを切り替えたいという要望はどんなゲームでもあると思います。UE4ではいくらでもカメラ配置が可能で、自由なタイミングでカメラの切り替えを行なう事が出来ます。 実にお手軽な方法でカメラ切り替えが可能となっていますので、今回はそ…

UE4 4.8以降でアクターをマージする方法

UE4エディターには複数のアクターを1つのアクターとしてマージしたい場合に複数の手段があります。今回は特にUE4.8以降で変わってしまった部分を紹介しておきます。 ちなみにヒストリアさんのUE4ブログにも同様の方法が書かれていますが、以下の方法は4.7ま…

UE4 マテリアルを使って点滅ダメージリアクションを実装する

よくアクションゲームやシューティングゲームでは、ダメージリアクションとして点滅などの光る表現が使われます。UE4でそれを実現するにはマテリアルを使う必要があります。 実際に光ると以下のような感じに。

UE4 RPGツクールのようなマップが作れるタイルセットとタイルマップを使ってみる

UE4.8から正式な機能として早期プレビュー版ですが、Paper2Dの新しい機能としてタイルセットとタイルマップが追加されました。 これは横スクロールタイプのアクションゲームや日本では昔から馴染み深い、RPGツクールなどで作られているマップチップでマップ…

UE4 プロシージャルフォリッジを使って草木を自動で配置してみる

UE4.8からプロシージャルフォリッジという機能が使えるようになります。これは自動で草木や、岩などの自然物を配置して手間を大きく減らしてくれるという機能です。 無論自動で配置されるので必ずしも自分の気にいった配置になるというわけではありませんが…

UE4 Web Browserウィジェットを使ってツイッターをしてみる

UE4.8からWeb Browserウィジェットという、UMG用のコンポーネントが追加されています。これは標準でとても簡単にWebブラウザーの表示ができるというものです。 あまりにも簡単に使えるので、使い方を解説しておきます。今回使用バージョンは正式リリース前の…

UE4 キャラを可愛く見せるマテリアル作成のコツ

UE4は物理ベースレンダリングを採用しているので、真面目にやろうとするといわゆるジャパアニメのようなキャラクターは、ライティングによりとても怖い見た目になってしまいます。 これをなるべく回避し、UE4のリアルなライティングに馴染ませるようにマテリ…

UE4 無料のDropbox上にUE4のHTML5コンテンツを置いて公開してみる

UE4.7から非常にお手軽な方法でHTML5とWebGLで作ったコンテンツをインターネット上に公開が出来るようになりました。そして今回は無料版のDropboxを使って、UE4のHTML5コンテンツを公開するところまでやってみたいと思います。 今回使用するUE4のバージョン…

UE4 ブループリントでコルーチン的な事をやってみる

コルーチンというのはなかなか専門的な用語で、プログラマー以外の方はきっと聞いた事もないでしょう。プログラミング言語として、コルーチンが使えるものはC#やLuaが有名です。 コルーチン - Wikipedia コルーチンとは、一旦処理を中断した後、中断した場所…

UE4 スポーン時のアクター(SpawnActor)に引数を渡す方法

アクターをSpawnする際にはSpawnActor from Classノードを使いますが、デフォルトのままだとノードの引数が固定されており、追加の情報を渡す事が出来ません。 SpawnActorはゲーム中にダイナミックにアクターを生成する唯一の方法なので、レベルに配置しない…

UE4 モーフターゲットを使って表情を変えてみる

UE4ではモーフターゲットという機能を使ってシェイプアニメーションやフェイシャルアニメーションが可能です。 実際にこれらのコンテンツを作るにはMayaなどを使ってブレンドシェイプという機能を使って作ります。具体的な制作方法については公式ドキュメン…

UE4 AnimMontage(アニメーションモンタージュ)について プロシージャルアニメーション編

AnimMontage(アニメーションモンタージュ)について、最終編です。前回までは以下から。 UE4 AnimMontage(アニメーションモンタージュ)について 解説編 - Let's Enjoy Unreal Engine UE4 AnimMontage(アニメーションモンタージュ)について 実践編 - Let's Enj…

UE4 AnimMontage(アニメーションモンタージュ)について 実践編

AnimMontage(アニメーションモンタージュ)について、前回より続きです。 UE4 AnimMontage(アニメーションモンタージュ)について 解説編 - Let's Enjoy Unreal Engine 今回は実際にアニメーションモンタージュを作成して、実際に使っていきます。まずは画像の…

UE4 AnimMontage(アニメーションモンタージュ)について 解説編

UE4の中でもかなり扱うには難易度が高く、しかし超高機能であるAnimMontage(アニメーションモンタージュ)というアニメーション機能があります。これはあまりにも応用範囲が広く使いこなすには難易度がとても高く、解説するのも難しい題材です。 今回は複数回…

UE4 簡単なローカルマルチプレイヤーゲームを作ってみる

UE4でマルチプレイヤーのゲームを作るには色々とやり方がありますが、ローカル上で分割スクリーンによるマルチプレイヤーのゲームを作るのは本当に簡単です。 分割スクリーンによるマルチプレイヤーのゲームは最近減りましたが、ニンテンドー64時代には沢山…

UE4 クラスブループリントとアニメーションブループリント間で相互連携をさせる

実はあまり知られていないかもしれませんが、スケルタルメッシュをコンポーネントとして持っているクラスブループリントを作成しても、そのままではそのアニメーションブループリントをクラスブループリント側から参照することはできません。 逆も同様で、そ…

UE4 ブループリントノードの色について

今までありそうでなかったのが、このブループリントノードが示す色についての説明です。わかってしまうとなんでもないものなんですが、これが最初は結構苦戦するところなのかもしれません。 というわけで改めて、ブループリントノードの色についてを解説しま…

UE4を使ってみたいと迷っている貴方へ

今回はUnreal Engine 4 (UE4) Advent Calendar 2014の1日目の記事となります。 Unreal Engine 4 (UE4) Advent Calendar 2014 - Qiita Unreal Engine 4 (UE4) Advent Calendar 2014 - Qiita というわけで今回はUE4を使ってみたいと思っているけど、今ひとつ踏…

UE4 ブループリントの文字列機能について

UE4のブループリントは元々文字列にはそんなに強くありませんでした。 が、UE4.5の時点で大量の文字列用の機能が追加されておりました。 少しだけ優秀な機能を紹介していきたいと思います。 足りない部分もありますが完全なAPIリファレンスはこちらにありま…

UE4 Unreal Motion Graphicsを使って黒画面フェードを実装する

UE4にはUIやHUD(Head Up Display)といったものを作成するための仕組みが色々とありますが、現在最もホットな作成方法はUnreal Motion Graphics、通称UMGでしょう。 UMGは現在も日々改良が行なわれており、とても高機能なUI作成ツールとなっています。 今回は…

UE4 ブループリントでイベントディスパッチャーを使う

ブループリントには、とても便利な仕組みとしてイベントディスパッチャーと呼ばれるものがあります。 イベントディスパッチャーというのは自由に定義を行い、自由なタイミングで違うブループリント同士の間でイベント発生させることのできる仕組みです。これ…

UE4 レイキャスト(ライントレース)を使う

UE4で壁や衝突時の情報を得るための方法にレイキャストもとい、ライントレースというものがあります。 これはラインを飛ばした方向の先にあるアクターやオブジェクトの詳細情報を知ることができます。 ブループリントから使用する場合には"LineTrace"系のノ…

UE4 ソースコントロールを使ってアセット管理をする

UE4にはアセットのバージョン管理をしたり、比較をしたりするソースコントロールシステムが搭載されています。 標準でサポートされているものシステムとして、Apache SubversionとPerforceがあります。またこの他にも非公式プラグインとしてGitとMercurial用…

UE4 ライトの可動性とパフォーマンスについて

UE4で扱える全てのライトには可動性(Mobility)という仕組みがあります。 可動性はライトごとに設定できますが、その設定によって大きな影響を受けるのでしっかりと考えて設定する必要があります。 設定できる可動性はStatic(静的)、Stationary(固定)、Movable…