首页
登录 | 注册

Mac中创建一个OpenGL项目

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,进入项目基本信息配置窗口,逐一填写好信息。

    Mac中创建一个OpenGL项目

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

2、更改目标设备版本号

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

    Mac中创建一个OpenGL项目

3、添加库文件

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

    Mac中创建一个OpenGL项目



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




2020 jeepxie.net webmaster#jeepxie.net
10 q. 0.009 s.
京ICP备10005923号