因公司业务需求,从15年底开始接触Qt和OpenGL,无奈桌面版Qt对OpenGL的封装实在缺乏资料,转战纯正的OpenGL;买了两本书:《OpenGL超级宝典.第五版》、《OpenGL编程指南第八版》,琢磨了小半年才踏入OpenGL的门槛,学习OpenGL比较烦的一点就是你可能看完一两章,三四章甚至全部看完也做不出什么东西,当然这里指的是不是很老的固定管线而是新版本的可编程管线。后续因其他项目暂停了OpenGL的学习,但是因自己有强迫症,既然花了时间就索性做好,最近又从新捡起了它,从搭建环境开始:
对于很多从事linux开发的程序员来讲,Windows着实是个固步自封的系统:至今OpenGL已经发展到最新4.5版本,而windows对OpenGL却只支持到1.1,这点从任何windows开发软件的头文件"gl.h"中可以看到版本号,支持不好的原因只有一个,那就是发展自己的DirectX业务。那是不是高版本的OpenGL特性windows就不支持呢?当然不是。
各大硬件厂商为了更好的支持OpenGL特性,会发布自己的拓展库,这个库就是glew,本文不准备展开描述gl.h、glu.h、glut.h、glew.h....,而你现在必须要知道的第一点:windows对opengl的支持只到1.1版本,为了使用高版本的API,需要安装拓展库(glew).此外,OpenGL虽然是个渲染系统,但是它却不能产生窗口,需要依赖其他的窗口服务,这里普遍使用glut,能够创建窗口、处理消息。至