English
Graphic Tools Guideフォーマット一覧

SG3Dファイルフォーマット

1996-07-12

■ファイルレイアウト

[ヘッダ]
必須
[オブジェクト](1)
必須
[頂 点]
必須
[法 線]
必須
[ポリゴン]
必須
[モデル名]
拡張
........
[オブジェクト](2)
[頂 点]
[法 線]
[ポリゴン]
........
[オブジェクト]...
.............

■IFF形式

(1)リトルエンディアン(Intel形式)

(2)タグ
typedef char CHAR;
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef float FLOAT;
struct tag_IFF{
CHAR chunk[4]; //4文字のチャンク名
DWORD size; //データサイズ
};

(3)レイアウト
[タグ]
[データ]
[タグ]
[データ]
......
......

■フォーマット

(1)標準タグ→全て必須

[ヘッダ]
 内 容 : ファイル識別情報
チャンク : "SG3D"
 サイズ : 256
 データ : タイプ 内容
       DWORD バージョン(0x00011000)
       DWORD オブジェクト数
       DWORD[62] 予約

[オブジェクト]
 内 容 : 階層情報
チャンク : "OBJT"
 サイズ : 96
 データ : タイプ 内容
       FLOAT[4][3] 3x4の変換マトリクス
       FLOAT[3] トランスレーション(XYZ)
       FLOAT[3] ローテーション(XYZ)
       FLOAT[3] スケーリング(XYZ)
       DWORD ID(0〜n)
       DWORD 子供のID
       DWORD 兄弟のID

 備 考 : 角度の単位は(度)
       IDは子供・兄弟がない場合は-1(0xffffffff)

[頂点]
 内 容 : 頂点座標
チャンク : "VerF"
 サイズ : 12x頂点数
 データ : タイプ 内容
       FLOAT[3] 頂点の座標(XYZ)

 備 考 : 上記データを頂点数分セットする

[法線]
 内 容 : 頂点の法線ベクトル
チャンク : "NorF"
 サイズ : 12x頂点数
 データ : タイプ 内容
       FLOAT[3] 頂点の法線ベクトル(XYZ)

 備 考 : 上記データを頂点数分セットする
       単位ベクトル

[ポリゴン]
 内 容 : ポリゴンの頂点番号
チャンク : "POLY"
 サイズ : 8xポリゴン数
 データ : タイプ 内容
       WORD[4] 4点ポリゴンを構成する頂点番号

 備 考 : 上記データをポリゴン数分セットする
       頂点番号は右回り

(2)拡張タグ→なくてもよい

[モデル名]
 内 容 : オブジェクト(階層)名
チャンク : "MoNm"
 サイズ : 文字列長
 データ : タイプ 内容
       CHAR[?] オブジェクト名の文字列

 備 考 : 文字列は終了コード('¥0')を含めなければならない

[グーローテーブル]
 内 容 : セガサターン用グーローテーブル
チャンク : "SSGr"
 サイズ : 8xポリゴン数
 データ : タイプ 内容
       WORD[4] ポリゴン適用されたグーローデータ

 備 考 : 上記データをポリゴン数分セットする
       デフォルトは{0xc210,0xc210,0xc210,0xc210}
詳細別途

[アトリビュート]
 内 容 : セガサターン用面属性
チャンク : "SSAt"
 サイズ : 12xポリゴン数
 データ : タイプ 内容
       WORD 表裏反転フラグ
       0 Single_Plane
       1 Dual_Plane

       WORD Zソートフラグ
       0 SORT_CEN (中心点)
       1 SORT_MIN (最近点)
       2 SORT_MAX (再遠点)
       3 SORT_FAR (未使用)
       4 SORT_NER (未使用)

       WORD テクスチャ番号

       WORD カラー(R:G:B=5:5:5)

       DWORD 面属性の種類
       BIT
       0 texHflip
       1 texVflip
       2
       3 sprTexture
       4 sprPolygon
       5 sprPolyLine
       6
       7 UserShade
       8 MESHon
       9 CL_Shadow
       10 CL_Half
       11 CL_Trans
       12 CL_Gouraud
       13 ECdis
       14 SPdis
       15 CL16Bnk
       16 CL16Look
       17 CL64Bnk
       18 CL128Bnk
       19 CL256Bnk
       20 CL32KRGB
       21 Window_In
       22 Window_Out
       23
       24 UseLight
       25 UseClip
       26 UsePalette
       27 UseNearClip
       28 UseDepth
       29
       30
       31

 備 考 : 上記データをポリゴン数分セットする
       デフォルトは{0,0,0,0xc210,0x01100010}
       詳細別途

Graphic Tools Guideフォーマット一覧
Copyright SEGA ENTERPRISES, LTD,. 1997