xcode下配置opengl环境_skybeauty_新浪博客

本文主要是讲mac下xcode配置OpenGL环境,故操作系统就是ios,由于xcode自带OpenGL的OpenGL.framework以及GLUT.framework所以剩下的就是下载GLTools以及相关配置

第一步:首先下载GLTools,具体下载地址可以到官网下载或者是 http://download.csdn.net/download/zhanyong168/4863389下载,将下载的GLTools放在电脑的相应目录下,

第二步: 创建项目,注意在xcode下也是创建application,如图:
xcode下配置opengl环境

xcode下配置opengl环境

大家都知道这歌xcode.project是用oc或者是swift语言开发的,但是要用支持opengl就需要用c++开发,所以我们要把这个项目做改变;首先将项目自动产生的AppDelegate.h和 AppDelegate.m以及main.m,Main.storyboard全部删除(move to Trash),删除之后项目如下:
xcode下配置opengl环境


第三不:配置相关framework,GLUT.framework,OpenGl.frameWork,相比添加大家应该都会啊,图示如下:
xcode下配置opengl环境

以上添加进来之后,只剩下配置GLTools刚才下载的GLTools我放在了项目同目录下: xcode下配置opengl环境


xcode下配置opengl环境
将libGLTools.a导入项目,这一步和刚才添加另外两个framework一样,添加完之后就要✉️一个.cpp文件如图:
xcode下配置opengl环境

openGLMain.cpp中的代码如下:

#include

#include

#ifdef __APPLE__

#include

#else

#define FREEGLUT_STATIC

#endif


GLBatch triangleBatch;

GLShaderManager shaderManager;


//窗口大小改变时接受新的宽度和高度,其中0,0代表窗口中视口的左下角坐标,wh代表像素

void ChangeSize(int w,int h)

{

   glViewport(0, 0, w, h);

}



//为程序作一次性的设置

void SetupRC()

{

    //设置背影颜色

    glClearColor(0.0f, 0.0f, 1.0f, 1.0f);

    //初始化着色管理器

    shaderManager.InitializeStockShaders();

    //设置三角形,其中数组vVert包含所有3个顶点的x,y,笛卡尔坐标对。

   GLfloat vVerts[] = {

        -0.5f,0.0f,0.0f,

        0.5f,0.0f,0.0f,

        0.0f,0.5f,0.0f,

    };

    //批次处理

    triangleBatch.Begin(GL_TRIANGLES,3);

   triangleBatch.CopyVertexData3f(vVerts);

    triangleBatch.End();

}


//开始渲染

void RenderScene(void)

{

    //清除一个或一组特定的缓冲区

    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT);

    //设置一组浮点数来表示红色

    GLfloat vRed[] = {1.0f,0.0f,0.0f,1.0f};

    //传递到存储着色器,即GLT_SHADER_IDENTITY着色器,这个着色器只是使用指定颜色以默认笛卡尔坐标第在屏幕上渲染几何图形

    shaderManager.UseStockShader(GLT_SHADER_IDENTITY,vRed);

    //提交着色器

    triangleBatch.Draw();

    //将在后台缓冲区进行渲染,然后在结束时交换到前台

    glutSwapBuffers();

}


int main(int argc,char* argv[])

{

    //设置当前工作目录,针对MAC OS X

    gltSetWorkingDirectory(argv[0]);

    //初始化GLUT

    glutInit(&argc, argv);

   

    glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH | GLUT_STENCIL);

    //GLUT窗口大小,标题窗口

    glutInitWindowSize(800, 600);

    glutCreateWindow("Triangle");

    //注册回调函数

    glutReshapeFunc(ChangeSize);

    glutDisplayFunc(RenderScene);

    //驱动程序的初始化中没有出现任何问题。

    GLenum err = glewInit();

   if (GLEW_OK != err) {

        fprintf(stderr, "glew error:%s\n",glewGetErrorString(err));

       return 1;

    }

    //调用SetupRC

    SetupRC();

    glutMainLoop();

   return 0;

}


将GlTools路径加到Header Search Paths中
如下:
xcode下配置opengl环境

以上完成之后运行一下程序;ok

xcode下配置opengl环境

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值