介绍
你来到这里可能是想要学习计算机图形学的内部工作原理,亲自做那些酷孩子们做的东西。自己做事情是非常有趣和足智多谋的,从中你也可以更好的理解图形学编程。然而,在开始你的旅程之前你需要注意几点注意事项。
先决条件
由于OpenGL是一个图形学API而非一个独立的平台,它需要通过一门语言来进行操作,而选择的语言是C++,因此对于这个教程的学习者来说,具备一定的C++编程语言的知识是必要的。然而,我会尽力去解释教程中所用的大多数概念,包括用到的C++的知识,所以并不需要你是C++的专家,然而这并不代表你只会写“Hello World”就可以。如果你并不具备足够的C++开发经验,我可以推荐下面这个免费的教程www.learncpp.com。
同时,在学习过程中,我们也会用到一些数学(线性代数、几何学和三角法)知识,我也会尽力解释所有相关数学概念。然而,我并非数学家,所以即使我的解释可能易于理解,但它是不全面的。所以在必要的地方我会提供一些包含完整解释的资源。在开始你的OpenGL旅程之前不要被所需要的数学知识吓倒;拥有基础数学背景的人可以理解几乎所有的概念,而我也会尽可能的减少数学的使用。大多数的功能甚至不需要你去理解所有的数学,你只要学会如何使用它就可以。
结构
LearnOpenGl被划分为几个主题。每个主题都包含几个部分,每个部分都详细解释了不同的概念。每个主题都可以在左边的菜单中找到。这些主题采用线性方式教学(所以建议从上到下开始,除非另有指示),每个页面都解释背景原理和实践方面。
为了使教程易于阅读,给它们添加了一些结构。站点包括框、代码块、颜色提示和函数引用。
框
绿框包含了关于OpenGL的一些笔记或者有用的特征或提示。 |
红框包含警告或其他需要额外注意的特性。 |
代码
你会在网站上找到大量的小段代码,这些代码位于深灰色的盒子里,上面有语法高亮的代码,你可以在下面看到:
//This box contains code |
由于代码块仅提供部分代码片段,必要时我会提供包含相关主题的完整源代码的链接。
颜色提示
有些字用不同的颜色显示,以使它们更加清晰。这些字分别表示以下含义:
- 定义:绿色描述定义,即你可能经常听到的重要方面或名称。
- 程序逻辑:红色描述函数名或类名。
- 变量:蓝色描述包含所有OpenGL常量在内的变量。
OpenGL函数引用
LearnOpenGL的一个显著特点是,它能够在内容中查看OpenGL的大部分函数。只要网站内容中出现一个功能,这个功能就会出现一个稍微明显的下划线。你可以将鼠标停在这个函数上然后稍等片刻,一个弹出窗口就会显示这个函数的相关信息,包括函数功能的详细概述。将你的鼠标停到函数glEnable上来看一下这个功能。
现在你有了一点关于这个网站结构的感觉了,点击Getting Started开始你的OpenGL旅程吧!