コリジョン(Collision)

【概要】

 :オブジェクト間の衝突を検出するシステムのこと。

 :物理的なインタラクションやトリガーイベント、オブジェクトの衝突反応などを実現する。

【詳細】

 ・コリジョンプリミティブ
  (Collision Primitives)
  :コリジョンを検出するための基本的な形状(プリミティブ)のこと。
  :ボックス(Box)、球(Sphere)、カプセル(Capsule)、メッシュ(Mesh)が含まれる。

 ・コリジョンレスポンス
  (Collision Response)
  :コリジョンが検出されたときのオブジェクトの反応を定義すること。
  :コリジョンレスポンスには、ブロック(Block)、オーバーラップ(Overlap)、無視(Ignore)が含まれる。

   ・ブロック
    : 衝突したオブジェクトを物理的に阻止する。
   
   ・オーバーラップ
    : 衝突は検出するが、物理的な阻止はしない。
   
   ・無視
    : コリジョンを無視する。

 ・トリガー(Trigger)
  :物理的なブロックはせず、イベントを発生させるために使用される機能。

  :例えば、プレイヤーが特定のエリアに入ったときにイベントをトリガーする。

クラス(Class)

【概要】

 :オブジェクト(アクタ、キャラクター、アイテムなど)のテンプレートのこと。

 :例えば、ゲーム内の全てのキャラクターに共通する属性や動作が定義されたもの。(属性=体力、スピードなど、行動=移動、攻撃など)

 :Unreal Engine では、クラスは階層構造を持ち、親クラスから子クラスへの継承によって、派生クラスを作ることができる。

【例1】

 ・AActor
  :全てのアクタの基本クラス。
  :位置、回転、スケールなどの基本的なプロパティを持つ。

 ・APawn
  :AActor を継承したクラス。
  :プレイヤーやAIが操作するための基本クラス。

 ・ACharacter
  :APawn を継承したクラス。
  :歩行、ジャンプなどのキャラクター動作が定義されている。

【詳細】

 ・カプセル化(Encapsulation)
  :データと、データを操作するメソッド(関数)を1つのクラスにまとめること。

  :外部から直接アクセスできないようにすることで、データの整合性を保つ。

  :例えば、キャラクターの体力を、直接ではなくメソッドを通じて操作する。

 ・継承(Inheritance)
  :あるクラスの特性を別のクラスが受け継ぐこと。

  :基本的な機能をテンプレートで共有しつつ、特定の機能を追加する。

  :例えば、キャラクタークラスから、プレイヤークラス、敵キャラクタークラスを作る。


  ・ポリモーフィズム
   (Polymorphism)
   :異なるクラスのオブジェクトが同じインターフェースを介して異なる動作を実装すること。
   
   :例えば、キャラクタークラスの「Attack」メソッドを以下のように実装する。

    ・プレイヤー
     :Attack=銃を撃つ

    ・敵キャラクター
     :Attack=近接攻撃

ボリューム(Volume)


【概要】

 :特定のエリアや空間を定義する3D領域のこと。

 :通常のアクタとは異なり、特定の機能や効果をその領域内で適用するために使用される。

【詳細】

 ・エリア効果
  :指定されたエリア内で特定の効果を適用する。(衝突判定、トリガーイベント、環境効果など)

 ・CGCジオメトリ
  :ボリュームを定義するためのジオメトリ。
  :ボリュームは、Constructive Solid Geometry(CGC)で空間を定義する。

 ・ボリュームの種類
  :トリガーボリューム、ナビメッシュボリューム、ポストプロセスボリュームなど。
  :例えば、トリガーボリュームは「OnActorBeginOverlap」でイベントを設定できる。

UMG|ウィジェットブループリント

【UMG】
(Unreal Motion Graphics)

 :ユーザーインターフェース(UI)を構築するためのビジュアルエディタ及びツールセットのこと。

 :UIを作成するための総合的なシステムを指す。

 :UMGは、以下で構成される。
  ・ウィジェットブループリント
  ・スタイルシート
  ・ブループリント関数ライブラリ

【ウィジェット
 ブループリント】

 :UMGの一部で、具体的なUIのデザインやイベント処理を実装するブループリントのこと。


 ・ビジュアルデザイン
  :例えば、ボタン、テキスト、画像、プログレスバー、スライダーの配置など。


 ・イベント駆動
  :例えば、画面上のボタンクリック時にイベントを発生させるなど。

【スタイルシート】

 :UI全体のスタイルを一括管理するシート。

【ブループリント
 関数ライブラリ】

 :共通のUIロジックや処理を関数として定義して、再利用可能にするライブラリ。

HUD(ヘッドアップディスプレイ)

【概要】

 :ゲーム内の情報をプレイヤーに視覚的に提供するためのインターフェースのこと。

 :例えば、ゲームスコア、体力バー、ミニマップ、インベントリ(アイテム欄)、クエスト情報など。

 :プレイヤーがゲームをプレイする上で必要なあらゆる情報がHUDに含まれる。

 :Unreal Engineでは、HUDは主にウィジェットブループリントとUMG(Unreal Motion Graphics)で構築される。

