Mac中创建一个OpenGL项目

来源:互联网 发布:答案宠物店淘宝 编辑:程序博客网 时间:2024/06/03 10:16

Mac中创建一个OpenGL项目

配置: OS X10.10 + Xcode 6.0

一、基本步骤

  • 新建一个命令窗口项目
  • 更改目标设备版本号为 OS X 8.0
  • 添加库文件 GLUT.framework 和 OpenGL.framework
  • Hello World 测试

二、详述

1、新建一个命令窗口项目

  1. 点击 File - New - Project (或者 Shift + Command + N),进入新建项目面板;
  2. 选择 OS X - Application - Command Line Tool,进入项目基本信息配置窗口,逐一填写好信息。

    项目基本信息配置窗口

  3. 选择项目存储目录,点击 Create 完成项目创建。

2、更改目标设备版本号

  1. 点击项目导航区(Command + 1)的项目;
  2. 将 Build Settings - OS X Deployment Target 改成 OS X 10.8;(因为在 OS X 10.9 中GLUT 的不少函数都已经标记为过时,如果不改这个选项,那么代码中会出现很多 warning)。

    部署目标

3、添加库文件

  1. 刚才在 Build Settings 选项卡,现在切换到 Build Phases;
  2. 在 Link Binary With Libraries 中点击加号 '+',加⼊ GLUT.framework 和OpenGL.framework 这两个框架。

    添加库文件


^^ 版权衔接线 vv      全文出处:http://www.cnblogs.com/tangyikejun/p/4442681.html 

4、Hello World 测试

在 main.cpp 文件中添加如下代码,

#include <iostream>#include <OpenGL/gl.h>#include <GLUT/glut.h>using namespace std;void display(){    glClear(GL_COLOR_BUFFER_BIT);        glColor3f(1.0, 1.0, 1.0);    glBegin(GL_POLYGON);    glVertex3f(0.25,0.25,0.0);    glVertex3f(0.75,0.25,0.0);    glVertex3f(0.75,0.75,0.0);    glVertex3f(0.25,0.75,0.0);    glEnd();        glFlush();    }void init(){    glClearColor(0.0,0.0,0.0,0.0);        glMatrixMode(GL_PROJECTION);    glLoadIdentity();    glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);}int main(int argc, const char * argv[]) {    // insert code here...        cout << "Hello World";    glutInit(&argc,(char **)argv);    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);    glutInitWindowSize(250, 250);    glutInitWindowPosition(100, 100);    glutCreateWindow("hello");    init();    glutDisplayFunc(display);    glutMainLoop();        return 0;}

运行项目(Command + R),如果能够出现如下窗口,说明 OpenGL 项目创建成功。


参考链接

OpenGL开发环境配置-Mac OS X( OS X 中创建 OpenGL 的方法源于此处,感谢 ⺩达 同学!!)
Xcode环境下OpenGL C++ GLFW开发环境搭建[via be2n2me] (本文创建的项目默认是 OpenGL 2.1 版本,如果要使用 Mac 所支持的版本,需要安装 GLFW,可参考此文)
使用 OpenCL 和 OpenGL 图形处理器的 Mac 电脑[via Apple 官网] (各个版本的 Mac 所支持的 OpenGL 版本)

转自:http://www.cnblogs.com/tangyikejun/p/4442681.html


0 0
原创粉丝点击