サブルーチン(Subroutine)

【概要】

 :ブループリント内で再利用可能なノードの集合を作成するツールのこと。

 :Unreal Engineでは、サブルーチンのことを「関数(Function)」と呼ぶことが多い。

【例】

 ・プレイヤーダメージ処理の
  サブルーチン
   
  1)関数の作成
    :「ApplyDamage」という名前の新しい関数を作成する。この関数で、プレイヤーにダメージを適用する処理を行う。

  2)引数の設定
    :「DamageAmount」という名前の引数を追加し、タイプを「float」に設定する。この引数は、適用するダメージの量を表す。

  3)ノードの追加
    :関数グラフ内で「Get Player Health」ノードを追加し、プレイヤーの現在のヘルスを取得する。

    :「Subtract」ノードで、プレイヤーの現在のヘルスから「DamageAmount」を除算する。

    :「Set Player Health」ノードを使用して、更新されたヘルスをプレイヤーに設定する。

  4)関数の呼び出し
    :イベントグラフに戻り、例えば「OnHit」イベント内で「ApplyDamage」関数を呼び出す。
    
    :ヒット時に適用するダメージ量を引数として渡す。

インターフェース(Interface)

【概要】

 :ブループリントやC++クラス間での共通の機能を定義する手法のこと。

 :インターフェースを使用すると、異なるクラスが同じメソッドを実装できる。

 :例えば、特定の機能を持つクラス間の通信や動作の標準化に利用する。

【作り方】

 1.インターフェースアセット
   の作成
   :コンテンツブラウザ右クリック >「Blueprints」>「Blueprint Interface」を選択する。インターフェースアセットに名前を付ける。

 2.メソッドの定義
  :インターフェースエディタを開き、共通のメソッドを定義する。
  
  :メソッドには入力と出力のパラメータを設定できる。

 3.クラスの作成
  :インターフェースを実装するクラス(ブループリントまたはC++クラス)を作成する。

 4.インターフェースの追加
  ・ブループリントの場合
   :クラスの「Class Settings」パネル >「Implemented Interfaces」セクション

 5.メソッドの実装
  :インターフェースで定義したメソッドをクラス内で実装する。
  
  :ブループリントでは、イベントグラフに対応するイベントを追加して、ロジックを実装する。

 6.インターフェースの呼び出し

  a. ブループリントから呼び出し
   :インターフェースを実装するオブジェクトに対して、インターフェースメソッドを呼び出す。

   :例えば、「Interface Call」ノードを使用して、特定のメソッドを呼び出す。

  b. キャストの使用
   :インターフェースの実装を確認するため、「Cast To Interface」ノードを使用する。
  
   :オブジェクトがインターフェースを実装している場合は、メソッドが呼び出せる。

【例】

 ・ダメージシステム
   
  1)インターフェースの作成
    :「IDamageable」というインターフェースを作成して、「ApplyDamage」というメソッドを定義する。このメソッドはダメージの量を入力パラメータとして受け取る。

  2)クラスの実装
    :複数のクラス(例:キャラクター、オブジェクト)で「IDamageable」インターフェースを実装し、「ApplyDamage」メソッドを定義する。
    
    :それぞれのクラスは、ダメージを受けたときの独自の処理を実装する。

  3)ダメージの適用
    :攻撃を行うクラスから、ターゲットに対し「ApplyDamage」メソッドを呼び出す。
    
    :ターゲットが「IDamageable」インターフェースを実装している場合、対応するダメージが処理される。

コンストラクションスクリプト(Construction Script)

【概要】

 :ゲームのプレイ中ではなく、エディタ上で実行されるブループリントのスクリプトのこと。
 
 :アクタがレベルに配置されたり、プロパティが変更された際に実行される。(ゲームプレイ中の動的な変更には使用されない。)

【例】

 1.Static Mesh Component
   の追加
  :「Add Static Mesh Component」ノードをコンストラクションスクリプトに追加する。

  :このノードを使用して、新しいスタティックメッシュコンポーネントをアクタに追加する。

 2.メッシュの設定
  :「Set Static Mesh」ノードを使用して、特定のメッシュアセットを設定する。

 3.位置の設定
  :「Set Relative Location」ノードを使用して、追加したメッシュの位置を設定する。

キャリブレーション(Calibration)

【概要】

 :システムやデバイスの精度を高め、正確な動作を保証するために行う調整プロセスのこと。

 :特にモーションキャプチャやVR、カメラトラッキングなどの精度が求められる環境で使用する。

【詳細】

 ・モーションキャプチャ
  :キャプチャの正確なトラッキングのために、センサーやカメラの位置や角度を調整する。

 ・VRシステム
  :ヘッドセットやコントローラーのトラッキング精度を向上させる。

Collab Viewer(コラボビューワー)

【概要】

 :Unreal Engineのテンプレートプロジェクトの一つ。

 :複数のユーザーがリアルタイムで同じ3Dシーンを共同閲覧および操作できる環境を提供する

