Dimension 3

Introduction of the open source 3D FPS engine for OS X (manual and text translation to Japanese)  

dim3 の メモ

その他

  • 座標軸はX=左右、Z=前後 Y=高さ方向(下)となっているらしい。
  • dim3のエディタで、ツールバーの「Edit Map Script」を押してテキストエディタを起動させるには、 Data/Scripts/Courses/以下のファイルをFinderの「情報を見る(cmd+i)」で開き、「このアプリケーションで開く」の項目を起動するアプリケーション(テキストエディタ)に関連づけると良いと教えてもらいました。
  • 照明、Confine Portal をチェックすると、照明が存在するポータル領域外に光を漏らさなくなる。
  • ポータルには番号がついており、ポータル間へのオブジェクトの移動は、Piece>>Move to Pice from Potal..を使って番号を指定し、行なう。
  • コーススクリプト New_map.js でcamera.setting.typeでカメラタイプのセッティング  ;
    カメラの挙動については Player.js のfunction playerEnterMap(obj) 関数でまとめて制御。 case "New_map":以下、 obj.setting.inputMode で、サイドビュー/トップビューを設定。 FPS表示なら FPS&FPS。キャラ表示ならCHASE&FPSがベストか?

  • セグメントに対して、メニューSegments >>Curve Surfeceや Wall Clipping を選ぶと床や壁にカーブを付ける事ができる。
  • コーススクリプトの構造(Data/Scripts/Courses内のスクリプト)
    Civil War と Big Indoor Map.js の説明 スクリプトの構造はごくシンプル

  • オブジェクトのスクリプトの構造(Data/Scripts/Objects内のスクリプト)
    簡単な説明

    カットシーン

    カメラオブジェクトの位置を変更することで。ゲーム中に複数の場面から構成されるカットシーンを作る事ができます。 ただしdim3には録画機能はないので、内容をムービーファイルにしたい場合は他のソフト SnapzPro 等によるキャプチャが必要です。

    OBJファイルをマップを読込み

    モデラーや景観作成ソフト等でOBJ形式で書き出したファイルを、マップの背景物として読込むこともできます。高さを持ったマップでも読込めるようです。巨大な石像なども作れるかもしれない。 例えば、Wings3Dでは、モデルの制作やマップのレイアウトを中心を行ない、dim3Editor では主にノードやテクスチャ、ライティングの設定を行なうとよいかもしれない。 これとは別に、木や岩、人工物などの背景物などをアニメータによって作成し、マップ配置すると凝ったシーンも作る事ができる。

    疑似3Dレンダリングオブジェクト

    裏技的な使い方では、細部まで作り込まれたオブジェクトを、巨大な背景物として配置し、あとは透明なセグメントで大まかな空間の当たり判定を作っていく方法があります。
    これはCinima4D等のソフトで光源を計算した影などをテクスチャに焼き込ませることで、dim3のリアルタイムレンダリングでは不可能な、よりリアルな陰影を見せかけた背景も作ることもできるらしい、

    マップを自動作成

    どんなふうにマップを作ればいいか迷っているときに役立ちます。
    いったん 新規マップを作成してから、
    MAP Editor のメニューから、Files>> AutoGenerate MAP... を選択

    いくつかの部屋と通路を組み合わせたMAP構成を簡単に作る事ができます。
    ポータル作成を Blocking するオプションを使うことで、マップの形をある程度制御できます(全ての部屋が繋がらない場合もあります)。

     「ローグ」のように、ゲーム中にマップを動的にランダム生成するわけではありません。

    Height Map で、高さを持ったマップを自動生成

    地図の等高線のような画像を作りグレースケールのPNG形式で保存しておきます。これを HeightMAPといいます。白い部分ほど高く、黒い部分ほど低くなります。 
    MAP Editor のメニューから、Files>> Import Height MAP... を選択。ダイアログから読み込むPNGファイルを指定する。また、タブからマップの大きさを調整することができます。 Portal Count はポータル数。Portal SIzeはポータル縦横サイズ、Ymaximum とYminimumの差が高低差になります。Textureでは、壁と床のテクスチャを指定可能(テクスチャは読み込む前に登録しておく)。構成するポリゴンは四角メッシュ/三角メッシュから選べます。

    ↑左がHeightMAP。 右はHeight MAPを読込んだ結果(北西から南東の方角を見た時の景色)。

    テスト

    *Car Map で、Mapに起伏をつけて、 Rigid body を車に適用して変化を試してみる。

    Global Defines

     Scripts フォルダのなかに、Grobal という名前のフォルダを作成する。そのなかにDefines.txtというテキストファイルを保存する。内容は、name[tab]value[改行]形式。
    例えば
    CHARACTOR_ID_CUSTUM 5
    このファイルに定義したID定数は、obj.event.sendMessage で送ったり、Scriptsフォルダの他のスクリプトでも使用することができるらしい。

    デバッグログ

    ゲーム中に出力されるdim3 エンジンのログは OSX 付属のユーティリティ、コンソール.app を使えば確認できます。 また、スクリプトからコンソールにメッセージ等を書き出す事もできます

    EditerでMAPを新規作成する時に表示される説明文の訳

    (作成済みのマップデータを選択するダイアログでキャンセルし、メニューからnewを選択。)
    *Create New Map

    新規マップ作成時に、MAPデータファイルは、Data/Maps フォルダの中に作成されます。
    また、MAPのデフォルトのcourseスクリプトがDataScripts/Coursesフォルダに作成されます。

    新規マップを作成するためにあなたは次の段階を経るでしょう。

    1.テクスチャを張る。
    2.ポータル(portal)を作成する。

    これらのステップを経て、dim3はプレイヤーキャラの初期位置や光源(プレイヤーの上や下にセット)を追加します。
    ここでのポイントは、このマップはエンジンによって実行できる準備ができたということです。

    注意:フロアには、必ずスタート位置となるポータルを作って下さい。さもなければプレイヤーはゲーム実行とともに奈落の底に
    落っこちてしまうでしょう。



    *Choose a Bitmap
    Data/Bitmap/Texture フォルダ内からテクスチャとなるビットマップファイルを選択して下さい。
    全てのビットマップファイルはPNG形式でなければいけません。



    *New Portal ダイアログが出るので。OKを選択。
    すると、ポータルと基本的な部分が作成されます。プレイヤーと照明オブジェクトが配置されます。

    下のtextrureをクリックして壁や床などを変更できます。

    現在編集中のマップが実際にはどのように表示されるか確認したい場合は
    ツールバーから赤い三角のアイコンをクリックすると、
    エンジンが起動し編集中のMAPをプレイすることができます。

    EditerでMAPを新規作成する時に表示される説明文の訳

    (作成済みのマップデータを選択するダイアログでキャンセルし、メニューからnewを選択。)
    *Create New Map

    新規マップ作成時に、MAPデータファイルは、Data/Maps フォルダの中に作成されます。
    また、MAPのデフォルトのcourseスクリプトがDataScripts/Coursesフォルダに作成されます。

    新規マップを作成するためにあなたは次の段階を経るでしょう。

    1.テクスチャを張る。
    2.ポータル(portal)を作成する。

    これらのステップを経て、dim3はプレイヤーキャラの初期位置や光源(プレイヤーの上や下にセット)を追加します。
    ここでのポイントは、このマップはエンジンによって実行できる準備ができたということです。

    注意:フロアには、必ずスタート位置となるポータルを作って下さい。さもなければプレイヤーはゲーム実行とともに奈落の底に
    落っこちてしまうでしょう。



    *Choose a Bitmap
    Data/Bitmap/Texture フォルダ内からテクスチャとなるビットマップファイルを選択して下さい。
    全てのビットマップファイルはPNG形式でなければいけません。



    *New Portal ダイアログが出るので。OKを選択。
    すると、ポータルと基本的な部分が作成されます。プレイヤーと照明オブジェクトが配置されます。

    下のtextrureをクリックして壁や床などを変更できます。

    現在編集中のマップが実際にはどのように表示されるか確認したい場合は
    ツールバーから赤い三角のアイコンをクリックすると、
    エンジンが起動し編集中のMAPをプレイすることができます。

    Map Auto Generateの訳

     
    
    Map Auto Generate :Portal Tab
    These numbers determine how many portals are create and of what size. Note that the initial portal number is
    the initial number of portals  generated. Marged,connected, or dropped portal can change this count.
     これらの設定は、ポータルをどんな大きさで何個作るかを決めます。最初のポータル番号は、生成されるポータルの番号であることに注意して下さい。
    合併されたり、接続されたり、落とし込んでいるポータルを作成するには、この数を変更します。
    
    
    These numbers determine the height of portals. The min and max portal extra Y 
    determine how portal differ in height from one another.
    これらの設定はポータルの高さを決めます。extra Y の最大値と最小値は、他のポータル同士の高さのばらつきを決定します
    Open Ceiling Extra は、天井に穴があいているポータルの煙突状部分の高さを設定します。
    
    
    
    This number determines the maximum distance to merge portals . If two portals are closer than this distance (and can be moved) then they will be merged into a bigger portal.
    この設定は、ポータルが合体する場合の最大距離を決定します。2つのポータルがこの距離より近くにあると、それらは、より大きいポータルとして合体するでしょう。
    
    Max Merge Distance 
    
    These numbers determine how new portals are create to connect portals and merged portals together.
    これら設定は、新しいポータルがどのくらいの大きさかのかを決定します。
    
    These settings determine variation in the connecting corridors.
    接続する通路の形を決定する設定があります。
    
    Corridor Type: Slanted Ceiling 傾きのある天井
    	Slanted Ceiling Extra Y 
    		0.....長方形
    		10 ....家型の5角形
    		50....  台形
    		80.... 三角形
    
    Corridor Type: Octagon 筒状の通路。
    	Slanted Ceiling Extra Y 
    		0...長方形
    		10...6角形
    		50... 菱形
    
    
    Map Auto Generate: Options Tab Various additional options controlling the creation of the map Include Walls 壁を含める Include Floors 床を含める Rough Portal Floors ポータル(または部屋)の床に起伏を付ける。 Extend Rough to Corridors 廊下にも起伏を適用する。 Rough Size 起伏の大きさ。 Include Ceilings 天井を含める Opnen Hole Ceilings 天井に穴を開ける Hole Likelihood 穴の出現する可能性 Include Doors ドアを含める Door Likelihood ドアの出現する可能性 Door Sound ドアの効果音 Include Lights 光源を含める Portal Center Fudge ポータルの中心配置の"いい加減さ" Portal Fill Percentage ポータル内をどのくらい照らすか。 Color Alteration 色の変化度 Flicker Percentage 光源をちらつかせる度合い Include Sight Path 視点経路を含める Include Blank Spots 未設定の"スポット"を事前に配置しておく。 Spot Count スポットを配置する数

    物置き

  • Interface viewer 補助用ツール
  • 日本語などの文字を表示可能にする拡張パッチ(UTF-8用)
  • Last modified 2007/04/09

    Tsukubado