Home Manual Reference Source

Typedef

Static Public Summary
public

WebGL配列で利用できるデータ型情報(各種TypedArray型)。

public

GLSL型名("vec3"や"mat4"など)を配列次元や入力種別から自動判定するためのテーブル構造。

public

面(フェース)単位の属性情報型。 S3Vector.getTangentVector で計算された面の法線・接線・従法線(すべてS3Vector型またはnull)。

public
public

テクスチャキャッシュ全体の型定義。 キーがテクスチャID(string)で、値がGLFuncTextureCashEntry型になります。

public
public

_getGLArrayDataの返却値(IBOとVBOまとめて返す構造)

public

IBO(インデックスバッファオブジェクト)データ構造

public

VBO(頂点バッファオブジェクト)全体のデータ構造

public

VBO(頂点バッファオブジェクト)1要素のデータ構造

public

S3GLNormalListKey: "normal" | "tangent" | "binormal"

public
public

S3GLProgramBindData: Int32Array | Float32Array | WebGLBuffer | WebGLTexture

public
public
public
public

GLSL型名ごとのWebGLバインド情報テーブル。 各GLSL型(int, float, mat4, vec3, sampler2D等)に対し、

  • glsltype: GLSL型名("vec3" など)
  • instance: 対応するTypedArray型またはImage(サンプラーの場合)
  • size: 必要な要素数(配列長)
  • btype: 内部的なデータ型種別("FLOAT", "INT", "TEXTURE" など)
  • bind: WebGLのuniformバインド関数(g内の該当関数を使用) などの情報を保持します。
public
public
public
public

ソースコードから解析した変数のデータ

public

S3GLTypedArrayConstructor: typeof Float32Array | typeof Int32Array

TypedArrayのコンストラクタ型定義(Int32Array, Float32Array など)。

public

WebGLのuniform変数バインド用関数群。 各関数はGLSLの型に応じて正しいuniform関数(uniform1iv/uniformMatrix4fv等)でデータを送る役割を持ちます。

public

頂点単位の属性情報型。 各頂点(3つ)の法線・接線・従法線(いずれもS3Vector型またはnull)の配列。

public

メッシュデータの入出力用関数定義

public

デフォルトのマテリアル情報(必要時に参照される)

public
public
public

カメラのビュー・プロジェクション・ビューポート行列情報をまとめた型

Static Public

public S3GLArrayDataType: Object source

WebGL配列で利用できるデータ型情報(各種TypedArray型)。

  • instance: 対応するTypedArrayコンストラクタ(例:Float32Array, Int32Array)
  • name: 型の名前文字列("Float32Array"等)

Properties:

NameTypeAttributeDescription
instance S3GLTypedArrayConstructor

対応するTypedArrayのコンストラクタ

name string

型名("Float32Array"等)

public S3GLArrayGLTypeTable: Object<string, Object<string, Object<number, string>>> source

GLSL型名("vec3"や"mat4"など)を配列次元や入力種別から自動判定するためのテーブル構造。

  • 第一階層キー:データ型名("Float32Array" または "Int32Array")
  • 第二階層キー:値種別("Number", "S3Vector", "S3Matrix")
  • 第三階層キー:配列次元や要素数(2, 3, 4, 9, 16など)
  • 値:対応するGLSL型名("vec3"等)を表す文字列

例)gltypetable["Float32Array"]["S3Matrix"][16] === "mat4"

public S3GLFaceAttribute: Object source

面(フェース)単位の属性情報型。 S3Vector.getTangentVector で計算された面の法線・接線・従法線(すべてS3Vector型またはnull)。

Properties:

NameTypeAttributeDescription
normal S3Vector
  • nullable: true

面の法線ベクトル

tangent S3Vector
  • nullable: true

面の接線ベクトル

binormal S3Vector
  • nullable: true

面の従法線ベクトル

public S3GLFuncTextureCashEntry: Object source

Properties:

NameTypeAttributeDescription
texture WebGLTexture

WebGLテクスチャオブジェクト

count number

このテクスチャの参照カウント

public S3GLFuncTextureCashTable: Object<string, S3GLFuncTextureCashEntry> source

テクスチャキャッシュ全体の型定義。 キーがテクスチャID(string)で、値がGLFuncTextureCashEntry型になります。

public S3GLLightGLData: Object source

Properties:

