Language:
Page Info
Engine Version:
The translation of this page is out of date. Please see the English version for the latest version of the page.

UE4 をはじめよう

エディタの基本原理

Project には、個々のゲームを構成し、ディスク上のディレクトリと一致させるすべてのコンテンツとコードを保持されています。例えば、以下の画像では、 コンテンツ ブラウザ の階層ツリーは、ディスク上のプロジェクト フォルダ内と同じディレクトリ構造になっています。

画像をクリックしてフルサイズで表示

プロジェクトはそれに関連する .uproject ファイルによって頻繁に参照されます。しかし、これらは並んで存在する 2 つの別個のファイルです。.uproject ファイルはファイルを作成、開く、保存するために使用する参照ファイルです。これに対してプロジェクトにはそれに関連するすべてのファイルやフォルダが入っています。

プロジェクトをいくつでも作成し、そのすべてを並行して維持し、開発することができます。エンジン (およびエディタ) は両方とも簡単に切り替えできます。これにより、複数ゲームの作業をただちに行ったり、主要ゲームプロジェクトに加えていくつかのテストプロジェクトも持つことができます。

エディタでは、ゲーム体験を制作するシーンは通常 レベル と呼ばれます。レベルとは、一連のオブジェクトやジオメトリを配置してプレイヤーが体験するワールドを定義する 3D 環境だと考えてください。ワールドに配置するライト、メッシュ、またはキャラクターなどの任意のオブジェクトは、アクタとみなされます。厳密に言うと、 アクタ は 3D の位置、回転、スケーリングのデータを持つオブジェクトを定義するためにアンリアルエンジン内で使用するプログラミング クラスです。単純化するために、アクタは レベルに配置可能な全てのオブジェクト として捉えるのが最もわかりやすいでしょう。

エディタのビューポート

ビューポートは、ユーザーがアンリアルで作成したゲームワールドへの窓口となります。ゲーム内と同じようにゲームワールドをナビゲーションできます。または、ブループリントの構築の基本構想に使用することができます。アンリアル エディタのビューポートには、様々なツールやビジュアライザがあり、まさに必要なデータの可視化を支援します。

エディタのモード

[Modes] パネルにはエディタ用のさまざまなツールモードがあります。これらのモードは、新規アセットをワールドへ配置、ジオメトリ ブラシやボリュームの作成、メッシュのペイント、フォリッジの生成、ランドスケープの作成など、特殊なタスクに対してレベル エディタの主要動作を変更します。

アクタとジオメトリー

最も基本的なレベルの作成は、要するにエディタ内のマップにアイテムを配置することです。具体的には、ワールド ジオメトリ、ブラシ、スタティックメッシュ、光源、プレイヤーの開始地点、武器、乗り物などの形状の装飾物です。どのアイテムをどの時点で追加するという問題は、通常はレベル設計チームが従う詳細なワークフローで規定されます。

コンテンツ ブラウザ

コンテンツ ブラウザ は、アンリアル エディタ内でコンテンツ アセットを作成、インポート、整理、表示、修正するための主要エリアです。コンテンツ フォルダの管理機能も提供し、参照の名前変更、移動、コピーなどアセットに対する有用なオペレーションを実行します。コンテンツ ブラウザ では、ゲーム内のすべてのアセットを検索し、インタラクティブに操作できます。

ライティング

シーンをライティングするには、光源として機能し、以下のようなライトの特性を決めるプロパティを含むライト アクタを使用します。

  • ライトの明るさ

  • ライトの色

様々な方向に光を放出する様々な種類のライトもあります。例えば、標準的な電球は全方向に光を放出します。アンリアル エンジンでは、 これを ポイントライト と呼びます。他の状況では、放出された光はフラッドライトなど電球の背面を不透明にすることで物理的制約を受けます。 これは、スポットライト になります。太陽からの屋外光は非常に遠くにあるため、単独の場所からというよりは、 ある方向からくるように見えます。このタイプのライティングをシミュレーションするために、指向性ライト があります。

マテリアルとシェーディング

Material は、シーンの視覚的な外観を制御するために、メッシュに適用することができるアセットです。概要として、マテリアルはオブジェクトに適用する「ペイント」として捉えるのがおそらく一番わかりやすいでしょう。ただし、この考え方は誤解につながる恐れがあります。マテリアルは文字通り、そこからオブジェクトが作成されたかのように見えるサーフェスのタイプを定義するものだからです。色、光沢の度合い、オブジェクトの透過可否などを定義することができます。

専門用語では、シーンのライトが表面とぶつかる際に、ライトと表面が相互に作用する方法を計算するためにマテリアルを使用します。こうした計算は、様々な画像 (テクスチャ) や計算式、またマテリアル自体に固有の様々なプロパティ設定からマテリアルに入力されるデータを用いて行われます。

アンリアル エンジン 4 では、 物理ベースのシェーディング モデル を利用しています。つまり、任意のプロパティ (ディフューズカラーやスペキュラパワー) を使用してマテリアルを定義するのではなく、現実世界に関連するプロパティを容易に使用してマテリアルを定義します。プロパティにはベースカラー、スペキュラ、ラフネスも含まれます。

ブループリント ビジュアル スクリプティング

アンリアル エンジンの ブループリント ビジュアル スクリプティング システム は、アンリアル エディタを使用したゲームプレイ エレメントの作成に、 ノードをベースとするインターフェースの概念を基礎としたゲームプレイ スクリプティング システム一式です。一般的な多くのスクリプト処理言語と同様に、エンジンでオブジェクト指向 (OC) クラスまたはオブジェクトを定義します。 UE4 を使う場合、ブループリントを使って定義したオブジェクトは通常口語的に「ブループリント」と呼ばれます。

非常に柔軟かつパワフルなシステムで、一般的にプログラマーだけが使用できるとされてきたコンセプトとツールをデザイナーが事実上すべて使うことができます。さらに、 アンリアル エンジンの C++ インプリメンテーションで利用できるブループリント固有のマークアップにより、プログラマーはデザイナーが拡張する基本システムを作成することができます。

プログラミング

ゲームプレイの実装やエンジンの修正は、ゲームプロジェクトに必要不可欠な側面です。アンリアル エンジンには、 コードまたはブループリントを用いて視覚的にゲームプレイを実装する機能があります。 また、エンジンやエディタを修正または拡張するプラグインまで作成し、 デザイナーやアーティストが使用するための完全なカスタム機能を追加します。

自分のゲームをプレイテストする

UNREAL ENGINE のビルトイン機能を使用してレベルとゲームプレイをテストし、デバッグします。プレイイン エディタ モードを使用してリアルタイムのフィードバックを直接エディタから得ます。 シミュレート イン エディタ モードを使用して ゲームの実行中にオブジェクトを調べたり、操作したりすることもします。ホットリロードを使用して プレイ中にゲームプレイ コードを変更、ゲームをリコンパイル、更新します。