问题标签 [game-loop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
919 浏览

android - 在android中,我应该将主游戏循环放在初始活动类中吗?

我正在尝试使用本教程创建一个游戏循环。

我试图在初始活动类中实现这一点,如下所示,但我遇到了一些问题。我已经请求了全屏并且没有显示标题功能,但我没有得到它们并且 requestRender 不起作用。

当 "running" 设置为 false 时,游戏循环被跳过,渲染器渲染一帧(rendermode 设置为脏)

这不是它在 running=true 时所做的事情。

目前游戏逻辑更新正常,但渲染器根本没有渲染(只是黑屏)

我很确定这只是对代码的简单重新洗牌,但有人有什么建议吗?

0 投票
1 回答
600 浏览

game-loop - 固定游戏更新周期

我已经在我的游戏循环中实现了增量时间,因此帧速率的任何波动都不再重要,但是游戏不会在更快的机器上运行得更快而在慢的机器上运行得更慢吗?

我的印象是大多数游戏以固定的速率(每秒 60 次)更新逻辑,然后执行尽可能多的渲染。如何使更新每秒循环多次?

0 投票
2 回答
923 浏览

android - Android开发:游戏后台循环

我正在使用Canvas/Surfaceview线程开发 2d 游戏并且遇到问题。所以我想要完成的是背景中的一些事情,例如:每秒SpawnEnemy()或滴答秒或攻击。

我试过 Thread.wait 但这只会引起痛苦并使我的游戏达到 2fps。

这是我的游戏循环:

所以我想要一些在后台(秒)没有线程等待的东西。

0 投票
1 回答
269 浏览

ios - 将 CADisplayLink 添加到 Cocos2D

我的应用程序中有 Cocos2D,我将它用作我的游戏的游戏引擎。在这一点上,我需要以屏幕刷新的速度进行游戏循环。所以这让我认为我需要使用 CADisplayLink。那么我将如何实现 CADisplayLink 以便以屏幕刷新的速度调用包含 Cocos2D 的游戏循环?

谢谢!

0 投票
1 回答
3047 浏览

android - requestRender 似乎没有渲染(opengl-es android)

我有一个在线程中运行的游戏循环,我的问题是

因空指针异常而崩溃。我的 onSurfaceCreated 方法中有一个日志标签,它证明表面已创建(至少我认为),所以这不是问题。

我认为问题在于 requestRender 需要一个非静态引用。当我尝试调用另一个方法的非静态引用时,它反而在该行上崩溃了。所以我只能假设线程对非静态对象不太友好。我也无法对 requestRender 进行静态引用(这将是一个明显的解决方案)。

这是我的游戏循环线程

这是我的表面创建方法(我虽然可能是长期问题的一部分)

哦,顺便说一句,我正在使用

投影

堆栈跟踪

日志标签

0 投票
2 回答
209 浏览

actionscript-3 - 没有显示列表的动作脚本(更新/绘制循环)

我最近一直在使用几种不同的编程语言,我得出的结论是我不太喜欢 Actionscript 中的显示列表。我宁愿有一个更新/绘制循环,并像在 XNA (C#) 中那样手动绘制和管理所有内容。我在 actionscript 中喜欢的是事件、movieclips 动画和矢量图形的易用性。

这有什么可能?我真的很想能够使用动画电影剪辑,但我认为如果没有显示列表,那将是不可能的,所以我可以用 spritesheets 编写我自己的动画系统。重写整个事件系统并不是我所期待的。是否有任何(molehill)框架可以在没有显示列表的情况下工作?

0 投票
0 回答
2166 浏览

java - Android游戏循环时间差异

我一直在制作我的第一款游戏:)

这是一个使用 libgdx 的基于 android 的游戏,并且使用了DeWiTTERS 循环的一个修改示例

游戏循环似乎在桌面上运行得非常好(59 - 60 fps),但是当我在手机上运行时,它往往会在 75 - 90 FPS 左右

nextGameTick 应该总是指未来 16 毫秒,以便游戏循环以 60 FPS 或更低的速度运行,为什么不是这样

以下是游戏循环的主要部分供参考:

0 投票
3 回答
18962 浏览

c# - C# 中的简单游戏,只有本机库

我可以找到一组仅使用原生图形库的java 2D 游戏教程android 游戏教程。 我在 C# 中寻找类似的东西(没有 DirectX 或 XNA) 我找到了这个游戏循环骨架,但它没有告诉如何渲染图形。 目标是模拟一个简单的电子设备。当用户快速“按下”键盘上的某些键时,我需要显示一些图形输出。因此它看起来像街机游戏。例如,当用户按下箭头键之一时,指针(图像)将相应移动。 我想我不能用典型的 Windows 窗体应用程序来做到这一点,可以吗? 例如使用一个









PictureBox控制和移动它的KeyPress事件Form

0 投票
2 回答
1613 浏览

c++ - 游戏主循环逻辑

我正在使用 allegro 5 用 c++ 编写游戏。Allegro 5 的事件堆叠在事件队列中(如鼠标单击或在 1/FSP 时间后计时)。所以我的问题是我的游戏主循环的逻辑应该如何,或者因为它是基于事件的,我可以在没有主循环的情况下实现它?

任何想法如何真正的游戏做到这一点?链接会很好。

0 投票
3 回答
4565 浏览

javascript - Javascript 游戏循环

我有一些关于 JavaScript 循环的问题。

问题 :

  • 为什么 JavaScript 循环会冻结浏览器
  • 为什么绘图速度很慢,即使它每 1 毫秒运行 1 次,而且它正在绘制最简单的东西!
  • 解决方案是什么?flash快要死了,我们现在该怎么办?

这是您自己尝试的画布代码: