UDN
Search public documentation:

UsingArchetypesJP
English Translation
中国翻译
한국어

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 ホーム > UnrealScript > アーキタイプ
UE3 ホーム > ゲームプレイ プログラミング > アーキタイプ

アーキタイプを使う


概要


アーキタイプは、既存のアクタ (プロパティ値、コンポネント、オブジェクト参照など) のスナップショットをとって、配置可能なコンテンツ リソースやテンプレートとして保存することを可能にします。

アーキタイプは、デザイナーが管理する通常の Unreal パッケージ ファイルに保存され、アーキタイプの「インスタンス」は、いかなるプログラマの関与も必要とすることなく、デザイナーが自分でマップ、シーケンス、UI シーンなどの中に配置することができます。アーキタイプのプロパティのデフォルト値が変更されると、その値は、既存のレベルやコンテンツに含まれる、プロパティ値をカスタマイズされたインスタンス以外の、そのアーキタイプの全インスタンスに、自動的に伝播されます。

アーキタイプ プロパティに対する変更は、現在開いているレベルのインスタンスには、直ちに伝播され、それ以外のパッケージのインスタンスには、そのパッケージが次回にロードされた時点で伝播されます。また、それ自体が別のアーキタイプのインスタンスであるようなアクタを基にして、アーキタイプを作成することもできます。このようにすると、各「子」アーキタイプが、その「親」アーキタイプのデフォルト値を継承するような、アーキタイプの複雑な階層を構成することができます。

アクタベースのアーキタイプを作成する


アクタベースのアーキタイプを作成する方法は 2 通りあります。1 つは、配置可能なアクタをレベルに配置して、それをアーキタイプ化します。もう 1 つは、コンテンツブラウザ内にある [Actor Classes] (アクタクラス) タブからアーキタイプを作成します。

レベル内のアクタからアーキタイプを作成する

レベル内のアクタからアーキタイプを作成するためには、アーキタイプの元としたいアクタを選択します。

Archetypes_0_SelectActor.png

アクタを右クリックして、[ Create Archetype ] (アーキタイプを作成する) を選択します。

Archetypes_1_RightClick.png

ダイアログが表示されますので、この新たなアーキタイプ リソースを置く場所を選択します。[Package] (パッケージ)、[Name] (名前)、[Grouping] (グループ) (オプション項目です) の各フィールドに適切な値を入力して、[OK] ボタンをクリックします。

Archetypes_2_PackageGroupName.png

コンテンツブラウザ内にある Actor Classes タブからアーキタイプを作成する

コンテンツブラウザ内にある [Actor Classes] (アクタクラス) タブからアーキタイプを作成するためには、まず、コンテンツブラウザを開きます。

Archetypes_3_ContentBrowser.png

[Actor Classes] (アクタクラス) タブに切り替えます。

Archetypes_4_ActorClasses.png

[Actor Classes] (アクタクラス) タブが表示されていない場合は、「Unreal」エディタの [Views] (ビュー) メニューからもアクセスすることができます。

Archetypes_5_ViewActorClassesMenu.png

アーキタイプ化すべきアクタクラスを探して選択します。

Archetypes_6_ActorClassesSelection.png

右クリックして、[ Create Archetype ] (アーキタイプを作成する) を選択します。

Archetypes_7_ActorClassesRightClick.png

ダイアログが表示されるので、この新たなアーキタイプ リソースを置く場所を選択します。[Package] (パッケージ)、[Name] (名前)、[Grouping] (グループ) (オプション項目です) の各フィールドに適切な値を入力して、[OK] ボタンをクリックします。

Archetypes_2_PackageGroupName.png

これで、コンテンツブラウザ内でこの新たなアーキタイプ リソースが表示されるようになります。置かれる場所は、アーキタイプを作成する際に指定したパッケージの中になります。コンテンツブラウザのリソースツリーで、新たなアーキタイプを含んでいるパッケージをクリックしてください。リソースのプレビューウィンドウに、Archetype と書かれた箱が表示されるので、あなたが作成したアーキタイプであることが分かります。

Archetyoes_8_ArchetypeInContentBrowser.png

オブジェクトベースのアーキタイプを作成する


オブジェクトベースのアーキタイプを作成する方法は、コンテンツブラウザ内の [Actor Classes] (アクタクラス) タブからアクタベースのアーキタイプを作成した場合と同様です。まず、コンテンツブラウザを開きます。

Archetypes_3_ContentBrowser.png

[Actor Classes] (アクタクラス) タブに切り替えます。

Archetypes_4_ActorClasses.png

[Actor Classes] (アクタクラス) タブが表示されていない場合は、「Unreal」エディタの [Views] (ビュー) メニューからもアクセスすることができます。

