这些天开始研究OpenGL,就买了本OpenGL超级宝典和OpenGL编程指南两本书,(有人说编程指南不适合初学者,超级宝典的翻译太烂),兴高采烈地打开超级宝典的书,发现依赖了各种库,依赖glut库尚能接受,毕竟OpenGL只是负责绘制而已,glew也勉强接受,但又要有GLTools,稍微看了下,GLTools应该是超级宝典作者写的一个简单库,并用类封装了一下,这里我要吐槽的是类的命名规则!!!

OpenGL中类型名称是以GL开头的,比如GLfloat GLenum等等,而超级宝典的类命名也是以GL开头的,这,,,,鱼目混珠吗?

吐槽归吐槽,glew有官方网站,http://glew.sourceforge.net/

奇葩的GLTools已经绝迹了,有的要么只提供编译好的库,要么要积分,哼哼,本来就不是自己写的,是不是过分了,不过还好找到了。

https://blog.csdn.net/sxc1989/article/details/60584970

这篇文章的链接中有一个GLTools的git链接,如下:

https://github.com/HazimGazov/GLTools

个人更改后的GLTools

https://download.csdn.net/download/bull521/10699557

里面包含了源文件和对应的cmake文件,并没有现成的库文件,需要自行编译,我在ubuntu下尝试着编译了一下,发现GLTools.cpp第1060行和1072行有错误

稍微看了看源码才发现这个函数的返回值为GLbyte*,而作者却在这里返回了false,虽然c语言认为false == NULL == 0,不过有的编译器还是会报错的,改一下就好了,把false改为NULL或者nullptr。

另外,我发现GLTools提供的cmake文件是提供安装的,这样有一个小小的问题,就是cmake官方并没有提供对应的Find模块(即cmake查找是否存在对应库的头文件路径和源文件路径);当然,没有应该也没关系,因为我发现在ubuntu下安装的路径是/usr/include/下,也就是说,头文件是可以直接引用的,不过在编译文件时需要加上 -lgltools链接库。

另外一个解决办法就是照着官方给的CMakeLists.txt写一个只是编译的功能,然后把这个整个文件夹放到项目的根目录下

这样对于项目来说比较合适,对于单文件来说就不怎么合适了。

注意:超级宝典中的GLTools依赖的库比较多,至少需要glut(freeglut可以认为是glut的子集) glew。编程指南则只是使用了glut库(至少目前是这样)

OpenGL SuperBible中的glew和GLTools库相关推荐

  1. VS2015下opengl的freeglut,glew以及gltools库的配置

    由于上网搜索的答案各不相同,我只是为了配置glew就花费了将近一天的时间,深深感到了不同版本的Visual studio在配置opengl库中方法各异.在这里分享一个也是上网搜索得到的Visual S ...

  2. VS2012+OpenGL (涵盖GLUT+GLEW+FreeGlut+GLTools) h lib 和dll文件

    本人参考的是这位大神的博客:http://k57box.blog.163.com/blog/static/14226137420146144357635/(明明是个中文网站,我却要翻墙才能上) 好吧不 ...

  3. Mac平台配置OpenGL(glut,glew)

    //oepngl库 opengl原生库 gl*  随opengl一起发布 opengl实用库  glu*   随opengl一起发布 opengl实用工具库glut  glut*   需要下载配置安装 ...

  4. VS2017环境下配置OpenGL的简单方法(glut,glew,freeglut,gltools)

    写在前面: 最近要用到OpenGL,光是在VS2015下配置就费了很大的劲,现在将我的成果直接贡献给大家,希望能为需要在VS2015下配置OpenGL的读者省去一些麻烦. 正文: 资源地址1:http ...

  5. VS2015配置OpenGL环境——GLUT、freeglut、glew、GLtools

    说明: 1.本人的VS2015的安装路径是F:\VS2015.大家在看本教程时应根据自己的情况来操作. 2.本教程提供了配置所需的全部库文件. 库文件和测试程序下载地址: 链接:https://pan ...

  6. openGL使用GLFW、GLEW库绘制点

    前言 openGL使用GLFW.GLEW库绘制点,下面这段代码:绘制蓝色背景,中心点是一个黄色的点,由于代码比较简单,所以我把顶点着色器和片元着色器硬编码到c++程序中.问题就在这!!!由于着色器都写 ...

  7. Qt中使用GLEW进行OpenGL开发

    Qt中使用GLEW进行OpenGL开发(Windows平台) 为什么要使用GLEW 使用VS创建Qt项目 设置Widget 重新实现paintEngine 添加GLEW库到工程 设置OpenGL上下文 ...

  8. 一文搞清楚opengl、openglES、GLEW、的关系GLUT、FreeGLUT、GLFW

    简要来说,opengl.openglES.GLEW这三个都是一个图形库,可以理解为是在显卡驱动上给渲染用户一个统一的API:而GLUT.FreeGLUT.GLFW这三个是用于图形开发的辅助工具库,主要 ...

  9. CMake编译OpenGL SuperBible 7th源码报警告

    CMake编译OpenGL SuperBible 7th源码报警告 今天在另一台机器上编译CMake编译OpenGL SuperBible 7th(编程宝典)源码报警告 CMake Deprecati ...

最新文章

  1. 机器翻译之Facebook的CNN与Google的Attention
  2. 测试TI高速MOS驱动芯片 TPS28225 伴随着MOS半桥
  3. 常用 Linux 命令
  4. k-means聚类分割
  5. NYOJ 678 最小K个数之和
  6. 单击修复计算机英语怎么说,电脑选择语言方式,单击修复计算机
  7. python爬虫中文乱码_解决Python爬虫处理文件时候中文名称出现乱码问题
  8. 计算机网络中TCP属于,【填空题】TCP/IP协议将计算机网络的结构划分为应用层、传输层、网络互连层等4个层次,其中IP协议属于【1】层。...
  9. Netflix:当你按下“播放”的时候发生了什么?
  10. 使用Vue做评论+localStorage存储(js模块化)
  11. SPSS T检验(图文+数据集)【SPSS 017期】
  12. Ruby gem 更换国内源
  13. ArcGIS知乎干货教程大集合
  14. vant组件做表格_有赞团队的vant ui组件库van-field使用
  15. 如何修改图像尺寸?教你两招轻松修改图像宽高像素
  16. 让刷Q币者对爱机你无从下手
  17. ACM模板-f_zyj.pdf
  18. 并行计算与计算机集群
  19. mysql中锁原理及for update悲观锁的详解
  20. 修复Linux 的GRUB引导文件

热门文章

  1. Golang入门项目(家庭收支软件和客户信息管理软件)
  2. ORBSLAM2实验记录(1)——稠密建图
  3. 使用拉易网制作图文并茂的精美HTML邮件模板(终)
  4. 阿里云轻量级服务器搭建博客网站教程(入门级别搭建)
  5. Centos7系统中wget安装方法
  6. 【ElasticSearch系列】ES插件安装
  7. web常见攻击及防范措施
  8. c语言判断奇数偶数_使用C语言宏检查偶数或奇数
  9. 万元内买断管理软件“全家桶”还“包定制”:SaaS新风向?
  10. 专家揭秘:补充叶黄素视力毫无改善,原因何在?