Material<T>¶
マテリアル
Extended by¶
Type parameters¶
| Type parameter | Value |
|---|---|
T |
unknown |
Constructors¶
new Material()¶
new Material<
T>(glenv,vs_code,fs_code,render_target_tracker?):Material<T>
Parameters¶
| Parameter | Type | Description |
|---|---|---|
glenv |
GLEnv |
WebGL 環境 |
vs_code |
string |
頂点シェーダのソースコード |
fs_code |
string |
フラグメントシェーダのソースコード |
render_target_tracker? |
RenderTargetTracker<T> |
- |
Returns¶
Material<T>
Properties¶
_program¶
protected_program:WebGLProgram
glenv¶
protectedreadonlyglenv:GLEnv
parameters¶
protectedreadonlyparameters:Map<string,Parameter>
render_target_tracker¶
protectedreadonlyrender_target_tracker:RenderTargetTracker<T>
Methods¶
_setRenderId()¶
protected_setRenderId(id):void
Parameters¶
| Parameter | Type |
|---|---|
id |
number |
Returns¶
void
bindProgram()¶
bindProgram():
void
プログラムを束縛 フレーム毎に呼ばれる
Returns¶
void
See¶
[[Primitive.draw]]
bindTexture2D()¶
bindTexture2D(
unit,texture):void
テクスチャをバインド
注意: 現行テクスチャ (Active Texture) も変更される。
Parameters¶
| Parameter | Type | Description |
|---|---|---|
unit |
number |
テクスチャユニット番号 |
texture |
WebGLTexture |
テクスチャオブジェクト |
Returns¶
void
bindTexture3D()¶
bindTexture3D(
unit,texture):void
3Dテクスチャをバインド
注意: 現行テクスチャ (Active Texture) も変更される。
Parameters¶
| Parameter | Type | Description |
|---|---|---|
unit |
number |
テクスチャユニット番号 |
texture |
WebGLTexture |
テクスチャオブジェクト |
Returns¶
void
bindVertexAttribs()¶
bindVertexAttribs(
mesh_attribs):void
頂点属性データを束縛
Parameters¶
| Parameter | Type | Description |
|---|---|---|
mesh_attribs |
AttributeBindInfoDict |
メッシュ側の頂点属性データ |
Returns¶
void
dispose()¶
dispose():
void
リソースを破棄
Returns¶
void
disposeShader()¶
protecteddisposeShader(key):void
シェーダを破棄する
Parameters¶
| Parameter | Type | Description |
|---|---|---|
key |
string |
キー |
Returns¶
void
isShaderAvailable()¶
protectedisShaderAvailable(key):boolean
指定されたシェーダが定義済みであるかを返却します。
Parameters¶
| Parameter | Type | Description |
|---|---|---|
key |
string |
キー |
Returns¶
boolean
シェーダが定義されている場合に true
registerShader()¶
protectedregisterShader(key,vs_code,fs_code):void
シェーダを登録する
Parameters¶
| Parameter | Type | Description |
|---|---|---|
key |
string |
キー |
vs_code |
string |
頂点シェーダのソースコード |
fs_code |
string |
フラグメントシェーダのソースコード |
Returns¶
void
registerUniform()¶
registerUniform(
option):void
Uniformパラメータを登録します
Parameters¶
| Parameter | Type |
|---|---|
option |
UniformOption |
Returns¶
void
registerVertexAttribute()¶
registerVertexAttribute(
option):void
Parameters¶
| Parameter | Type |
|---|---|
option |
VertexAttributeOption |
Returns¶
void
setBoolean()¶
setBoolean(
name,value):void
真偽値パラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
boolean |
真偽値 |
Returns¶
void
setFloat()¶
setFloat(
name,value):void
float パラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
number |
float 値 |
Returns¶
void
setIVector3()¶
setIVector3(
name,value):void
整数ベクトルパラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
Int32List |
整数配列 |
Returns¶
void
setIVector3Array()¶
setIVector3Array(
name,value):void
整数ベクトルパラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
number[] | Int32Array<ArrayBufferLike> |
整数配列 |
Returns¶
void
setInteger()¶
setInteger(
name,value):void
整数パラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
number |
整数値 |
Returns¶
void
setIntegerArray()¶
setIntegerArray(
name,value):void
整数パラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
number[] | Int32Array<ArrayBufferLike> |
整数値 |
Returns¶
void
setMatrix()¶
setMatrix(
name,value):void
行列パラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
Matrix |
行列 |
Returns¶
void
setUniformValue()¶
setUniformValue(
name,value):void
Uniformパラメータの値を更新します
Parameters¶
| Parameter | Type |
|---|---|
name |
string |
value |
any |
Returns¶
void
setVector2()¶
setVector2(
name,value):void
2次ベクトルパラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
Vector2 |
2次ベクトル |
Returns¶
void
setVector2Array()¶
setVector2Array(
name,value):void
2次ベクトルパラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
number[] | Float32Array<ArrayBufferLike> |
2次ベクトル |
Returns¶
void
setVector3()¶
setVector3(
name,value):void
3次ベクトルパラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
Vector3 |
3次ベクトル |
Returns¶
void
setVector4()¶
setVector4(
name,value):void
4次ベクトルパラメータを設定
Parameters¶
| Parameter | Type | Description |
|---|---|---|
name |
string |
変数名 |
value |
Vector4 |
4次ベクトル |
Returns¶
void
updateMaterial()¶
updateMaterial(
stage,primitive):void
マテリアルを更新 フレーム毎に呼ばれる
Parameters¶
| Parameter | Type |
|---|---|
stage |
RenderStage |
primitive |
Primitive |
Returns¶
void
See¶
[[Primitive.draw]]
useShader()¶
protecteduseShader(key):void
シェーダを切り替える。 事前にシェーダを登録しておく([[Material.registerShader]] )。
Parameters¶
| Parameter | Type | Description |
|---|---|---|
key |
string |
キー |
Returns¶
void