声明:未经作者允许,严禁商用,转载请标明出处和来源,谢谢
笔者入门时,看过一个网址和四本书的前几章,因此来谈下图形学入门时选择书籍的感悟。
图形学入门时,最烦的是编译库相关文件,如果有vs链接库等编译基础,那么不依附外部教程,看书上需要用到的库,那么也能很好的进行链接。
下面从几个用到过的教程和书籍中进行归纳总结:
LearnOpenGL
用到的库:
glad
glfw
说明:
这是网页上的教程。如果你对vs如何接入第三方库等一无所知,建议先从这个网址学习到图形学小用到的相关的库及如何编译,链接如下:
https://learnopengl-cn.github.io/01%20Getting%20started/02%20Creating%20a%20window/
优点:
有从零构建项目的教程
同时该教程有着高度的信息浓缩,可以作为学习了红包书等对api底层有了解后的一个总结。
缺点:
一些api使用的解释比较笼统,不是很容易明白,不知底层做了什么。
笔者强烈推荐读者去从零生成一个库,因为如果学习过程中对某个图形学用到的api或者头脑一热,想要跳转进去看看,这个时候,有这些库的源码就格外方便。另外,能够用vs去引入第三方库,也是编程的基础能力之一,对于以后其他的第三方库的接入,都会有经验上的帮助。
红宝书--OpenGL编程指南(第八版/第九版)
用到的库:
freeglut
glfw(书上用到的头文件vgl.h看过源码,实际用的GLFW库,而不是glew)
说明:
首先得说,红包书不适合自己动手编写;书的前几章没有介绍如何搭建一个最基本的项目,这对于入门OpenGL及其困难,但是为什么还有这么多人推荐红包书呢。在运行了官方的源码后,我觉得是真的便利,结合书籍来看的话,可以快速让你弄懂每个api实际做了什么事,为什么这样做,比其他的书籍只有api和简单的说明,要靠谱的很多。
(PS:如果手痒想要动手,可以结合前面的LearnOpenGL等教程,自己去手动从零开始搭建,或者在已有的红宝书的项目建立新的项目)
优点:
api介绍的很详细,方便了解细节
缺点:
不适合从零开始构建项目(最好先从官网下载源码,在成功编译了项目后,对着项目去理解源码)
附带教程:
红宝书的官方源码(源码是第九版附带的,第九版目前只有英文版,但是中文书籍直到第八版,感觉差异不算特别大,可以结合着来看看)
https://github.com/openglredbook/examples
在github上有cmake 命令行操作提示,但是没能成功,我直接用cmake图形界面生成的
CMake基本使用可以参考别的教程,比较简单的。
CMake成功后,打开vermilion9.sln
先右键点击ALL_BUILD,生成项目;之后选择一个例子设为启动项,之后运行就可以看到效果了。
(PS:官方的源码维护的真的好,这样使用起来真的很方便,不用自己链接库等操作,简单的cmake后就可以直接运行项目)
蓝宝书--OpenGL超级宝典
用到的库:
freeglut
glew
gltools
说明:
这本书非常适合自己从零开始搭建一个OpenGL的项目
优点:
可以从零开始构建项目
教程书上有讲,网上也非常多
缺点:
用到库比较多,搭建起来比较麻烦
教程:
附上一个搭建的教程:《配置Visual Studio 2015+OpenGL可运行蓝宝书源码》,https://blog.csdn.net/perseverancep/article/details/72476727
计算机图形学(第四版)
用到的库:
freeglut
说明:
优点:
动手是最简单的,第一个示例只用一个freeglut库即可完成
缺点:
api介绍的不够详细
计算机图形学--三维模型处理算法初步理论与实现
说明
整个一个鸡肋的存在!!!
笔者最开始看的这本书,书上有代码,但是不完整,官方不提供源码,网上相关教程极少。因此可以作为底层opengl用到的算法扩充。但是但是,网上评论的好,这些算法其实也就很普通的,等学会图形学openGL的使用,这本书就是玩具一样的存在,而对于不懂图形学的,这本书又没办法上手。所以读者,不要踩坑!
声明:未经作者允许,严禁商用。转载请标明出处和来源,谢谢
附加一个unity使用交流群,qq群号:67999737,欢迎前来学习交流