zoukankan      html  css  js  c++  java
  • 学习openGL-windows环境配置

    windows对openGL的支持直到1.1,而如今openGL版本已经更新到4.5,为了使用高版本的API,需要安装拓展库(glew)。

    openGL只是个渲染系统,但是它不能产生窗口,需要依赖其它窗口服务,这里普遍用glut。

    为了使用OpenGL,必须采用三个库及相关文件。

    OpenGL核心库,它提供OpenGL的基本函数。每个函数都以GL开头;

    OpenGL实用库(GL Utility Library),glu库,提供简单形状的实用函数等。每个函数都以glu开头。

    OpenGl实用工具包库(Utility Toolkit),glut库。它主要用来打开窗口、开发和管理菜单,以及管理事件等,函数前缀使用glut

    通常一个库在windows平台,由三个文件组成,一个头文件(.h),一个库文件(.lib)和一个动态链接库文件(.dll)。

    gl.h是OpenGL核心库的头文件,对应的导入库和动态库为opengl32.lib和opengl32.dll(默认在C:WindowsSystem32)。

    glu.h是OpenGL功能函数库的头文件,对应glu32.lib和glu32.dll(默认在C:WindowsSystem32),它同样是OpenGL库的一部分。

    这两个库,几乎所有版本的Windows都支持,安装了VS2015,随之也安装了OpenGL头文件(.h)和lib文件。

    唯一需要考虑的是glut库。当然您可以在www.opengl.org网站上获得点击下面链接,http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip。

    压缩包里包含5个文件:glut.h glut.lib glut32.lib glut.dll glut32.dll

    glut.h放到(C:Program Files (x86)Microsoft Visual Studio 14.0VCincludegl)这个文件夹中.

    glut.libglut32.lib放到静态函数库所在文件夹中。(C:Program Files (x86)Microsoft Visual Studio 14.0VClib)

    glut.dllglut32.dll放到操作系统所在目录下面的system32文件夹内. (C:Windowssystem32),如果是64位操作系统,则需要放到syswow64目录下。

    这样就完事大吉了。可以开始第一个OpenGl程序了。

    新建一个vs2015 console application project,配置工程属性,连接器->input->附加依赖项中添加opengl32.lib, glu32.lib, glut32.lib

    新建一个cpp文件,代码如下

    #include <gl/glut.h>
    
    void myDisplay(void)
    {
        glClear(GL_COLOR_BUFFER_BIT);
        glColor3f(0.0f, 0.5f, 0.0f);
        glRectf(-0.5f, -0.5f, 0.5f, 0.5f);
        glFlush();
    }
    
    int main(int argc, char *argv[])
    {
        glutInit(&argc, argv);
        glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
        glutInitWindowPosition(100, 100);
        glutInitWindowSize(400, 400);
        glutCreateWindow("第一个OpenGL程序");
        glutDisplayFunc(&myDisplay);
        glutMainLoop();
        return 0;
    }

    显示一个中间是绿色矩形的窗口则说明配置成功。

    千里之行,始于足下~
  • 相关阅读:
    整数拆分
    win8 使用notepad++写C代码
    hessian客户端调用服务端测试类
    多线程环境下保证实现单线程的案例
    windows server 2008开机启动多个tomcat服务方法及遇到问题
    解决加载静态文件无法被浏览器缓存问题
    【拦截器】HandlerInterceptor接口
    【pac4j】OAuth 认证机制 入门篇
    【Linux部署 · JDK】在linux系统安装jdk
    【Linux部署 · GIT】在linux系统安装git和配置实现SSH
  • 原文地址:https://www.cnblogs.com/wm123/p/5911033.html
Copyright © 2011-2022 走看看