Linux OpenGL 实践篇-1

Posted xin_l12

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux OpenGL 实践篇-1相关的知识,希望对你有一定的参考价值。

本次实践所使用环境为CentOS 7。

参考:http://www.xuebuyuan.com/1472808.html

OpenGL开发环境搭建:

1.opengl库安装

  opengl库使用mesa库,安装命令:

  yum intall mesa*

  mesa库是一个开源的三维计算机图形库,以开源的形式实现了opengl应用程序接口。具体介绍:https://www.mesa3d.org/intro.html。

2.glut安装

  下载freeglut,下载地址为: https://github.com/dcnieho/FreeGLUT/releases。glut是opengl的实用工具库,opengl只是三维图形接口,并没有窗口,处理鼠标等设备输入输出方面的内容,glut提供了相关方面的内容。freeglut是glut的一个发行版本(还有一个是原始版本的glut)。

  因为我使用cmake安装,根据README.cmake中步骤及注意事项安装。

  命令:

  cmake .

  make

  make install

3.简单例子

新建文件main.cpp

#include <GL/glut.h>
#include <stdlib.h>
void init();
void display();

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;
}

void init()
{
        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);
}

void display()
{
        glClear(GL_COLOR_BUFFER_BIT);

        glColor3f(1.0, 0, 0);
        glutWireTeapot(3);

        glFlush();
}

编译命令:

gcc -lglut -lGLU -lGL main.cpp

 

以上是关于Linux OpenGL 实践篇-1的主要内容,如果未能解决你的问题,请参考以下文章

Linux OpenGL 实践篇-12-ProceduralTexturing

Linux OpenGL 实践篇-2 创建一个窗口

Linux OpenGL 实践篇-11-shadow

Linux OpenGL 实践篇-9 模型

Linux OpenGL 实践篇-14-多实例渲染

Linux OpenGL 实践篇-6 光照