【詳細】

 ・リアルタイムコラボレーション
  :複数のユーザーが同じ3Dシーンに同時にアクセスし、リアルタイムで共同作業ができる。

 ・マルチユーザーサポート
  :ネットワーク経由で複数のユーザーが接続し、それぞれの視点や操作を共有できる。

 ・インタラクティブツール
  :メジャーツール(測定ツール)や注釈ツールなどのツールが含まれる。

 ・プラットフォーム互換性
  :デスクトップやVRデバイスなど、様々なプラットフォームでコラボレーションができる。

Pakファイル

【概要】

 :ゲームのアセットやコンテンツを一つのファイルにまとめて保存するためファイル。

 :ゲームのデプロイメントや配信、ロードパフォーマンスの向上を実現する。

【詳細】

 ・配布の簡略化
  :ゲームのインストールやアップデートをシンプル化する。

 ・セキュリティ
  :アセットが改ざんされるリスクが低減する。Pakファイルは暗号化できる。

 ・ロードパフォーマンスの向上
  :ディスクI/O操作の回数を減らすことで、ゲームのロード時間を短縮できる。

Localization(ローカライゼーション)

【概要】

 :ゲームやアプリケーションを異なる言語や地域向けに翻訳および適応させるプロセスのこと。

 :テキスト、音声、画像などのコンテンツを多言語対応させることができる。

【詳細】

 ・Text Localization
  :テキストの翻訳と管理する。
  :ゲーム内のすべてのテキストを異なる言語に翻訳する。

 ・Culture
  :言語と地域の組み合わせを表す。例えば、「en-US」はアメリカ英語、「ja-JP」は日本語を示す。

 ・Localization Dashboard
  :ローカライゼーションプロジェクトを管理するためのツール。

  :翻訳のエクスポートとインポート、ローカライゼーションのステータス管理を行う。

Media Framework(メディアフレームワーク)

【概要】

 :ビデオやオーディオの再生、ストリーミングをゲームやアプリケーションに組み込むためのツールセット。

 :外部メディアファイルを再生し、オブジェクトやマテリアルと統合できる。

【詳細】

 ・Media Player
  :ビデオやオーディオの再生を制御する主要なアセット。

  :メディアの再生、停止、シーク、ループ設定などを行う。

 ・Media Texture
  :ビデオをテクスチャとして使用するためのアセット。

  :ビデオをマテリアルに適用して、オブジェクトに表示する。

 ・Media Sound Component
  :オーディオが聞こえるようにするためのコンポーネント。

  :オーディオの再生、停止、音量調整などを制御する。

 ・Media Source
  :再生するメディアファイルの場所を指定するアセット。

  :ローカルファイル、ネットワークストリーミング、URLなどを指定する。

Live Link(ライブリンク)

【概要】

 :アニメーションデータやモーションキャプチャデータをエンジン内で使用するためのフレームワークのこと。

 :外部アプリケーションやデバイスからのデータをリアルタイムでストリーミングできる。

【詳細】

 ・サブジェクト
  :Live Link に接続されたデータソースが提供するデータストリームのこと。

  :特定のアニメーションデータやモーションデータを含む。

 ・リシーバー
  :Live Link データを受信し、キャラクターやオブジェクトに適用するコンポーネントやシステムのこと。

Control Rig(コントロールリグ)

【概要】

 :キャラクターやオブジェクトのアニメーションを作成および制御するためのツール。

 :リギングプロセスを簡素化し、リアルタイムでのアニメーション作成や編集を可能にする。

【詳細】

 ・リグ(Rig)
  :キャラクターやオブジェクトの骨格(スケルトン)にコントローラーを追加して、アニメーションを制御する仕組み。

 ・コントローラー(Controllers)
  :リグの各部分を操作するためのインターフェースのこと。

  :トランスフォーム(位置、回転、スケール)を変更して、キャラクターの動きを制御する。

【Control Rigの設定方法】

 1.プラグインを有効化する
  :「Edit」>「Plugins」から「Control Rig」プラグインを有効にする。(エディタを再起動してプラグインを適用する。)

 2.アセットを作成する
  ・リグを適用するキャラクターやオブジェクトの Skeletal Mesh を用意する。
  ・コンテンツブラウザで右クリック >「Create Advanced Asset」>「Animation」>「Control Rig」から新しいControl Rigアセットを作成する。

 3.ブループリントを設定する
  ・作成したControl Rigアセットをダブルクリックして「Control Rig Editor」を開く。

  ・リグの各部分にコントローラーを追加する。
   :「Rig Hierarchy」パネルで、スケルトンの各ボーンに対応するコントローラーを作成する。

  ・例えば、「Transform」ノードを使用して、コントローラーの動きをボーンに適用する。

 4.アニメーションを作成する
  ・シーケンサーを使用して、Control Rig を用いたアニメーションを作成する。
  ・タイムライン上でコントローラーのトランスフォームをキー設定する。
  ・作成したアニメーションをプレビューする。