typedef struct { Sint16 u; /* テクスチャU座標 */ Sint16 v; /* テクスチャV座標 */ } NJS_TEX;
typedef struct { Uint8 b; /* B成分 0 - 255 */ Uint8 g; /* G成分 0 - 255 */ Uint8 r; /* R成分 0 - 255 */ Uint8 a; /* A成分 0 - 255 */ } NJS_BGRA;
typedef union { Uint32 color; /* パックカラー値 */ NJS_TEX tex; /* テクスチャUV値 */ NJS_BGRA argb; /* ARGB成分別設定カラー値 */ } NJS_COLOR;
typedef struct { Float a; /* A成分 0.f - 1.f */ Float r; /* R成分 0.f - 1.f */ Float g; /* G成分 0.f - 1.f */ Float b; /* B成分 0.f - 1.f */ } NJS_ARGB;
typedef struct { Sint16 x; /* X座標(横)*/ Sint16 y; /* Y座標(縦)*/ } NJS_POINT2I;
typedef struct { Float x; /* X座標(横)*/ Float y; /* Y座標(縦)*/ } NJS_POINT2;
typedef struct { Float x; /* X座標 */ Float y; /* Y座標 */ Float z; /* Z座標 */ } NJS_POINT3, NJS_VECTOR;
typedef struct { NJS_POINT2 *p; /* 頂点データのポインタ */ NJS_COLOR *col; /* 頂点カラーデータのポインタ */ NJS_COLOR *tex; /* テクスチャUVデータのポインタ */ Uint32 num; /* 頂点数 */ } NJS_POINT2COL;
typedef struct { NJS_POINT3 *p; /* 頂点データのポインタ */ NJS_COLOR *col; /* 頂点カラーデータのポインタ */ NJS_COLOR *tex; /* テクスチャUVデータのポインタ */ Uint32 num; /* 頂点数 */ } NJS_POINT3COL;
typedef struct { Float px,py,pz; /* 頂点座標 */ Float vx,vy,vz; /* ベクトル */ } NJS_LINE;
typedef struct { Float px,py,pz; /* 頂点座標 */ Float vx,vy,vz; /* ベクトル */ } NJS_PLANE;
typedef struct { Float px,py,pz; /* 頂点座標 */ Float vx,vy,vz; /* ベクトル */ } NJS_PVECTOR;
typedef struct{ NJS_POINT3 c; /* 中心座標 */ Float r; /* 半径 */ } NJS_SPHERE;![]()
typedef struct{ NJS_POINT3 c1; /* 中心座標1 */ NJS_POINT3 c2; /* 中心座標2 */ Float r; /* 半径 */ } NJS_CAPSULE;![]()
typedef struct{ NJS_POINT3 v[8]; /* 頂点座標 */ } NJS_BOX;![]()
typedef struct { NJS_MATRIX m; /* ビューマトリックス */ Float px,py,pz; /* 視点の位置座標 初期値(0.f,0.f,0.f) */ Float vx,vy,vz; /* 視線の向きベクトル 初期値(0.f,0.f,-1.f) */ Angle roll; /* 視線の傾き 初期値 0 */ Float apx,apy,apz; /* Viwe関数のAbsolute系の視点の位置座標 初期値(0.f,0.f,0.f) */ Float avx,avy,avz; /* Viwe関数のAbsolute系の視線の向きベクトル初期値(0.f,0.f,-1.f) */ Angle aroll; /* Viwe関数のAbsolute系の視線の傾き 初期値 0 */ } NJS_VIEW;
typedef struct { Float dist; /* スクリーンの原点からの距離 */ Float w,h; /* スクリーン幅、高さ */ Float cx,cy; /* スクリーン中心座標 */ } NJS_SCREEN;
typedef Float NJS_MATRIX[16];