第一章 WebGL 零基础快速入门

优质
小牛编辑
135浏览
2023-12-01

本章节是零基础入门课程,不需要有计算机图形学基础,只需要有点编程基础就可以,本章节的内容不像大多数教科书按特定知识模块区划分知识点,本章节尝试从整体开始介绍,先让你有一个印象,学习完本章节,你基本会对WebGL的大致渲染流程有基本的了解。

直接学习本章节,要比直接去阅读计算机图形学要好得多,直接阅读计算机图形学可能会感觉比较枯燥,没有方向感,甚至学习了很长时间,还不知道在讲解什么。

本章节,每一节课都会提供一个,麻雀虽小,五脏俱全的小案例,案例源码基本行行注释。

渲染管线流程图

本章节内容是整个WebGL教程中最重要的一部分,也是内容最多的一个章节,学习本章节你只要对下面的一张流程图建立整体的概念,即便每个功能细节不是很清楚,只要有了流程意识,对WebGL的学习算是成功60%了,剩下的就是进阶深入学习计算机图形学的各种算法。

学习本章的任何一小节可都可以把该流程图翻出来查看预览。

学习建议

  • 初学者,前几十节入门课程一定要按照顺序学习,不要跳过
  • 学习前面入门课程,可以不求甚解,有个整体印象即可
  • 学习前面入门课程,可以不用动手写代码,但是一定要动手改代码,做到复制、粘贴、替换就可以 后面关于WebGL硬件、渲染管线、着色器语言、数学、光照模型等章节根据需要可以随时阅读,对照前面的入门案例与后面的系统总结学习更好
  • 明白自己欠缺哪些知识,有选择地学习本教程
  • 本教程入门部分以具体案例作为驱动学习,面向工程编程,不面向科学编程

基础

学习本章课程最好有一定的前端基础HTML/CSS/JavaScript,如果你没有相关基础,可以学习前端快速入门教程。

学习之前先看看自己懂什么知识,不懂什么知识,课程尽 量在新知识学习时照顾不同专业和领域的人,但是个人最起码有基本的编程能力。对于编程基础非常好只是恰好之前没接触WebGL的相关知识,建议可以利用本教程的源代码边修改边测试边学习,没必要 上来就先把各个模块的知识补充完再来学习。如果你擅长java、Python等语言,学习Javascript语言也不是什么难事,你对C语言非常了解,与C一样是强类型的着色器语言GLSL ES也很好理解。对于经常用 C++和OpenGL API开发基于桌面应用的工程师来说,学习WebGL只是迁移一个生态系统,切换到了互联网生态圈,图形学本质的东西没有变。