アットウィキロゴ

Area Tutorial

英wiki
Area Tutorial


エリアの作成(Creating the area)


新しいモジュールを作成したら(Creating a moduleを参照)、まず初めに新しいエリアを作りたいでしょう。
「File」メニューから、「Area」をクリックします。

「Create New Resource」ウィンドウが出てきます。
他のほとんどはデフォルトのままでよいので、ResRefNameに名前を入れます。
この名前は、toolsetが内部で使用する名前です。あなたやモジュールのデザイナーがエリアの重要な特徴を思い出せるような名前にしましょう。

ここでは「hut_exterior」といれます。

エリアを作成すると、エリアディターが空白の状態で表示されます。


あなたが配置したいオブジェクトを入れてくために、「Object Inspector」(画面に出てないときはViewメニュからOtherWindow→ObjectInspector)
の「Area Layout」で、を押して、ここでは「ost101d.arl」(拡張子出てないかも)を選択しましょう。

メインのエリアに森の画面が出ます。

内部のリソースの名前はhut_exteriorですが、ゲームをプレイ中にはプレイヤーには見えません。
プレイヤーが見える名前を与えるためには、「Name」フィールドで「Deep in the Swamp」と入れます。

今のところ、他はすべてデフォルトでOKです。


エリアエディタに関しての基礎知識(Area Basics)


カメラ移動に関しては三種類モードあります。(Windows standard, NWN-Style, 3DMax Style)
ToolsメニューのOptionsから、Area Editorのところにあるので好みの設定をしましょう。
とりあえずここでは、NWN-Style(たぶんデフォルト)でいきます。

  • カメラのズームはマウスホイールで。グリグリしましょう。
  • 水平、垂直方向へのスライドは、Ctrl + 左ドラッグ。
  • カメラの旋回は、Ctrl + 右ドラッグ または、中ボタンをドラッグ。


スタート地点の設定(Setting the start point)


プレイヤーが最初に出てくるウェイポイント(waypoint)を設定しましょう。

ウェイポイントは、ゲーム中のエリア内で他のオブジェクトが参照できるとても単純なオブジェクトです。

ウェイポイントを作成するには、3Dの画面内で右クリック→「Insert Waypoint」を押して、アイコンが変わったら置きたい所で左クリック。
デフォルトの名前は、そのまま「Waypoint」になってます。

ウェイポイントは自動的にワイヤーフレームのボックスに囲まれて、選択状態になっています。
エリアエディター内の左のリストにもWaypointのツリー項目が増えているので、そちらから選択することもできます。

あとで、特定のウェイポイントを探したい時は、左のリストから右クリック→「Zoom to Object」で、そのWaypointまで飛んでくれます。

ウェイポイントをもうちょっと意味のある物にしたいので、Nameのフィールドを「waypoint」から「start」に変更します。
同じようにTagの方も空白から「start」に変更しましょう。

「Tag」のフィールドは、スクリプトや他のリソースがそのウェイポイントを参照するときに使う名前です。

それから、ウェイポイントの矢印方向は、プレイヤーがそちらを向いていることを示しています。
方向を変えたいときは、まずウェイポイントを選択し、ワイヤーフレームで囲っている状態から、
に変えて、でてくる球の水平方向をドラッグしてぐるぐるまわしてやればOK.


とりあえず、これで開始エリアと開始地点ができたので、「Manage Modules」(Fileメニュー下)から、「Properties」のボタンを押す。
「Starting Area」のから、今作った「hut_exterior」を選択。

「Starting Area」を選択すると、その下の「Starting Waypoint」から、今設置した、ウェイポイントが選択できるようになる。
(0.0.0.は使わないほうが良い。)


ドアを通してのエリアの移行(Area transitions via doors)


冒険してると、ほとんどの場所にドアというものがあります。
そこで、次はドアをいくつか作り、2つのエリアを行き来できるようにしましょう。

ドアの中の部屋は「ost102d」を使います。これは、こじんまりした小さな部屋になっています。(たぶんFlemethの部屋)

次に必要なのはドアです。デフォルトのドアが「New」→「 Placeable」コマンドを使って作ることができます。(Placeableについては、Placeable tutorial参照)

「Placeable」を設置する為には、「Palette Window」から「Placeable」を選択して、3Dエリア内でカーソルが十字になっていることを確認しつつ、
ドアの枠の近くで左クリックすればOK.

注意:もしも、間違えて、「Area transition」のドアじゃなく、標準のドアを置いてしまったら、当然うまく動きません。クリックしても単に開くだけです。
直すのは簡単なので、ドアのリソースに行って「Appearance」を直してきましょう。

ドアを置いたとき、小さな青い玉が、扉の横についていますが、これはドアのフックです。
「Area Layout」には、あらかじめドアにあるフックが隠されて設置されています。扉の青玉をクリックすると赤に変化して、エリア内の設置可能な場所に
青玉が現れます。

