请选择 进入手机版 | 继续访问电脑版
hot【项目分享】之智能交通灯

结合前几次GPIO的简单了解和学习,今天给大家分享一个GPIO的简单应用:智能交通灯 涉及硬件:开发套件 详细

开启左侧

Ubuntu 安装OpenGL

[复制链接]
小思 发表于 2017-10-16 17:56:38 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
  • OpenGL 是一套由SGI公司发展出来的绘图函式库,它是一组 C 语言的函式,用于 2D 与 3D 图形应用程式的开发上。OpenGL 让程式开发人员不需要考虑到各种显示卡底层运作是否相同的问题,硬体由 OpenGL 核心去沟通,因此只要显示卡支援 OpenGL,那么程式就不需要重新再移植,而程式开发人员也不需要重新学习一组函式库来移植程式。


安装

首先不可或缺的就是编译器与基本的函式库,如果系统没有安装的话,依照下面的方式安装:
  • $ sudo apt-get install build-essential


安装OpenGL Library

  • $ sudo apt-get install libgl1-mesa-dev


安装OpenGL Utilities

  • $ sudo apt-get install libglu1-mesa-dev

       OpenGL Utilities 是一组建构于 OpenGL Library 之上的工具组,提供许多很方便的函式,使 OpenGL 更强大且更容易使用。
安装OpenGL Utility Toolkit
  • $ sudo apt-get install libglut-dev

       OpenGL Utility Toolkit 是建立在 OpenGL Utilities 上面的工具箱,除了强化了 OpenGL Utilities 的不足之外,也增加了 OpenGL 对于视窗介面支援。
       注意:在这一步的时候,可能会出现以下情况,shell提示:
  • Reading package lists... Done
  • Building dependency tree
  • Reading state information... Done
  • E: Unable to locate package libglut-dev

将上述$ sudo apt-get install libglut-dev命令改成$ sudo apt-get install freeglut3-dev即可。


测试

示例test.c源码:
  • #include <GL/glut.h>
  • void init(void)
  • {
  •     glClearColor(0.0, 0.0, 0.0, 0.0);
  •     glMatrixMode(GL_PROJECTION);
  •     glOrtho(-5, 5, -5, 5, 5, 15);
  •     glMatrixMode(GL_MODELVIEW);
  •     gluLookAt(0, 0, 10, 0, 0, 0, 0, 1, 0);
  •     return;
  • }
  • void display(void)
  • {
  •     glClear(GL_COLOR_BUFFER_BIT);
  •     glColor3f(1.0, 0, 0);
  •     glutWireTeapot(3);
  •     glFlush();
  •     return;
  • }
  • int main(int argc, char *argv[)
  • {
  •     glutInit(&argc, argv);
  •     glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
  •     glutInitWindowPosition(0, 0);
  •     glutInitWindowSize(300, 300);
  •     glutCreateWindow("OpenGL 3D View");
  •     init();
  •     glutDisplayFunc(display);
  •     glutMainLoop();
  •     return 0;
  • }

编译程式时,执行以下指令:
  • $ gcc -o test test.c -lGL -lGLU -lglut



越努力,越幸运。
所以,请努力成为更好的自己!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
阅读排行 更多
广告位
0351-8210788
周一至周日 9:00-18:00
意见反馈:mind@unigress.com
关注我们

扫一扫关注我们

Powered by Discuz! X3.4 Licensed  © 2001-2013 Comsenz Inc.( 晋ICP备12005011 )