Options
All
  • Public
  • Public/Protected
  • All
Menu

Class EntityMaterial Abstract

エンティティ・マテリアル

このクラスは、[[mapray.RenderStage.getRenderTarget()]] の値により異なる動作をする。

  • [[RenderStage.RenderTarget.SCENE]] の場合は、通常通り描画を行う。 setParameters は、描画に必要な全てのパラメータを設定します。
  • [[RenderStage.RenderTarget.RID]] の場合は、 setParameters は、RID描画に必要なパラメータのみ設定します(一般にテクスチャや色情報は除外される)。 このクラスでの実装は、setParameters により、u_rid が設定されるようになっています。

Hierarchy

Index

Constructors

  • new EntityMaterial(glenv: GLEnv, vs_code: string, fs_code: string): EntityMaterial

Properties

glenv: GLEnv
_obj_to_clip: Matrix = ...
_obj_to_view: Matrix = ...

Methods

  • _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
  • dispose(): void
  • isTranslucent(stage: RenderStage, primitive: Primitive): boolean
  • 背景との混合が必要か?

    defaultvalue

    false

    virtual

    Parameters

    • stage: RenderStage

      レンダリングステージ

    • primitive: Primitive

      プリミティブ

    Returns boolean

    背景との混合が必要なとき true, それ以外のとき false

  • 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
  • setInteger(name: string, value: number): void
  • setIntegerArray(name: string, value: number[] | Int32Array): void
  • setMatrix(name: string, value: Matrix): void
  • setObjToClip(stage: RenderStage, primitive: Primitive): void
  • setObjToView(stage: RenderStage, primitive: Primitive): void
  • setParameters(stage: RenderStage, primitive: Primitive): void
  • マテリアルパラメータを設定

    事前に material.bindProgram() すること。

    virtual

    Parameters

    • stage: RenderStage

      レンダリングステージ

    • primitive: Primitive

      プリミティブ

    Returns void

  • setVector2(name: string, value: Vector2): void
  • setVector2Array(name: string, value: Float32Array | number[]): void
  • setVector3(name: string, value: Vector3): void
  • setVector4(name: string, value: Vector4): void