年2月)HTML5依旧处于草案阶段。

HTML5支持网页端的多媒体功能和画布功能,追加了非常多全新的更合理的Tag标签。各个浏览器也都在逐渐的完好这些新的特性。

Canvas对象表示一个 HTML画布元素。如它的名字一样,它定义了一个API支持脚本化client来绘制图形或是图片,能够通过javascript来操作这些API。当然WebGL也是利用canvas来实现的。只是在此之前,先来简单的说明一下canvas。

年底,HTML5将成为一种完整的成品标准。

canvas标签的基础知识

canvas和img等标签一样。是一个能够自由制定大小的矩形区域。

通过javascript能够对矩形区域进行操作,能够自由的绘制图形,文字等。并且,能够加入影子,进行涂色,另外还能够对绘制的图形进行旋转等操作。并且,Web上经常使用的gif,jpg,png等格式的图片,也能够直接进行绘制。

可是,能够管理操作动画等处理的对象和方法是没有的。也就是说,为了制作动态的应用,一般会使用javascript进行循环处理。

在渲染速度上。因为javascript近几年的执行速度在不断的飞速上升,所以。假设不是特别复杂的应用的话。达到60FPS还是不成问题的。以下是我之前用canvas做的一个小游戏,如今把它贴出来。*已经上传到了jsdo.it。

没有使用WebGL。仅仅是利用了canvas一般的API。已经能够达到这样的程度了。尽管说实际执行的结果依赖于执行的环境。可是还是相当不错的吧。

WebGL和canvas

能够看到,使用canvas已经能够比較自由的绘制各种图形了。那么。为什么还要用WebGL来做处理呢?

实际上,刚才贴出来的jsdo.it上的那个小游戏,是利用了canvas的2d的context功能。

context是一个封装了画图处理的各种API的对象,这个对象中包括了全部的画图函数和属性,你能够把它想象成一个司令塔。一切的设定和处理命令都是由它发出的。

2d的context能够进行图形,文字以及图片数据的描画,可是也仅限于此,像它的名字一样,仅仅能用于2d空间的画图。

和这个相对的,WebGL是三维,能够描画3D图形,差别于之前的2dcontext,它叫做webglcontext。

webglcontext对象和2dcontext对象 一样,提供了各种各样的属性和方法,通过webglcontext。能够实现利用WebGL来描画图形。

总结

关于context,在我写这篇文章的时候,仅仅提供了2d和webgl两种定义。

可是webglcontext临时叫做experimental-webgl。以后,还有可能会出现新的类型,这个如今就不考虑了。

本站点的全部内容,都是使用WebGL来说明的,而2dcontext和今后出现的新的context,并没有打算去研究。(当然,也可能会出现一些2dcontext的内容......)

下次,開始介绍3d画图的基础知识。

转载请注明:转自lufy_legend的博客http://blog.csdn.net/lufy_legend

