Unity開発者がUnreal Engineを始める前に知っておきたい違いと導入手順【比較・入門】①
掲載日: 2025/10/28
Unity開発者がUnreal Engineを始める前に知っておきたい違いと導入手順【比較・入門】①
Unity歴5年、Unreal歴3年のプログラマーです。
Unrealの学習には少し苦戦したため、押さえておくべきポイントをまとめました。
基本的なログの出し方から、UIの表示、Blueprint / C++の使い分け、C++導入等を数回に分けて解説していきます。
■目次(右側の目次欄からジャンプ出来ます)
・はじめに
・環境
・UnityとUnrealの名称の違い
・Blueprintとは何なのか?
・デバッグログの出し方
・画面上にテキスト(ウィジェット)を配置する
・さいごに
■はじめに
Unity経験者であれば、「UnrealでもUnityのような感覚で早く開発したい!」と思う方が多いのではないでしょうか。
UnityとUnrealの名称の違いを中心に、動かすために必要な最低限の知識と手順を紹介します。
■環境
バージョン:
UnrealEngine5.5.3
プロジェクト名:
UnitTest
▼ブランクで空のプロジェクトを作成

▼プロジェクトが開いたら「コンテンツブラウザ」の右上にある設定ボタンを押し、表示タイプをリストにするのがおすすめです。
※コンテンツブラウザ以外でもこの設定が見やすいです。

■UnityとUnrealの名称の違い
中には共通の名前もありますが、基本的には異なる概念として理解しておくと良いでしょう。
またUnreal独自の概念もあるため、そこについても触れていきます。
▼UnityとUnrealの名称の違い
番号 | Unity | UnrealEngine | 備考 |
1 | ヒエラルキー | アウトライナー Outliner | 4つまで配置可能。 |
2 | プロジェクトウインドウ | コンテンツブラウザ ContentBrowser | 4つまで配置可能。 |
3 | インスペクタービュー InspectorView | 詳細パネル DetailPanel | 4つまで配置可能。 |
4 | シーン | レベル Level | Unrealはレベルを親子化できる。 親:パーシスタントレベル 子:サブレベル |
5 | ゲームオブジェクト | アクター | Unrealでは、Transformだけでなくコリジョンなどの機能も標準で含まれている。 |
6 | プレハブ Prefab | ブループリント Blueprint | 自由度は Blueprint の方が高い。 |
7 | (なし) | レベルブループリント | レベル単位で1つだけ存在するブループリント。 レベルアセットの中に保存される。 |
8 | uGUI | UMG ※Unreal Motion Graphicsの略。 | UIシステム。 |
9 | uGUIの要素 (TextやButton等) | ウィジェットブループリント | UnrealではUIの要素のことをウィジェットと呼ぶ。 こちらもブループリントの一種である点に注意。 |
10 | コンソール | 出力ログ OutputLog | デバッグログ。 |
11 | コンポーネント | コンポーネント Component | 同じ呼び方をする。 |
12 | シーンビュー | ビューポート ViewPort | ※編集モード。 |
13 | ゲームビュー | ビューポート ViewPort | ※PIE(PlayInEditor)実行中 |
14 | Start(関数) | Begin(関数) | 初期化。 最初の1回だけ呼ばれる。 |
15 | Update(関数) | Tick(関数) | 更新処理。 毎フレーム呼ばれる。 |
■Blueprintとは何なのか?
Unityで言うところの「プレハブ」です。
Blueprint単体では実体を持ちません。
ヒエラルキー(アウトライナー)に配置して初めて実体を持ちます。
ただBlueprintはUnityのプレハブより出来ることが多いです。
最大の特徴として、プレハブの中で処理を実装することが出来ます。
(ノードを用いて)
「クラスをエディタ上で視覚的に扱えるようにしたもの」と言い換えることもできます。
■デバッグログの出し方
Blueprintの動作を理解するには、基本的な「ログ出力」から始めるのがおすすめです。
▼01.Blueprintを作成
※コンテンツブラウザ上で右クリックしてブループリントを作成。

▼02.アクタを選択し、名前(BP_Test)を設定
※Unityで言うGameObjectに当たるもの。


▼03.「BP_Test」をダブルクリックで編集モードへ

▼04.「マイブループリント」のグラフからEventBeginPlayをダブルクリック

▼05.空きスペースで右クリック→「PrintString」or「ログ」と入力

