关于webgl和three.js
有一篇文章说three.js相对于WebGL就像jquery相对于原生浏览器API,这一点我不能苟同,为什么呢,因为浏览器开放的js API,就是给web开发者使用的,没有那么难,很多场景不用jquery来开发也不影响开发速度。就像很多基于php开发的基于后端渲染的页面,不用vue,react,ng,而使用jq开发反而更容易一样。
然后WebGL不是这样的,要求使用者熟悉GLSL,熟悉一门图形渲染语言,外加矩阵,坐标转换……,除了api,还有很多数学知识和图形学原理。我认为three.js和WebGL的关系是汇编和C语言的关系。
既然是这层关系,我不建议初学者上来就来啃晦涩难懂的shader,这不符合以交付为中心原则。先学习three.js做出产品,然后根据需要来优化。