NameTypeAttributeDescription
lightsData1 S3GLArray

モード・レンジ・方向or位置 (vec4)

lightsData2 S3GLArray

方向or位置Z成分+カラー情報 (vec4)

public S3GLMeshArrayData: Object source

_getGLArrayDataの返却値(IBOとVBOまとめて返す構造)

Properties:

NameTypeAttributeDescription
ibo S3GLMeshIBOData

インデックスバッファ情報

vbo S3GLMeshVBOData

頂点バッファ情報

public S3GLMeshIBOData: Object source

IBO(インデックスバッファオブジェクト)データ構造

Properties:

NameTypeAttributeDescription
array_length number

配列の要素数(インデックス総数)

array Int16Array

インデックス値の配列(WebGL用)

data WebGLBuffer
  • optional

GL生成後のバッファオブジェクト(未生成時はundefined)

public S3GLMeshVBOData: Object<string, S3GLMeshVBOElement> source

VBO(頂点バッファオブジェクト)全体のデータ構造

public S3GLMeshVBOElement: Object source

VBO(頂点バッファオブジェクト)1要素のデータ構造

Properties:

NameTypeAttributeDescription
name string

属性名(例:"position", "normal", "uv" など)

dimension number

配列の次元(例:位置なら3、UVなら2など)

datatype typeof Float32Array | typeof Int32Array

使用する配列型

array_length number

配列の要素数(全頂点×次元)

array Float32Array | Int32Array

属性データ本体

data WebGLBuffer
  • optional

GL生成後のバッファオブジェクト(未生成時はundefined)

public S3GLNormalListKey: "normal" | "tangent" | "binormal" source

public S3GLNormalVector: Object source

Properties:

NameTypeAttributeDescription
normal S3Vector

平面の法線

tangent S3Vector

UV座標による接線

binormal S3Vector

UV座標による従法線

public S3GLProgramBindData: Int32Array | Float32Array | WebGLBuffer | WebGLTexture source

public S3GLProgramBindInputDataSingle: Int32Array | Float32Array | WebGLBuffer | WebGLTexture | S3GLArray | S3Matrix | S3Vector | number source

public S3GLProgramBindInputDataTable: Object<string, S3GLProgramBindInputData> source

public S3GLProgramGLSLTypeInfo: Object source

GLSL型名ごとのWebGLバインド情報テーブル。 各GLSL型(int, float, mat4, vec3, sampler2D等)に対し、

  • glsltype: GLSL型名("vec3" など)
  • instance: 対応するTypedArray型またはImage(サンプラーの場合)
  • size: 必要な要素数(配列長)
  • btype: 内部的なデータ型種別("FLOAT", "INT", "TEXTURE" など)
  • bind: WebGLのuniformバインド関数(g内の該当関数を使用) などの情報を保持します。

Properties:

NameTypeAttributeDescription
glsltype string

GLSL型名(例:"vec3")

instance typeof Float32Array | typeof Int32Array | Image

対応TypedArrayコンストラクタまたはImage

size number

要素数(floatなら1, mat4なら16など)

btype string

内部データ型区分("FLOAT", "INT", "TEXTURE"等)

bind function(prm1: WebGLUniformLocation, prm2: *): void

uniform変数へバインドするための関数

public S3GLProgramUniforms: Object source

Properties:

NameTypeAttributeDescription
uniforms S3GLProgramBindInputDataTable

public S3GLProgramUniforms: Object source

Properties:

NameTypeAttributeDescription
uniforms S3GLSceneUniform

public S3GLSceneUniform: Object source

Properties:

NameTypeAttributeDescription
eyeWorldDirection S3Vector

カメラ情報

lightsLength S3GLArray

ライトの数

lightsData1 S3GLArray[]

モード・レンジ・方向or位置 (vec4)

lightsData2 S3GLArray[]

方向or位置Z成分+カラー情報 (vec4)

public S3GLShaderData: Object source

ソースコードから解析した変数のデータ

  • info オブジェクトのキー("int", "float", "vec3"など)を使用して、いくつかのデータはコピーされる

Properties:

NameTypeAttributeDescription
glsltype string

GLSL型名(例:"vec3")

instance typeof Float32Array | typeof Int32Array | Image

対応TypedArrayコンストラクタまたはImage

size number

要素数(floatなら1, mat4なら16など)

btype string

内部データ型区分("FLOAT", "INT", "TEXTURE"等)

