WebGL学习之路

  最近开始学习WebGL,这是一个阶段小结,发上来和大家交流一下。有些地方用英文,因为有些词不好翻译。

 

  WebGL对于我来说相对陌生,相信很多JAVA开发者也是,陌生会产生两样东西:好奇和恐惧。下面便来战胜恐惧满足好奇,说得有些凌乱,看不明白就请直接跳过。

 

  谈一些基本概念

  What is WebGL? 3D in the browser.

  上面的话可谓言简意赅,WebGL是OpenGL的网页实现。OpenGL是行业最广泛接受的 2D/3D 图形 API。它与DirectX有着纠结关系,以及OpenGL ES、WebGL等衍生版本。

  GLSL, OpenGL Shading Language, tell what the things to draw look like. 原生的WebGL开发库需要使用GLSL和JS配合使用。

  camera, such as PerspectiveCamera, Orthographic Camera. 翻译为摄像机比较恰当,跟现实中的摄像机类似,它决定可以看到的视角,宽度等。

  texture,纹理,可以使颜色或图片等。

  blend,调色,配置不同深度物体之间的关系,可以实现透明效果。

  render,渲染,可以用来将一个3D的投影加载到texture上,就想在电视中看电视的效果。

  A mesh is an object that takes a geometry, and applies a material to it.

 

 怎么在本地跑起WebGL例子?

 Chrome是对WebGL支持最好的,但在本地使用图片texture的时候,需要开启本地读取限制。在Chrome的快捷方式中加入下面参数,linux上也是这样。开启webGL

 

 --enable-webgl --ignore-gpu-blacklist --allow-file-access-from-files

 

 我的chrome版本为21.0.1180.89 m,firefox版本为14.0.1。chrome经过以上配置就不会有什么问题,firefox不需要配置就可以。可以试试我上传的练习的例子。

 

一些学习资源

http://learningwebgl.com/blog/ 16 excellent lessons. 

http://www.hiwebgl.com/ chinese version and some thing about tree.js. 

 

three.js

  tree.js is a famous WebGL lib on gitHub, which can draw with WebGL, canvas or SVG. tree.js come with support for load a few different standard file type, which is great if you are outputing models from Blender, Maya, Cinenca4D on anything else.

  http://mrdoob.github.com/three.js/

 

 

你可能感兴趣的:(WebGL,threejs)