模板元编程:C++的黑魔法

关于模板与泛型 如果你曾经使用过template,那你一定对泛型编程有过了解,你可能在java和c#中使用过泛型代码,但是,需要注意的是,C+

新的开始

hexo的博客也搞了不久了,可惜换电脑的时候不小心丢失了数据,想了一些办法只恢复了几篇文章,另外还是觉得hexo的博客不够灵活。可定制化也不

title: WebGL 着色器编程实践(一)简介 date: 2015-12-28 tags: WebGL简介 WebGL是一项利用JavaScript API呈现3D电脑图形的技术,有别于过往需加装浏览器插件,通过WebGL的技术,只需要编写网页代码即可实现3D图像的展示。 是HTML5特性之一 是硬件加速的 基于 OpenGL ES 2.0 的 javascript binding 支持情况: 桌面浏览器 Mozilla Firefox─从4.0开始支持默认激活。 Google Chrome─从9.0开始支持默认激活。 Internet Explorer─从11开始支持[2]。较旧的版本可以安装第三方插件来支持,如IEWebGL.[3] Safari─在Mac OS X Snow Leopard上的Safari 5.1、OS X Mountain Lion, Mac OS X Lion上的Safari6.0或较新版本开始支持WebGL,默认情况下禁用。 Opera(需自行激活) 移动浏览器: Firefox OS Firefox for mobile Google Chrome Opera Mobile Tizen Ubuntu Touch WebOS iOS 着色器 着色器是跑在GPU上的小程序,了解着色器(shader)之前,先要了解现代显卡的渲染流程 渲染流程: 顶点转换 model view projection 几何体组装 光栅化 片元处理 深度测试,混合操作,雾,剪切测试和模板测试 输出到帧缓冲区 固定功能管线: 可配置,只能给固定的几个接口传递参数