欢迎来到OpenGL (Welcome to OpenGL)
Welcome to my humble attempt to facilitate a well-developed teaching platform for the graphics API called OpenGL. Whether you are trying to learn OpenGL for academic purposes, to pursue a career or simply looking for a hobby, this site will teach you the basics, the intermediate and all the advanced knowledge using modern (core-profile) OpenGL. The aim of LearnOpenGL is to show you all there is to modern OpenGL in an easy-to-understand fashion with clear examples, while also providing a useful reference for later studies.
欢迎来到我为促进学习这门叫做OpenGL的绘图API所搭建的简易学习平台。无论你学习它是学术研究、还是从事这个行业或者就是简简单单的一个爱好,这里都能为你提供OpenGL的基础、进阶和高级教程。LearnOpenGL的目的是通过一些简单的例子向你展示这个现在流行的简单易懂的绘图API OpenGL。
为什么需要这个教程?(So why read these tutorials?)
Throughout the internet there are thousands of documents and resources on learning OpenGL, however, most of these resources are only focused on OpenGL's immediate mode (commonly referred to as the old OpenGL) or are incomplete, lack proper documentation or are not suited for your learning preferences. Therefore, my aim is to provide a platform that is both complete and easy to understand.
通过网络我们可以获得很多有关学习OpenGL的文档和资源,可是很多资源都是针对于当时的版本(旧版本OpenGL)或者不完整,缺少合适的文档或者没有适合你想学习的内容。因此,我的目的是提供一个完整并且简单易懂的学习平台供大家学习。
If you enjoy reading tutorials that provide step-by-step instructions, clear examples and that won't throw you in the deep with millions of details, these tutorials are probably for you. The tutorials aim to be understandable for people without any graphics programming experience, but are still interesting to read for the more experienced users. The tutorials also discusses practical concepts that, with some added creativity, could turn your ideas into real 3D applications. If all of the previous sounds like someone that could be you, then by all means, please continue.
如果你喜欢阅读那种提供一步一步指导,有清晰的例子,并且不会把你扔进海量细节的教程,那么这个教程可能适合你。这个教程的目的是为那些没有图形编程经验,但是仍然对图像编程感兴趣的人提供一个容易理解的教程。教程还讨论了一些更加有创造力的可以实用性的概念,可以帮助你把你的想法变成真正的3D应用。如果上面说的那些情况看起来适合你,那么无论如何,请继续。
你将学习什么?(What will you learn?)
The focus of the tutorials are on Modern OpenGL. Learning (and using) modern OpenGL requires a strong knowledge of graphics programming and how OpenGL operates under the hood to really get the best of your experience. So we will start by discussing core graphics aspects, how OpenGL actually draws pixels to your screen and how we can abuse that knowledge to create some funky looking effects.
教程的重点主要放在现代的OpenGL上。学习(和使用)OpenGL需要牢固图形编程知识,并且了解OpenGL底层是如何运作的可以真正的带给给你最好的经验。所以我们首先要开始讨论的就是绘图的核心模块,OpenGL到底是如何在你的屏幕上绘制出像素点的,以及我们如何熟练的使用这些知识去创建一些有趣绚丽的特效。
Aside from the core knowledge we will discuss many useful techniques that you can use for your applications like: traversing a scene, create beautiful lighting, load custom-made objects from a modelling program, do cool post-processing techniques and much more. We also feature a walkthrough tutorial where we actually create a small game based on our obtained OpenGL knowledge, so you will really get a feel of what it's like to actually do graphics programming.
除了核心知识点以外,我们还有讨论更多能够在你的应用中用到的技术:遍历一个场景、创建漂亮的光照、加载自制的模型程序、酷炫的后期处理等等。基于所学习的OpenGL知识,我们也制作了一些演示教程,实际上是创建了一个小的游戏,这样你才会体会到真正做图形编程的感觉。