C++并行循环
C++ parallel loops
我正在制作一款名为外星飞船的主机游戏作为家庭作业。它应该是这样的http://img74.imageshack.us/img74/8362/alieninvadersfdcl192720mu1.jpg。到目前为止,我不允许只使用类或对象=>函数和数组。我有一个while循环,它检查我在键盘上按下的按钮,并根据按钮应用一些功能。当我尝试发射导弹时,问题就来了,因为它是用"for"循环完成的,当我发射时,我无法移动。有人能给我一个模型应该是什么样子的想法吗?我该如何制作这样的作品。我认为发布我的代码不需要它,但如果你愿意,我会发布它。
我认为您不愿意使用多个线程。对于这样一个简单的游戏来说,这不是强制性的,会增加一些复杂性。
所以单线程游戏的通用循环是:
state new_state = createInitialState();
do
{
input = readInput(); // non blocking !
new_state = modifyState(input, new_state);
updateScreen(new_state);
}
while (!exitCondition(input));
这些函数都不应该循环很长时间。
在您的情况下,应在modifyState
中更新导弹位置,同时考虑自上次modifyState
以来的时间。
我假设您使用矩阵来存储所有数据,并定期打印矩阵的内容(这就是创建控制台游戏的方式)。所以,你的代码应该是这样的:
render()
{
update_position(x,y);
if(missile_fired)
update_missile_position();
}
main()
{
for(;;)
{
read_input(&x,&y);
render();
draw_image();
}
}
相关文章:
- 并行用于C++17中数组索引范围内的循环
- 如何使用OpenMP并行这两个循环
- 如何使用OpenMP使这个循环并行
- OpenMP for 循环并行性问题
- 使用 MPI 的 C++ 中的并行 for 循环
- 如何使用 OpenMP 正确并行化 for 循环?
- 为什么 std::chrono 在测量循环和编译器优化的并行 OpenMP 的执行时间时不起作用?
- 并行循环中的懒惰矢量访问
- 使用与 openmp C++并行的循环计算矩阵中每一行的最小值
- 函数中的"pragma omp parallel for"在另一个并行循环中调用函数时无效
- 在 C++14 中的 for 循环中并行网络下载
- 将 for 循环与嵌套的 while 循环并行化时出现 OpenMP 分段错误
- 如何将openMP的外循环与串行内循环并行化以添加数组
- 用openmp实现循环并行化的嵌套c++
- OpenMP for循环并行化:我的代码效率很低
- 为什么我的程序接收SIGABRT时,我使用OpenMP使一个for循环并行
- 融合一个三角形循环并行化,计算子指标
- OpenMP,循环并行,处理时间差异大
- 我如何在此 for 循环中使用 openMP 进行循环并行
- c++算法循环并行处理