有关WebGL的基本面试(更新中)

71 阅读1分钟

webgl的工作流程:

  1. 创建渲染上下文(webGLRenderingCotext): 通过调用webGL的getExtension方法获取上下文对象,该对象包含了webgl的所有api和方法
  2. 创建缓冲区(Buffer): 使用webgl的缓冲区api创建缓冲区对象我,用于存储顶点数据,索引数据
  3. 创建纹理(Texture): 使用webgl的纹理api创建纹理对象,用于存储纹理数据
  4. 创建着色器(Shader): 使用webgl的着色器api创建着色器对象,用于编写GLSL(着色器语言,主要用于开发在GPU中执行的着色器程序)
  5. 创建程序

webgl的性能优化:

  1. 减少webgl状态切换:webgl渲染需要进行一系列的状态切换,如绑定纹理、绑定着色器程序,可以通过合并通过多个渲染操作
  2. 减少webgl调用次数:webgl中的api调用也会影响性能,在进行大量渲染操作时,可以尝试使用批处理技术,将多个渲染操作合并成一个,减少api调用次数
  3. 使用webgl扩展:如使用webgl-draw-buffers扩展在webgl中实现多渲染目标,提高渲染效率