【詳細】

 ・ゲーム情報の表示
  :例えば、プレイヤーの状態、ゲームの進行状況など。

 ・インターフェースの提供
  :例えば、ゲームのオプション画面、インベントリ画面の提供など。

 ・フィードバックの提供
  :例えば、プレイヤーがアイテムを拾ったときの通知の表示など。

プレイヤーコントローラー

【概要】

 :プレイヤーの物理的な入力を、キャラクターに伝えるためのクラス。

【詳細】

 ・入力の処理
  :例えば、プレイヤーの入力(キーボード、マウス、ゲームパッドなど)に応じたアクションの実行。

 ・カメラの制御
  :例えば、プレイヤーの視点を動かしたり、カメラを制御する。(一人称視点、三人称視点、固定カメラなど。)

 ・HUD
  (Head Up Display)の操作
  :例えば、メニュー操作やインベントリの管理などをサポート。
  
  :インベントリは、ゲームで言うところのアイテム欄のこと。(アイテムを拾ったらインベントリに追加され、使ったら消える、など。)

 ・キャラクターの管理
  :例えば、複数のキャラクター間の切替や、特定のアクタの制御など。

ゲームモード(Game Mode)

【概要】

 :ゲームのルールやフロー、プレイヤーの管理をするクラスのこと。

 :ゲームの根本的なロジックや進行を制御して、プレイヤーの振る舞いを決定する。

【詳細】

 ・ルール設定とは、
  :例えば、勝利条件、敗北条件、スコアリングシステムなどの設定のこと。

 ・フローの管理とは、
  :ゲームの開始、終了、リセットなどのフローの制御のこと。

 ・プレイヤーの管理とは、
  :どのキャラクターやコントローラーを使用するかを決定すること。

 ・スポーンの管理とは、
  :アクタのスポーン位置や方法を決定すること。

ブループリント(Blueprint)

【概要】

 :Unreal Engine が提供するビジュアルスクリプティングシステム。

 :プログラミングの知識が少ない開発者でも、視覚的にプログラミングができる。

 :プログラミング言語(例えばC++)の代わりに、ノードとワイヤーを繋ぎ合わせてプログラムを構築する。

 :レベル、アクタ、コンポーネント、UIなどにそれぞれ存在する。

【種類】

 ・レベルブループリント
  :レベル全体のロジックやイベントを管理するブループリント。

  :例えば、特定の条件が満たされたときにイベントを発生させることができる。


 ・アクタブループリント
  :アクタの動作やイベントを定義するブループリント。

  :例えば、キャラクターの移動やジャンプなどの動作を定義できる。


 ・コンポーネントブループリント
  :アクタの特定の機能や特性を追加するためのブループリント。

  :例えば、アクタに体力を設定して、その値に応じた処理を設定できる。


 ・UI(User Interface)
  ブループリント
  : ユーザーインターフェースを構築し、HUDやメニュー画面などのUI要素を作成するブループリント。

【メリット・デメリット】

 ・メリット
  :プログラミング言語を知らない開発者でも、直感的にプログラムを組めること。

 ・デメリット
  :C++と比べて、機能に制限があったり、実行速度が遅かったりする。らしい。(大規模で専門的な開発でない限りは、デメリットは感じにくいかも。)


レベル|シーン|ステージ

【レベル】

 :ワールド内の具体的なシーンやステージを構成するフィールド。

 :プレイヤーがプレイ可能なエリアを定義して、オブジェクトを配置する。

 :例えば、「森のレベル」「砂漠のレベル」など。

 :Unreal Engine では、「.umap」ファイルとして保存される。

 :プレイ空間や環境を構築するフィールドの基本単位。

【シーン】

 :主に物語の進行やイベントの演出に使用されるカットシーンを指す。

 :例えば、「森のレベル」での「出会い」など、映画やアニメーションの場面転換のイメージ。

 :Unreal Engine では、シーケンサーを使用する際などに登場する。

【ステージ】

 :レベルの一部として、例えば、特定のチャレンジやミッションのことを指す。

 :例えば、「森のレベル」での「ステージ1:○○を達成する」など。

 :Unreal Engine では、レベルデザイン上の用語として使用されることがある。

Unreal Engine|ワールドについて

【Unreal Engine】

 :Epic Gamesによって開発された非常に強力なゲームエンジンのこと。

 :ゲーム開発はもちろん、建築、映画制作、シミュレーション、VR/ARなど、さまざまな分野で広く活用されている。

 :特徴は、高品質なグラフィックス。

 :ドラゴンクエスト、ファイナルファンタジーなどのメジャータイトルも、Unreal Engine を採用している。

 :ブループリントやシーケンサー(映画のようなカットシーンを作成するツール)を利用できる。

【ワールド】

 :Unreal Engine において、ゲーム全体の環境や状態を管理する最上位の概念のこと。

 :レベル、オブジェクト(アクタ、コンポーネント)、ブループリントはすべてワールド上に構築される。