S3GLTriangleIndexData
WebGL描画用の三角形インデックス・属性データ格納クラス。 三角形ごとの頂点インデックス・UV・法線・接線・従法線などを保持し、 WebGL(GLSL)用に最適化されたデータ生成やハッシュ作成も担います。
Constructor Summary
Public Constructor | ||
public |
constructor(triangle_index: S3GLTriangleIndex) 三角形インデックス情報からGL用データ構造を生成します。 |
Member Summary
Public Members | ||
public |
面の法線・接線・従法線 |
|
public |
各頂点を示すインデックス配列 |
|
public |
面が使用するマテリアル番号 |
|
public |
各頂点のUV座標(S3Vectorの配列) |
|
public |
各頂点(3つ)の法線・接線・従法線の配列 |
Private Members | ||
private |
UV情報が有効かどうか |
Method Summary
Public Methods | ||
public |
getGLData(number: number, vertexList: Array<S3GLVertex>): {[key: string]} 指定頂点のWebGL向け頂点属性データ(GLSL用attribute名に合わせたデータ群)を返します。 位置・マテリアル番号・UV・法線・接線・従法線などがGLArray形式で格納されます。 |
|
public |
getGLHash(number: number, vertexList: Array<S3GLVertex>): string この三角形の、指定頂点(number番目)についてWebGL用一意ハッシュ値を生成します。 頂点情報・UV・法線などを元にGLバッファのキャッシュや識別に使えます。 |
Public Constructors
public constructor(triangle_index: S3GLTriangleIndex) source
三角形インデックス情報からGL用データ構造を生成します。
Params:
Name | Type | Attribute | Description |
triangle_index | S3GLTriangleIndex | S3GLTriangleIndexなどの三角形インデックス情報 |
Public Members
Private Members
Public Methods
public getGLData(number: number, vertexList: Array<S3GLVertex>): {[key: string]} source
指定頂点のWebGL向け頂点属性データ(GLSL用attribute名に合わせたデータ群)を返します。 位置・マテリアル番号・UV・法線・接線・従法線などがGLArray形式で格納されます。
- vertexPosition: 頂点位置(vec3)
- vertexTextureCoord: UV座標(vec2)
- vertexMaterialFloat: マテリアル番号(float)
- vertexNormal: 法線ベクトル(vec3)
- vertexBinormal: 従法線ベクトル(vec3)
- vertexTangent: 接線ベクトル(vec3)
Params:
Name | Type | Attribute | Description |
number | number | 三角形内の何番目の頂点データを取得するか(0, 1, 2) |
|
vertexList | Array<S3GLVertex> | 頂点の配列 |
Return:
{[key: string]} |
public getGLHash(number: number, vertexList: Array<S3GLVertex>): string source
この三角形の、指定頂点(number番目)についてWebGL用一意ハッシュ値を生成します。 頂点情報・UV・法線などを元にGLバッファのキャッシュや識別に使えます。
Params:
Name | Type | Attribute | Description |
number | number | 三角形の頂点番号(0, 1, 2) |
|
vertexList | Array<S3GLVertex> | 全頂点配列 |