Home Manual Reference Source
import S3GLTriangleIndexData from 's3js/src/gl/S3GLTriangleIndexData.js'
public class | source

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:

NameTypeAttributeDescription
triangle_index S3GLTriangleIndex

S3GLTriangleIndexなどの三角形インデックス情報

Public Members

public face: S3GLFaceAttribute source

面の法線・接線・従法線

public index: number[] source

各頂点を示すインデックス配列

public materialIndex: number source

面が使用するマテリアル番号

public uv: Array<S3Vector> source

各頂点のUV座標(S3Vectorの配列)

public vertex: S3GLVertexAttribute source

各頂点(3つ)の法線・接線・従法線の配列

Private Members

private _isEnabledTexture: boolean source

UV情報が有効かどうか

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:

NameTypeAttributeDescription
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:

NameTypeAttributeDescription
number number

三角形の頂点番号(0, 1, 2)

vertexList Array<S3GLVertex>

全頂点配列

Return:

string

頂点+属性を加味したハッシュ文字列