GL2 类 API 文档 
需丰富
本文档由 DeepSeek R1 模型生成并微调。
继承关系 
属性说明 
| 属性名 | 类型 | 默认值 | 说明 | 
|---|---|---|---|
support | boolean(静态) | 检测 WebGL2 支持性 | 标识当前环境是否支持 WebGL2 | 
canvas | HTMLCanvasElement | - | 绑定的 WebGL2 画布元素 | 
gl | WebGL2RenderingContext | - | WebGL2 渲染上下文 | 
UNIFORM_1f ~ UNIFORM_4uiv | UniformType 枚举 | 对应枚举值 | WebGL uniform 类型常量(共 25 种) | 
U_MATRIX_2x2 ~ U_MATRIX_4x4 | UniformMatrix 枚举 | 对应枚举值 | 矩阵类型 uniform 常量(9 种) | 
ATTRIB_1f ~ ATTRIB_I4uiv | AttribType 枚举 | 对应枚举值 | 顶点属性类型常量(12 种) | 
MAX_TEXTURE_COUNT | number | 0 | 最大纹理支持数量(实际值由 WebGL 上下文决定) | 
构造方法 
constructor 
参数
type: 渲染模式(absolute绝对定位 /static跟随摄像机)
行为
- 初始化 WebGL2 上下文
 - 自动检测 WebGL2 支持性(通过静态属性 
support) - 设置默认渲染模式
 
方法说明 
createProgram 
typescript
function createProgram<T extends GL2Program>(
    Program: ProgramConstructor<T>,
    vs?: string,
    fs?: string
): T;描述
 创建 WebGL 着色器程序
参数
Program: 着色器程序类(需继承GL2Program)vs: 自定义顶点着色器代码(可选)fs: 自定义片元着色器代码(可选)
示例
typescript
class MyProgram extends GL2Program {}
const program = gl2.createProgram(MyProgram);useProgram 
typescript
function useProgram(program: GL2Program): void;描述
 切换当前使用的着色器程序
示例
typescript
gl2.useProgram(shaderProgram);framebuffer 
typescript
function framebuffer(
    name: string,
    texture: IShaderTexture2D,
    clear?: boolean
): void;描述
 将渲染结果输出到帧缓冲纹理
参数
name: 帧缓冲名称texture: 目标纹理对象clear: 是否清空画布
drawScene(抽象方法) 
typescript
function drawScene(
    canvas: MotaOffscreenCanvas2D,
    gl: WebGL2RenderingContext,
    program: GL2Program,
    transform: Transform
): void;描述
 抽象渲染方法,子类必须实现具体绘制逻辑
静态方法说明 
GL2.support 
typescript
static readonly support: boolean;描述
 静态只读属性,检测 WebGL2 支持性
示例
typescript
if (GL2.support) {
    // 初始化 WebGL2 功能
}总使用示例 
暂时没有。