跳到主要内容
版本:v10.0

M3D / M3D / Render / GLShaderProgram

Class: GLShaderProgram

M3D.Render.GLShaderProgram

Memberof

M3D.Render

Description

着色器程序

Author

ss

Date

2022-1-17

Version

1.0

Copyright

All Rights Reserved. Copyright (C) 2022 HOTEAMSOFT, Ltd

Hierarchy

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new GLShaderProgram(gl): GLShaderProgram

Parameters

NameTypeDescription
glRenderContext上下文

Returns

GLShaderProgram

Description

构造函数

Inherited from

ShaderProgram.constructor

Properties

id

id: number

Inherited from

ShaderProgram.id


shaderAttributeMap

shaderAttributeMap: any


shaderUniformMap

shaderUniformMap: any


count

Static count: number

Inherited from

ShaderProgram.count

Methods

addShader

addShader(shaderObj): boolean

link ??shader program ????shader

Parameters

NameType
shaderObjGLShader

Returns

boolean

Overrides

ShaderProgram.addShader


bindAttributeLocation

bindAttributeLocation(name, location): void

Parameters

NameType
namestring
locationnumber

Returns

void

Brief

绑定attribute在shader中的位置


deleteShaderProgram

deleteShaderProgram(): void

删除shader program

Returns

void

Overrides

ShaderProgram.deleteShaderProgram


disableAttributeArray

disableAttributeArray(location): void

Parameters

NameType
locationnumber

Returns

void


disableAttributeArrayALL

disableAttributeArrayALL(): any

Returns

any


enableAttributeArray

enableAttributeArray(location): void

Parameters

NameType
locationnumber

Returns

void

Brief

启用shader属性


enableAttributeArrayALL

enableAttributeArrayALL(): any

Returns

any


getAttributeLocation

getAttributeLocation(name): number

Parameters

NameType
namestring

Returns

number

Brief

获取attribute在shader中的位置


getEvents

getEvents(): M3DEvent[]

Returns

M3DEvent[]

Description

获得事件列表

Inherited from

ShaderProgram.getEvents


getId

getId(): number

Returns

number

Description

获取id

Inherited from

ShaderProgram.getId


getName

getName(): string

Returns

string

Description

获取着色器名称

Overrides

ShaderProgram.getName


getRenderContext

getRenderContext(): RenderContext

Returns

RenderContext

渲染上下文

Description

获取渲染上下文

Inherited from

ShaderProgram.getRenderContext


getShaderAttributeParameter

getShaderAttributeParameter(name): ShaderParameter

Parameters

NameType
namestring

Returns

ShaderParameter

Description

获取存储的attribute对应的ShaderParameter


getShaderProgram

getShaderProgram(): any

Returns

any

Description

获取着色器

Inherited from

ShaderProgram.getShaderProgram


getShaderUniformParameter

getShaderUniformParameter(name): ShaderParameter

Parameters

NameType
namestring

Returns

ShaderParameter

Description

获取存储的uniform对应的ShaderParameter


getUniformLocation

getUniformLocation(name): WebGLUniformLocation

Parameters

NameType
namestring

Returns

WebGLUniformLocation

Brief

获取uniform在shader中的位置


linkProgram

linkProgram(): boolean

?????????????

Returns

boolean


registerEvent

registerEvent(event): void

Parameters

NameTypeDescription
eventM3DEventM3D事件

Returns

void

Description

注册事件

Inherited from

ShaderProgram.registerEvent


releaseShaderProgram

releaseShaderProgram(): void

释放shader program

Returns

void

Overrides

ShaderProgram.releaseShaderProgram


removeEvent

removeEvent(): void

Returns

void

Description

删除事件

Inherited from

ShaderProgram.removeEvent


setId

setId(v): void

Parameters

NameTypeDescription
vnumberShapeId

Returns

void

Description

设置id

Inherited from

ShaderProgram.setId


setName

setName(name): void

Parameters

NameType
namestring

Returns

void

Description

设置着色器名称

Overrides

ShaderProgram.setName


setRenderContext

setRenderContext(v): void

Parameters

NameTypeDescription
vRenderContext渲染上下文

Returns

void

Description

设置GL

Inherited from

ShaderProgram.setRenderContext


setUniformValue

setUniformValue(paraName, v): void

设置Uniform值

Parameters

NameTypeDescription
paraNamestringshader中得参数名
vFloat32Array-

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, v): void

Parameters

NameType
paraNamestring
vInt32Array

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, v): void

Parameters

NameType
paraNamestring
vnumber

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, v): void

Parameters

NameType
paraNamestring
vboolean

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, count, v): void

Parameters

NameType
paraNamestring
countnumber
vnumber

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, count, v): void

Parameters

NameType
paraNamestring
countnumber
vFloat32Array

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, count, v): void

Parameters

NameType
paraNamestring
countnumber
vInt32Array

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, count, transpose, v): void

Parameters

NameType
paraNamestring
countnumber
transposeboolean
vFloat32Array

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, count, dimension, vec3): void

Parameters

NameType
paraNamestring
countnumber
dimensionnumber
vec3Vector3[]

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, count, dimension, vec4): void

Parameters

NameType
paraNamestring
countnumber
dimensionnumber
vec4Vector4[]

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, color): void

Parameters

NameType
paraNamestring
colorColor

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, vec2): void

Parameters

NameType
paraNamestring
vec2Vector2

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, vec3): void

Parameters

NameType
paraNamestring
vec3Vector3

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, vec4): void

Parameters

NameType
paraNamestring
vec4Vector4

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, mat3): void

Parameters

NameType
paraNamestring
mat3Matrix3

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, mat4): void

Parameters

NameType
paraNamestring
mat4Matrix4

Returns

void

Overrides

ShaderProgram.setUniformValue

setUniformValue(paraName, mat3x4): void

Parameters

NameType
paraNamestring
mat3x4Matrix3x4

Returns

void

Overrides

ShaderProgram.setUniformValue


setVertexAttributePointer

setVertexAttributePointer(location, tupleSize, type, stride, offset): void

Parameters

NameType
locationnumber
tupleSizenumber
typenumber
stridenumber
offsetnumber

Returns

void

Brief


useProgram

useProgram(): void

使用着色器程序

Returns

void

Description

将着色器程序设置为当前着色器程序

Overrides

ShaderProgram.useProgram