0
点赞
收藏
分享

微信扫一扫

【《WebGL编程指南》读书笔记-WebGL概述】

小云晓云 2022-04-07 阅读 62
html5

第一章 WebGL概述

WebGL,是一项用来在网页上绘制和渲染复杂三维图形3D图形),并允许用户与之进行交互的技术。在其官网中的介绍如下:

纵观上文,关于WebGL有几个重要的信息:

  • 表层基于HTML5标准,通过Canvas元素公开
  • 底层基于OpenGL,与OpenGL ES规范非常接近
  • 暂时采用JavaScript在web端编辑
  • 同时,WebGL是内嵌在浏览器中的(不是基于操作系统的),所以它具有很好的跨平台能力

为了判断浏览器是否支持WebGL,可以登录网站https://get.webgl.org/,如果支持,会出现以下内容:

当然,JavaScript也有方法测试浏览器是否支持WebGL,方法在网上有很多,在此不再总结。

WebGL的起源

在个人计算机上使用最广泛的两种三维图形渲染技术是Direct3D和OpenGL。

  • Direct3D是微软DirectX技术的一部分,是一套由微软控制的编程接口(API),主要用在Windows平台;
  • OpenGL全称Open Graphics Library,是一套开源的三维图形开发标准,在多种平台上都有广泛的应用,也是WebGL的重要基石。

OpenGL最初由SGI(Silicon Graphics Inc)开发,并在1992年发布为开源标准。多年以来,OpenGL经历了数个版本,部分版本更新情况及其与WebGL的关系如下图所示:

在这里插入图片描述
从OpenGL2.0开始,这一三维图形技术支持了一个非常重要的特性:可编程着色器方法(programmable shader functions),这一方法被OpenGL ES 2.0继承并成为WebGL 1.0标准的核心部分。

着色器方法,或称着色器,使用一种类似于C的编程语言实现了精美的视觉效果。编写着色器的语言又称为着色器语言(shading language),OpenGL ES 2.0基于OpenGL着色器语言(GLSL),因此后者又被称为OpenGL ES着色器语言(GLSL ES)。WebGL基于OpenGL ES 2.0,也使用GLSL ES编写着色器。

OpenGL规范的更新和标准化由Khronos组织(一个非盈利的行业协会,专注于制定、发布、推广多种开放标准)负责。2009年,Khronos建立了WebGL工作小组,开始基于OpenGL ES着手建立WebGL规范,并于2011年发布了WebGL规范的第一个版本。

WebGL程序的结构

在网页引入WebGL之后,除了原本的HTML(超文本标记语言)和JavaScript语言之外,还包含了着色器语言GLSL ES。下图展示了传统动态网页和使用WebGL的网页的软件结构:

在这里插入图片描述

因为通常GLSL ES是(以字符串的形式)在JavaScript中编写的,所以,虽然WebGL网页更加复杂,在编写时也只用到了HTML文件和JavaScript文件。

举报

相关推荐

0 条评论