ドアにフックをくっつけるには、単に近づければOK。正確な位置を設定する必要はない。

次は、ゲームにそのドアがエリア移行のためのドアだと教えてやって、プレイヤーが、そいつをクリックしたときに次のエリアに移行できるように
しないといけない。これには、ドアの二つの変数を設定してやれば良い。
まず、エリア内のドアを選択して、右クリック。「properties」から、「Variables」のを選択。
ポップアップウィンドウが出てくるので、この中の

PLC_AT_DEST_AREA_TAG:行き先、目的地のエリアのタグ。(「hut_interior」でセット)
PLC_AT_DEST_TAG:行き先、目的地のエリア内のウェイポイントのタグ。この行き先のウェイポイントは自分で入れなければならないので注意。自動的に作成されません。(「hut_door_interior」でセット)

いったん、ドアに設定したら、ドアはエリア移行をするドアになります。で、プレイヤーがこれを触ると、PLC_AT_DEST_AREA_TAGで設定したエリアへ移行することになります。

さて、目的地のエリアは「hut_interior」です。「hut_door_interior」のタグをつけたウェイポイントを「hut_interior」内に作って、プレイヤーがドアを
開けたときにそこに出てこれるようにしましょう。

目的地のウェイポイントと「hut_door_interior」内のドア


「interior」内のドアも、目的地のエリア「hut_exterior」に、同じように設定し、ウェイポイントも「hut_door_exterior」としましょう。

もし、ドアを介さないようなエリア移行をしたい場合や、もしくは、すでにそのレベルアート?で表されているなら、変わりに「不可視のドア」を使いましょう。
「Appearance」を「Area Transision, Invisible」として、「Variables」を同じように設定します。

このドアは、プレイヤーには見えません。しかし、マウスのポインタをあわせると、エリア移行のラインが見え、右クリックをすれば、ドアのように動作させることができます。


トリガーを通したエリア移行(Area transitions via triggers)


最後に、プレイヤーが事前に定義した領域へ歩いていったときに自動的に発生するエリア移行を作成します。

これには、Triggersを使います。まず、最初に、「Trigger」のリソースを作らないといけません。
Placeableのドアを作るのと同じくらい簡単ですが、「Trigger」リソースは、もっと単純で、エリア移行に関しては、何も変更せずデフォルトのままでOKです。
「New」→「Trigger」で、デフォルトのトリガーをつくり、ここでは、「trigger_area_transition」と名前をつけます。

名前をつけたら、エリアマップに戻って、マップ内にトリガーとして定義したい領域をクリックしてきます。完了するときは、ダブルクリック。
(押しても何もならねーよ。ってひとは、PaletteWindowの を押して、作成したトリガーを選択)

トリガーはいくつでも頂点を作成してポリゴンを作成することができ、頂点を移動したり増やしたりもできます。また、作成後消すこともできます。
だから正確に作れなくても心配すんな。

注意:トリガーとして表されてる青いポリゴンが、地面内埋まっていても、上のほうまでちゃんと広がって定義されてるので、プレイヤーがその領域にはいれば、
ちゃんと動作します。

トリガーの目的地を設定する。「Valueables」の中に同じような変数が見つかるので:
  • TRIGGER_AT_DEST_AREA_TAG
  • TRIGGER_AT_DEST_TAG
これを設定。(PlaceableのPLC、TriggerのTRIGGER)


Placeableのグループ化(Grouping Placeables)


エリア内のPlaceableは、よくお互いに関係性も持つことがある。

例えば、焚き火のPlaceableを見てみよう。これは、音を発生させるオブジェクトと関係があり、toolsetで、これらを関連付けることができる。

  1. 新しいPlaceableを作って、Appearanceを「Firepit(Dialoge)」にして、それをエリア内に設置します。
  2. 次にPaletteWindow内の「Sounds」のアイコンをクリック(音符マーク)
  3. ツリー内から「global_amb_fade」→「3D_placeables」→「3d_emitter」とたどっていき、「amb_ext_smfire1_lp」を選択して、エリア内に置く。
  4. Firepitを右クリックして、メニューから「Add Associated object」を選ぶと、カーソルが十字になる。
  5. 拡声器(Sound emitter)のPlaceableを選択する。

これで、焚き火のオブジェクトを移動させても、拡声器マークのオブジェクトも一緒に移動してくれるようになる。
右クリック→「Managed Links」のメニュー項目を使えば、関連付けを解除することもできる。

注意:この関連付けは、一方通行なものなので、拡声器オブジェクトのほうを移動させようとすると、焚き火のオブジェクトはついてきてくれない。


サウンド(Sound)


サウンドは、エリアエディターを使って設定します。よりくわしいことはSoundにて。

最終更新:2010年01月20日 21:23