用c++怎么样才能实现对俄罗斯方块自动下落的控制?环境为qt+opengl

我在做一个俄罗斯方块的小游戏 但是我卡在如何让俄罗斯方块自动下落这一点上 我打算用ctime中的函数来控制 每隔一秒调用一次方块的下方向移动函数 可是具体该怎么实现呢?

            #include <windows.h>

            double last_time = glfwGetTime(),
                    curr_time;

            while (game_loop) {
                curr_time = glfwGetTime();
                double det_time = (curr_time - last_time);
                last_time = curr_time;
                fps = int(1 / det_time); //每秒帧数
                interval = std::min(det_time, max_interval); //每一帧间隔时间

                update(interval); //这里可以按照 interval * speed 来移动方块
                render(); //更新画面画出方块

                Sleep(1000 / max_fps);
            }

差不多像上面这样吧

追问

我在linux上开发。。不能包含那个windows.h吧。。

追答

windows.h只用到了sleep, 替换成linux中同类函数就行

追问

老师要求是跨平台的代码。。。可以不用sleep吗?

追答

总得有个sleep或者类似的东西的, 可以自己用#ifdef之类做兼容或者翻翻qt之类有没给预先包装好的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-08-15
机器人你好,请转隔壁C++吧
第2个回答  2015-08-22
起线程
相似回答