1. 前言
随着Web引入OpenGL(WebGL),拓展了Web在可视化领域运用,尤其是促进3D领域的技术在Web前端的发展。而ThreeJS是基于WebGL做的上层封装,为开发者屏蔽空间几何的计算细节。当然为了学好WebGL/ThreeJS,计算机图形学以及空间几何还是需要恶补一下。
本篇暂未开始写学习笔记,先为大家推荐一些入门资料。
2. 入门资料
2.1 WebGL资料
- 《WebGL编程指南:基于WebGL的交互式图形编程》
- 《交互式计算机图形学:基于WebGL的自顶向下方法_第七版》
- W3Cschool的“WebGL 中文版-w3cschool”
2.2 ThreeJS资料
- Three.js中文网 (webgl3d.cn)
- Three.js – JavaScript 3D Library (threejs.org)
3. 结尾
不建议刚入门前端开发的同学就学WebGL/ThreeJS,Web前端本身已经有庞大的知识体系:HTML、HTML5(canvas2D、svg)、CSS、CSS3(变换、过滤、动画)、JavaScript(ES5, ES6)、DOM API、BOM API、TypeScript、React、Vue、Antd、Element Plus、NodeJS、Webpack(loaders和plugins)、Vite、Babel、PostCSS、npm、yarn、pm2等等,建议先打牢基础,再往外拓展,如WebAssembly、WebGL。有了WebAssembly,Web应用的开发语言可以拓展到C/C++、Rust、Go、Swift、Ruby,既而可以拓展到视音频解码、3D渲染、3D建模等等。
换句话说,如果实际项目未涉及3D相关的,可以延后学习WebGL/ThreeJS。