gl.bufferData 中 type 属性

来源:3-1 使用缓冲区对象 - 绘制多个点

leslie1996

2023-08-01

老师您好,请问 bufferData 方法中,type 属性的取值

gl.STATIC_DRAW 是写入一次,绘制多次

gl.STREAM_DRAW 是写入一次,绘制若干次

这两个值有什么区别,绘制多次和若干次,感觉描述上很相近

写回答

1回答

yancy

2023-08-16

主要在数据上的差别,

gl.STATIC_DRAW 在绘制的时候数据不会或几乎不会改变。

gl.STREAM_DRAW 数据每次绘制时都会改变。

比如:绘制三角形时候的位置数据不会改变,每次渲染调用时都保持原样,所以它使用的是gl.STATIC_DRAW。如果一个缓冲中的数据将频繁被改变,那么使用的类型就是其他两种

0
0

WebGL+Three.js 入门与实战,系统学习 Web3D 技术

前端的技术蓝海,涨薪好选择

1081 学习 · 294 问题

查看课程