3年前写过一些关于如何使用Mesa的文章,如今再试。有些东西已经变了。

首先安装:

sudo apt-get install libgl1-mesa-dev
sudo apt-get install libglu1-mesa-dev
sudo apt-get install freeglut3-dev

现在不用NetBeans了,用CMake创建工程。

根目录下的CMakeLists.txt内容:

cmake_minimum_required(VERSION 2.8)
project (vender)
add_subdirectory(src bin)

src目录下的CMakeLists.txt文件内容如下:

cmake_minimum_required(VERSION 2.8)
set(CMAKE_BUILD_TYPE Debug)
set(PROJECT_INCLUDE_DIR ../include) include_directories(${PROJECT_INCLUDE_DIR})
AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src CPP_LIST1) add_executable(vender ${CPP_LIST1})
target_link_libraries(vender GL GLU glut)
add_definitions(-Wall)

然后看一下src/main.cc文件内容,和3年前代码一样。

#include <GL/glut.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();
}

运行结果:

我这次不想绘制什么图形,只是想知道我的显卡类型。因此代码删减如下:

#include <GL/glut.h>

#include <iostream>

using namespace std;

int main(int argc, char* argv[]) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutInitWindowPosition(0, 0);
glutInitWindowSize(300, 300); glutCreateWindow("OpenGL 3D View"); GLubyte const* vender = glGetString(GL_VENDOR);
cout << "GL_VENDOR: " << vender << endl; GLubyte const* renderer = glGetString(GL_RENDERER);
cout << "GL_RENDERER: " << renderer << endl; GLubyte const* version = glGetString(GL_VERSION);
cout << "GL_VERSION: " << version << endl; return 0;
}

运行结果:

dean@dean-GA-MA790XT-UD4P:~/work/opengl/vendor/build/bin$ ./vender
GL_VENDOR: X.Org
GL_RENDERER: Gallium 0.4 on AMD JUNIPER
GL_VERSION: 3.0 Mesa 9.1.4

Ubuntu13.04使用Mesa的更多相关文章

  1. VMware下利用ubuntu13.04建立嵌入式开发环境之二

    之前在VMware中安装完Ubuntu系统,接下来开始设置开发中用到的服务和工具,以及系统设计. 1.安装VMware工具:打开VMware软件,在菜单->VM->Install VMwa ...

  2. VMware下利用ubuntu13.04建立嵌入式开发环境之一

    1.软件准备: (1) VMware网上很多,需要根据自己的需要选择,这里选用的VMware Workstation 9. (2)ubuntu  操作系统,同样根据自己的需要下载系统安装包.这里我选择 ...

  3. Ubuntu13.04安装历险记--Mono,Nginx,Asp.Net一个都不能少

    ----Ubuntu13.04安装历险记--新人新手新作------------------------------------------------- 注:以下操作均省略权限获取操作,如有需要,请 ...

  4. Ubuntu13.04配置:Vim+Syntastic+Vundle+YouCompleteMe

    序言 使用Ubuntu和vim已经有一段时间了,对于Vim下的插件应用,我总是抱着一股狂热的态度.这次,又在网上闲逛着,发现了一个个人博客提到了Vim代码补全这回事,并提到了YouCompleteMe ...

  5. [Ubuntu] Ubuntu13.04, the desktop freezed after login

    My os version is Ubuntu13.04, today, after started and logined, my desktop freezed. But i can still ...

  6. ubuntu13.04云主机部署gitlab6.6

    GitLab 是何物? GitLab是 GitHub 的山寨版,GitLab几乎包含了GitHub的所有功能,还包含比较有特色的功能:Code Review,Wiki,Merge Requests,最 ...

  7. ubuntu13.04装配oracle11gR2

    http://jingyan.baidu.com/album/bea41d435bc695b4c41be648.html?picindex=2 http://www.360doc.com/conten ...

  8. Ubuntu13.04配置完全指南(转)

    Ubuntu13.04配置完全指南(一)软件源 教育网推荐使用USTC软件源. 首先备份现有软件源: $ sudo cp /etc/apt/sources.list /etc/apt/sources. ...

  9. ubuntu13.04 Thinkpad W520安装nvidia显卡驱动

    Ubuntu13.04 amd64 Thinkpad W520安装Nvidia显卡驱动 曾经在ubuntu11.10上成功安装Nvidia显卡驱动.但是自从机器(Thinkpad W520)更新到13 ...

随机推荐

  1. C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com

    原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | I ...

  2. ichartjs 使用BUG,assign_scale:true 解决

    今天纯属灌水,好久没灌水的. 最近使用了flotr2 和 ichartjs进行canvas图标的开发,都不能满足需求. 没办法,先将就用用吧.然后,既然其他大神推荐使用ichartjs,为了统一,我也 ...

  3. bzoj 1799: [Ahoi2009]self 类似的分布 解读

    [原标题] 1799: [Ahoi2009]self 同类分布 Time Limit: 50 Sec  Memory Limit: 64 MB Submit: 554  Solved: 194 [id ...

  4. ExtJs--12--Ext定义类的requires uses singleton 三个配置项的使用

    Ext.onReady(function(){ /* * requires uses singleton 三个配置项的使用 */ Ext.define("A",{ //requir ...

  5. 我的Android 4 学习系列之创建应用程序和Activity:Manifest、Application、Activity

    目录 介绍Android应用程序组件,以及使用这些组件构建的各种Android应用程序 Android应用程序的生命周期 如何创建应用程序Manifest 如何使用外部资源提供对位置.语言和硬件配置的 ...

  6. SQL Server 增删改

    --use用来设置当前使用哪个数据库use StudentDb--go批处理go --T-SQL中不区分大小写,数据库表中的数据是区分大小写的--例如:insert与INSERT不区分大小写,数据库表 ...

  7. ASP.NET MVC5 视图预编译

    ASP.NET MVC5 视图预编译 ASP.NET MVC5 视图预编译   关于Razor视图及引擎原理,就不多说了. 这里通俗或者不恰当地说,cshtml视图文件是先编译成dll文件,再通过视图 ...

  8. 手机APP下单支付序列图

    今天安装了Visio,学习了下如何使用,画了一下公司现在项目的下单支付序列图,话就不多说了,直接上图,处女作,欢迎指正!

  9. c#多选下拉框(ComboBox)

    代码如下 using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawi ...

  10. 微信JS-SDK分享接口示例中jsapi_ticket.php和access_token.php说明

    关于如何使用微信JS-SDK,可以查看官方介绍说明:查看链接 在使用分享接口的过程中,查看了示例代码,其中包含两个文件jsapi_ticket.php和access_token.php,记录一下这两个 ...