Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Material

マテリアル

Hierarchy

Index

Constructors

  • new Material(glenv: GLEnv, vs_code: string, fs_code: string): Material
  • Parameters

    • glenv: GLEnv

      WebGL 環境

    • vs_code: string

      頂点シェーダのソースコード

    • fs_code: string

      フラグメントシェーダのソースコード

    Returns Material

Properties

_program: WebGLProgram
_uniform_location: UniformLocationDict
_vertex_attribs: VertexAttributeEntry[]
glenv: GLEnv

Methods

  • _create_uniform_location(): UniformLocationDict
  • _create_vertex_attribs(): VertexAttributeEntry[]
  • _link_shaders(vs: WebGLShader, fs: WebGLShader): WebGLProgram
  • シェーダをリンク

    throws

    {Error} リンクエラー

    Parameters

    • vs: WebGLShader

      頂点シェーダ

    • fs: WebGLShader

      フラグメントシェーダ

    Returns WebGLProgram

    リンクされたプログラムオブジェクト

  • _setRenderId(id: number): void
  • bindProgram(): void
  • bindTexture2D(unit: number, texture: WebGLTexture): void
  • テクスチャをバインド

    注意: 現行テクスチャ (Active Texture) も変更される。

    Parameters

    • unit: number

      テクスチャユニット番号

    • texture: WebGLTexture

      テクスチャオブジェクト

    Returns void

  • bindVertexAttribs(mesh_attribs: AttributeBindInfoDict): void
  • 頂点属性データを束縛

    Parameters

    • mesh_attribs: AttributeBindInfoDict

      メッシュ側の頂点属性データ

    Returns void

  • dispose(): void
  • setBoolean(name: string, value: boolean): void
  • setFloat(name: string, value: number): void
  • setIVector3(name: string, value: Int32List): void
  • setIVector3Array(name: string, value: number[] | Int32Array): void
  • 整数ベクトルパラメータを設定

    Parameters

    • name: string

      変数名

    • value: number[] | Int32Array

      整数配列

    Returns void

  • setInteger(name: string, value: number): void
  • setIntegerArray(name: string, value: number[] | Int32Array): void
  • setMatrix(name: string, value: Matrix): void
  • setVector2(name: string, value: Vector2): void
  • setVector2Array(name: string, value: Float32Array | number[]): void
  • 2次ベクトルパラメータを設定

    Parameters

    • name: string

      変数名

    • value: Float32Array | number[]

      2次ベクトル

    Returns void

  • setVector3(name: string, value: Vector3): void
  • setVector4(name: string, value: Vector4): void