首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    现代OpenGL(一):我的第一个OpenGL程序

    OpenGL是一种应用程序编程接口(Application Programming Interface,API)它是一种可以对图形硬件设备特征进行访问的软件库。 在OpenGL 3.0以前的版本或者使用兼容模式的OpenGL环境,OpenGL包含一个固定管线(fixed-function pipeline),它可以在不使用着色器的环境下处理几何与像素数据。我们看到的glBegin()、glRectf()以及glEnd()这些函数都是以前固定管线模式中所使用的API函数。 从3.1版本开始,固定管线从核心模式中去除,因此我们必须使用着色器来完成工作。现代OpenGL渲染管线严重依赖着色器来处理传入的数据,我们一般会使用GLSL(OpenGL Shading Language)编写着色器程序,GLSL语法类似于C语言,GLSL编译以后运行在GPU端。

    03

    运行mplayer提示缺乏libglut

    [root@fedora14 ~]# yum install glut 已加载插件:fastestmirror, langpacks, presto, refresh-packagekit Adding zh_CN to language list Loading mirror speeds from cached hostfile  * fedora: mirrors.163.com  * rpmfusion-free: mirrors.163.com  * rpmfusion-free-updates: mirrors.163.com  * rpmfusion-nonfree: mirrors.163.com  * rpmfusion-nonfree-updates: mirrors.163.com  * updates: mirrors.163.com 设置安装进程 解决依赖关系 There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them. --> 执行事务检查 ---> 软件包 freeglut.x86_64 0:2.6.0-5.fc14 将被 安装 --> 完成依赖关系计算 依赖关系解决 ================================================================================  软件包            架构            版本                   仓库             大小 ================================================================================ 正在安装:  freeglut          x86_64          2.6.0-5.fc14           fedora          172 k 事务概要 ================================================================================ Install       1 Package(s) 总下载量:172 k Installed size: 612 k 确定吗?[y/N]:y 下载软件包: Setting up and reading Presto delta metadata Processing delta metadata Package(s) data still to download: 172 k freeglut-2.6.0-5.fc14.x86_64.rpm                         | 172 kB     00:00     运行 rpm_check_debug 执行事务测试 事务测试成功 执行事务   正在安装       : freeglut-2.6.0-5.fc14.x86_64                             1/1 已安装:   freeglut.x86_64 0:2.6.0-5.fc14                                                完毕!

    03

    实验1 OpenGL初识

    常用的程序设计语言,如C、C++、Pascal、Fortran和Java等,都支持OpenGL的开发。这里只讨论C版本下OpenGL的语法。 OpenGL基本函数均使用gl作为函数名的前缀,如glClearColor();实用函数则使用glu作为函数名的前缀,如gluSphere()。OpenGL基本常量的名字以GL_开头,如GL_LINE_LOOP;实用常量的名字以GLU_开头,如GLU_FILL。一些函数如glColor*()(定义颜色值),函数名后可以接不同的后缀以支持不同的数据类型和格式。如glColor3b(…)、glColor3d(…)、glColor3f(…)和glColor3bv(…)等,这几个函数在功能上是相似的,只是适用于不同的数据类型和格式,其中3表示该函数带有三个参数,b、d、f分别表示参数的类型是字节型、双精度浮点型和单精度浮点型,v则表示这些参数是以向量形式出现的。 为便于移植,OpenGL定义了一些自己的数据类型,如GLfloat、GLvoid,它们其实就是C语言中的float和void。在gl.h文件中可以看到以下定义:

    03
    领券