▼06.「PrintString」を選択してください。
※Unrealでは検索が微妙に日本語に対応しているため、検索した内容と出てくる内容に差異が生まれることがあります。

▼07.「EventBeginPlay」ノードと「PrintString」ノードを繋いでください。
赤枠部分からドラッグ&ドロップでノードを引っ張ることができます。
※デフォルトでは「Hello」という文字列が出力されます。

▼08.Blueprintを「①コンパイル」して「②保存」しましょう。
※コンパイルをしないと実装した処理が反映されません。

▼09.Unityで言うシーン(レベル)を作成します。名前は「LV_Test」とします。


▼10.レベル(LV_Test)をダブルクリックで開き、最初に作成した「BP_Test」をビューポートにドラッグ&ドロップしてください。
作業後 LV_Test を保存してください。
※Unityとは違い、ヒエラルキー(アウトライナー)には直接配置できません。

▼11.メニューバーの「ウィンドウ」から出力ログを選択

▼12.①出力ログを開き、②検索バーに「Hello」と入力し、③再生ボタンを教えてください。
※再生時にはさまざまなログが出力されるため、検索バーで絞り込むと見やすくなります。

▼13.出力ログに「Hello」と出力されれば完了です!

■画面上にテキスト(ウィジェット)を配置する
ログは無事に出せましたか?
UnityならC#で処理した内容をuGUIのTextを使用して簡単にゲーム画面上にテキストとして表示させられたと思います。
Unrealではどうでしょうか?
UnrealではUMG(Unreal Motion Graphics)というUIシステムを使用します。
Unityならヒエラルキー上で簡単にTextを選んで配置するだけだったと思います!
UnrealのUIは、Unityに比べるとやや直感的ではありません。
UI専用のプレハブ(ウィジェット)を作成し、それを明示的に処理で「ビューポート」に追加(Add to Viewport)することで始めて画面に表示されます。
▼01.UIプレハブ(ウィジェット)をコンテンツブラウザ上に作成

▼02.「UserWidget」を選択し名前を「WBP_Test」とします
※ウィジェット(Widget)のBlueprintでWBP

▼03.ダブルクリックで開き、ライブラリウインドウからCanvasPanelを配置します。
配置出来たら、階層ウインドウに「キャンバスパネル」と表示されます。
※UnityでいうCanvasに当たるオブジェクトです。

▼04.同じ要領で「TextBlock」を配置します。
※Unityで言うTextに当たるオブジェクト。

▼05.階層ウインドウで配置した「テキスト」をクリックした状態で、詳細ウインドウを開き画像と同じ設定にしてください。特に「IsVariable」のチェックは忘れずにつけましょう。
※「コンパイル」して「保存」も忘れずに。

最終的な見た目

▼06.「コンパイル」して「保存」をしたら、ここからウィジェットをビューポートに追加していきます。
WBP_Testを閉じ、エディタ画面上部のツリーのようなボタンをクリックし「レベルブループリントを開く」を選択します。
※レベルブループリントは、レベル単位で処理をまとめたものです。1レベルに1つだけしか存在しません。

▼07.ウィジェットを動的に生成します。
LV_Testのレベルブループリントの「Event BeginPlay」の近くで右クリックをし「Create Widget」ノードを作成し、ノード内の「Class」の選択ボックスから「WBP_Test」を選択。
Create Widgetノードを BeginPlayノードと紐づけてください。


▼08.動的に生成したウィジェットをビューポートに追加します。
「CreateWBPTestWidget」ノードからドラッグをしながら右クリックで「Add to ViewPort」と入力しノードを作成します。
そして「AddtoViewport」ノードの「Target」に対して、生成したウィジェット(ReturnValue)を紐づけます。
※「CreateWBPTestWidget」は関数でその戻り値(ReturnValue)を関数「AddtoViewport」の引数(Target)に渡す処理となります。

最終的な見た目 ※コンパイルと保存を(略

▼09.レベルブループリントを閉じ LV_Test を再生ボタンをクリックするとウィジェット(Hello World!)が表示されましたね。

これでUnrealでUIを画面に表示出来るようになりましたね!
Unrealでは、UIを明示的にビューポートへ登録しない限り表示されません。
■さいごに
ここまで読み進めていただきありがとうございます。
Blueprintの基本的な使い方、ログの出し方、UIテキストの表示方法を理解できたのではないでしょうか。
次回は
・UIボタンを使用したコールバック処理の登録方法
・シーン遷移
・BlueprintとC++の使い分け
あたりを記載していきます。