[WebGL入门]二,開始WebGL之前,先了解一下canvas的更多相关文章

  1. [WebGL入门]二十五,点光源的光照

    注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明.我会加上[lufy:].另外,鄙人webgl研究还不够深入,一些专业词语.假设翻译有误,欢迎大家指 ...

  2. [WebGL入门]二十一,从平行光源发出的光

    注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明.我会加上[lufy:],另外,鄙人webgl研究还不够深入,一些专业词语.假设翻译有误,欢迎大家指 ...

  3. [WebGL入门]二十三,反射光的光照效果

    注:文章译自http://wgld.org/,原作者杉本雅広(doxas).文章中假设有我的额外说明.我会加上[lufy:],另外,鄙人webgl研究还不够深入.一些专业词语.假设翻译有误.欢迎大家指 ...

  4. [WebGL入门]二十四,补色着色

    注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明,我会加上[lufy:],另外,鄙人webgl研究还不够深入,一些专业词语,假设翻译有误,欢迎大家指 ...

  5. WebGL入门教程(一)-初识webgl

    一.WebGL和传统网页的区别: 普通网页组成成分:HTML.JavaScript: WebGL网页组成成分:HTML5.JavaScript和GLSL ES(着色器语言 OpenGL ES): 二. ...

  6. WebGL入门教程(二)-webgl绘制三角形

    前面已经介绍过了webgl,WebGL入门教程(一)-初识webgl(http://www.cnblogs.com/bsman/p/6128447.html),也知道了如何绘制一个点,接下来就用web ...

  7. WebGL自学教程——WebGL演示样例:開始

    最终開始WebGL的演示样例了,...... 開始 使用WebGL的步骤,非常easy: 1. 获得WebGL的渲染环境(也叫渲染上下文). 2. 发挥你的想象力,利用<WebGL參考手冊> ...

  8. [WebGL入门]四,渲染准备

    注意:文章翻译http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明,我会加上[lufy:].另外.鄙人webgl研究还不够深入,一些专业词语,假设翻译有误,欢迎大家 ...

  9. WebGL入门教程(五)-webgl纹理

    前面文章: WebGL入门教程(一)-初识webgl WebGL入门教程(二)-webgl绘制三角形 WebGL入门教程(三)-webgl动画 WebGL入门教程(四)-webgl颜色 这里就需要用到 ...

随机推荐

  1. bzoj2324

    出题人真 口袋迷 很容易发现这是一道费用流的题目 很显然这个问题有两个难点: 保证走到某个点时之前序号的点都被走过 保证每个点都走 对于1,我们换个说法,一个人走到该点时经过的点的序号都小于该点--- ...

  2. bzoj1934 bzoj2768

    最小割的经典模型,体现出最小割的基本定义,把两个集合划分的最小代价 把一开始同意的人连源点,不同意的连汇点,有关系的人之间连边,流量都为1 不难发现,割两点(人)间的边就相当于朋友之间发生冲突 割到连 ...

  3. 理解java reference

    Java世界泰山北斗级大作<Thinking In Java>切入Java就提出“Everything is Object”.在Java这个充满Object的世界中,reference是一 ...

  4. 【转】tomcat下jndi的三种配置方式

    jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API.命名服务将名称和对象联系起来,使得我们可以用 ...

  5. CF GYM 100703A Tea-drinking

    题意:龙要制作n个茶,每个茶的配方是一个字符串,两个字符串之间有一个差值,这个差值为两个字符串每个对应字母之间差的绝对值的最大值,求制作所有茶时获得的所有差值中的最大值. 解法:克鲁斯卡尔.将茶的配方 ...

  6. Selenium-Python学习——通过XPath定位元素

    用Xpath定位元素的方法总是记不住,经常要翻出各种文档链接参考,干脆把需要用到的内容整到这个笔记中方便查找. Xpath是在XML文档中定位节点的语言.使用 XPath 的主要原因之一是当想要查找的 ...

  7. 【暑假】[实用数据结构]前缀树 Trie

    前缀树Trie Trie可理解为一个能够快速插入与查询的集合,无论是插入还是查询所需时间都为O(m) 模板如下: +; ; struct Trie{ int ch[maxnode][sigma_siz ...

  8. 50道经典的JAVA编程题 (1-5)

    后天java考试,现在闲着也是闲着,来做做java题吧. 前不久在网上看见了50道java算法编程题,感觉还不错,记得大一学C语言的时候做过一些,现在用java来回顾下吧,也算应付考试吧. 代码要是有 ...

  9. mysql的group_concat的用法

    1.语法:group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) eg. SELECT ID, GROUP ...

  10. 洛谷 P1273 有线电视网

    2016-05-31 13:25:45 题目链接: 洛谷 P1273 有线电视网 题目大意: 在一棵给定的带权树上取尽量多的叶子节点,使得sigma(val[选择的叶子节点])-sigma(cost[ ...