设为首页 加入收藏

TOP

Mac端 Open GL初探(二)
2019-08-31 00:21:53 】 浏览:65
Tags:Mac Open 初探
triangleBatch.Draw(); //后台缓冲区渲染结束后提交给前台 glutSwapBuffers(); }
void specialKeys(int key, int x, int y)//key由系统自动识别获取
{
    /*
     判断:x值以正方形最左边为基准;y值以正方形最上边为基准;
     blockX、blockY值不能赋值于常量——因为vVerts四个点是动态变化的(SpecialKeys也会随之被动态调用);
     */
    GLfloat blockX = vVerts[0];
    GLfloat blockY = vVerts[10];
    GLfloat stepSize = 0.025;
    
    if (key == GLUT_KEY_UP) {
        blockY += stepSize;
    }
    
    if (key == GLUT_KEY_DOWN) {
        blockY -= stepSize;
    }
    
    if (key == GLUT_KEY_LEFT) {
        blockX -= stepSize;
    }
    
    if (key == GLUT_KEY_RIGHT) {
        blockX += stepSize;
    }
    
    //触碰到窗口边界处理
    if (blockX < -1.0) {
        blockX = -1.0;
    }
    
    if (blockX > (1.0-blockSize*2)) {
        blockX = 1.0-blockSize*2;
    }
    
    if (blockY > 1.0) {
        blockY = 1.0;
    }
    
    if (blockY < -1.0+blockSize*2) {
        blockY = -1.0+blockSize*2;
    }
    
    //正方形四个顶点坐标动态赋值
    vVerts[0] = blockX;
    vVerts[1] = blockY-blockSize*2;
    
    vVerts[3] = blockX+blockSize*2;
    vVerts[4] = blockY-blockSize*2;
    
    vVerts[6] = blockX+blockSize*2;
    vVerts[7] = blockY;
    
    vVerts[9] = blockX;
    vVerts[10] = blockY;
    
    triangleBatch.CopyVertexData3f(vVerts);
    
    glutPostRedisplay();
}

 

 请问下:录好的视频demo运行效果如何上传到博客中?不胜感激!

 

github

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇【OC底层】KVC原理 下一篇静态库打包——.a和.framework文件

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目