bind function(prm1: WebGLUniformLocation, prm2: *): void

uniform変数へバインドするための関数

name string

変数名(例:"M")

modifiers string

宣言修飾子(例:"uniform")

is_array boolean

配列かどうか(例:trueなら配列型)

location Array<GLint|WebGLUniformLocation>

public S3GLTypedArrayConstructor: typeof Float32Array | typeof Int32Array source

TypedArrayのコンストラクタ型定義(Int32Array, Float32Array など)。

public S3GLUniformBindFunctions: Object source

WebGLのuniform変数バインド用関数群。 各関数はGLSLの型に応じて正しいuniform関数(uniform1iv/uniformMatrix4fv等)でデータを送る役割を持ちます。

Properties:

NameTypeAttributeDescription
uniform1iv function(prm1: WebGLUniformLocation, prm2: Int32Array): void

1次元整数配列を送信

uniform2iv function(prm1: WebGLUniformLocation, prm2: Int32Array): void

2次元整数配列を送信

uniform3iv function(prm1: WebGLUniformLocation, prm2: Int32Array): void

3次元整数配列を送信

uniform4iv function(prm1: WebGLUniformLocation, prm2: Int32Array): void

4次元整数配列を送信

uniform1fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

1次元浮動小数点配列を送信

uniform2fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

2次元浮動小数点配列を送信

uniform3fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

3次元浮動小数点配列を送信

uniform4fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

4次元浮動小数点配列を送信

uniformMatrix2fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

2x2行列を送信

uniformMatrix3fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

3x3行列を送信

uniformMatrix4fv function(prm1: WebGLUniformLocation, prm2: Float32Array): void

4x4行列を送信

uniformSampler2D function(prm1: WebGLUniformLocation, prm2: WebGLTexture): void

2Dテクスチャ(sampler2D)を送信

public S3GLVertexAttribute: Object source

頂点単位の属性情報型。 各頂点(3つ)の法線・接線・従法線(いずれもS3Vector型またはnull)の配列。

Properties:

NameTypeAttributeDescription
normal ArrayS3Vector>

各頂点の法線ベクトル [0], [1], [2]

tangent ArrayS3Vector>

各頂点の接線ベクトル [0], [1], [2]

binormal ArrayS3Vector>

各頂点の従法線ベクトル [0], [1], [2]

public S3MeshLoaderDataIOFunvction: Object source

メッシュデータの入出力用関数定義

Properties:

NameTypeAttributeDescription
name string

入出力形式の名前("JSON", "MQO", "OBJ"など)

input function(prm1: S3System, prm2: S3Mesh, prm3: string, prm4: string=): boolean

テキストをインスタンスへ変換する

output function(prm1: S3Mesh): string
  • optional

インスタンスをテキストへ出力する

public S3MeshLoaderMaterial: Object source

デフォルトのマテリアル情報(必要時に参照される)

Properties:

NameTypeAttributeDescription
name string

名前

color S3Vector

拡散反射色

diffuse number

拡散係数

emission S3Vector

自己照明色

specular S3Vector

鏡面反射色

power number

鏡面反射強度

ambient S3Vector

環境光色

reflect number

環境マッピング反射率

textureColor null

拡散テクスチャ

textureNormal null

法線マップ

public S3MeshLoaderMaterialListEntry: Object source

Properties:

NameTypeAttributeDescription
material S3MeshLoaderMaterial | S3Material

マテリアル情報(S3Material型またはDefaultMaterialオブジェクト)

list Array<Array<number>>

そのマテリアルに属する三角形インデックス配列

public S3NormalVector: Object source

Properties:

NameTypeAttributeDescription
normal S3Vector

平面の法線

tangent S3Vector

UV座標による接線

binormal S3Vector

UV座標による従法線

public S3VPSMatrix: Object source

カメラのビュー・プロジェクション・ビューポート行列情報をまとめた型

  • LookAt: ビュー変換行列
  • aspect: アスペクト比(canvas幅 / 高さ)
  • PerspectiveFov: パースペクティブ射影行列
  • Viewport: ビューポート変換行列

Properties:

NameTypeAttributeDescription
LookAt S3Matrix

ビュー(LookAt)変換行列

aspect number

アスペクト比

PerspectiveFov S3Matrix

パースペクティブ射影行列

Viewport S3Matrix

ビューポート変換行列