Archetypes_5_ViewActorClassesMenu.png

アーキタイプ化したいオブジェクトクラスを探して選択します。Use Actor As Parent (アクタを親として使用する) などのフィルターを無効にしなければならない場合があります。

Archetypes_9_ObjectClassesSelection.png

右クリックして、[ Create Archetype ] (アーキタイプを作成する) を選択します。

Archetypes_11_ObjectClassesRightClick.png

ダイアログが表示されるので、この新たなアーキタイプ リソースを置く場所を選択します。[Package] (パッケージ)、[Name] (名前)、[Grouping] (グループ) (オプション項目です) の各フィールドに適切な値を入力して、[OK] ボタンをクリックします。

Archetypes_2_PackageGroupName.png

これで、コンテンツブラウザ内でこの新たなアーキタイプ リソースが表示されるようになります。置かれる場所は、アーキタイプを作成する際に指定したパッケージの中になります。コンテンツブラウザのリソースツリーで、新たなアーキタイプを含んでいるパッケージをクリックしてください。リソースのプレビューウィンドウに、Archetype と書かれた箱が表示されるので、あなたが作成したアーキタイプであることが分かります。

Archetypes_10_ObjectArchetypeInContentBrowser.png

アーキタイプ プロパティの変更


アーキタイプのプロパティ値は、標準のプロパティ エディタ ウインドウを使って編集します。アーキタイプ リソースのプロパティ エディタ ウインドウを開くには、 汎用ブラウザ の中で、該当するアーキタイプを含むパッケージを選択し、変更したいアーキタイプに対応するアーキタイプ リソースのサムネイルを見つけ出して選択します。そして、そのサムネイルをダブルクリック、もしくは、右クリックして、 Properties... を選択します。アーキタイプ リソースのプロパティ ウインドウが表示されます。アーキタイプのプロパティ値に施された変更は、そのアーキタイプのインスタンスである既存のアクタ、および、(現在ロードされた) そのアーキタイプに基づくアーキタイプ (「子」アーキタイプ) のすべてに直ちにプロパゲートされます。

アーキタイプの配置


アーキタイプ リソースのインスタンスを配置するには、 汎用ブラウザ の中のアーキタイプ リソースのサムネイルを選択して、レベル編集ビューポートの中で右クリックし、コンテキスト メニューを呼び出します。 Add Actor という項目の上にマウスを移動して、アクタ配置サブメニューを開きます。 Add Archetype:{アーキタイプ名} オプションを選択して、選択したアーキタイプのインスタンスをレベルに配置します。このアクタが、実際に選択したアーキタイプにリンクされたことを確認するには、配置したアクタのプロパティ エディタ ウインドウを開いて、 Object カテゴリーを展開します。 ObjectArchetype プロパティの値は、アクタを配置する際に使ったアーキタイプ リソースになっているはずです。これは、アクタのロード時には、全プロパティ値のデフォルトが、指定されたアーキタイプ リソースから自動的に継承されることを示しています。

Archetypes_12_AddArchetype.png

ObjectArchetypeプロパティを使うと、アクタが使っているアーキタイプ (もしあれば) を求めることができます。アクタがアーキタイプにリンクされていない場合、ObjectArchetype の値は、そのアクタのクラスのデフォルト オブジェクトを指します。このオブジェクトは Default__{ActorClass} (Default__DirectionalLight など) という形式の名前を持ちます。

以下の図は、DirectionalLight_0 が ExampleArchetypePackage.LightArchetype アーキタイプ リソースのインスタンスであることを示しています。:

Archetypes_13_ArchetypeInstanceProperties.png

レベル内からインスタンスを使ってアクタベースのアーキタイプを更新する


望みどおりの出来映えやプロパティを得るには、多くの場合、レベル内にあるアーキタイプ化されたインスタンスを修正するほうが簡単です。プロパティをチェックして、パッケージされているアーキタイプに手動でコピーするかわりに、インスタンスのテンプレートとなっているアーキタイプを更新するようにインスタンスに命じることができます。そのためには、まず、レベル内部にあるアーキタイプ化されたインスタンスを選択します。

Archetypes_14_SelectBlueArchetype.png

右クリックして、 Update Archetype from this instance (このインスタンスからアーキタイプを更新する) を選択します。

Archetypes_15_UpdateArchetypesRightClick.png

これにより、アーキタイプが更新され、他のすべてのインスタンスも自身を更新することになります。

アーキタイプの技術的ガイド


UE3 のオブジェクト アーキタイプがどのようにして働くかという技術的な詳細に関しては、 アーキタイプ リファレンス ページを参照してください。