问题标签 [flappy-bird-clone]

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 回答
935 浏览

objective-c - 学习Objective-C的最佳方式?

我的目标:

我的最终目标是制作一款 iPhone 游戏。我说的是 Flappy Bird 之类的游戏,没有什么特别复杂但简单、令人上瘾的游戏。

关于我:

我今年 24 岁,有一点 Python 经验,但我知道,就 Objective-C 而言,了解一点 Python 是没有用的。学习 Objective-C 的最佳方式是什么?我应该先学习C吗?

24岁进入这个阶段太晚了吗?或者还有可能吗?我应该买什么书?我看过一些 Big Nerd Ranch 的书,认为它们是垃圾——完全被高估了。

提前致谢。

0 投票
1 回答
263 浏览

android - 我玩过各种物理设置,但物体仍然感觉太“漂浮”

我正在使用带有 Box2D 引擎的 Corona SDK,并且我正在尝试制作 Flappy Bird 风格的游戏,只是为了熟悉物理引擎。我试过增加主角的密度,增加重力,改变物理舞台的比例等等,但主角还是觉得太“飘”了。

增加重力让我感觉正确,但仍然存在问题。如果用户连续快速点击屏幕,则气势迅速增加,角色高速飞离屏幕。这是我现在的代码:

在最初的 Flappy Bird 游戏中,它似乎有正常的重力,但快速点击屏幕不会让小鸟飞得太快。它几乎有一种像保龄球一样“重”的东西的感觉,但显然在这个世界上所有质量的物体都以相同的速度下落。我对物理引擎没有太多经验,所以我会很感激任何建议。

0 投票
1 回答
1607 浏览

java - 在我的飞扬小鸟游戏中,为什么每次我移动小鸟都不更新?

这是我的代码:

但是,当我运行它并按下空格键时,它不会显示鸟的个人动作,它只是在pause(100)每个for语句结束后将鸟传送到结束位置。我如何让它在我每次移动它时更新鸟的位置?

0 投票
1 回答
80 浏览

ios - 检测两个节点上的屏幕位置

我目前正在制作Flappy Bird副本。放松,它只是为了我和学习部分,我不会发布它,所以不要讨厌。

这只鸟被锁定在:

管道是这样生成的:

这是我唯一做的一些工作,是的,我是游戏开发的新手。FirstDistance 是第一根管道到达之前的距离:

我如何告诉更新方法管道通过鸟最有效?计算管道之间的像素并重置它?或者有什么方法可以检测它们何时通过?

0 投票
5 回答
10753 浏览

java - Android游戏中令人讨厌的滞后/口吃

我刚开始在 android 中进行游戏开发,我正在开发一个超级简单的游戏。

游戏基本上就像是飞扬的小鸟。

我设法让一切正常工作,但我遇到了很多口吃和滞后。

我用于测试的手机是 LG G2,所以它应该并且确实运行比这更重和更复杂的游戏。

基本上有 4 个“障碍”,它们彼此相隔一个全屏宽度。
游戏开始时,障碍物开始以恒定速度移动(朝向角色)。玩家角色的 x 值在整个游戏中是一致的,而其 y 值会发生变化。

延迟主要发生在角色通过障碍物时(有时也会在障碍物之后一点点)。发生的情况是,每次绘制游戏状态时都会出现不均匀的延迟,从而导致动作卡顿。

  • GC 没有按照日志运行。
  • 口吃不是因为速度太快造成的(我知道是因为在游戏开始时,当障碍物不在视线范围内时,角色移动很顺畅)
  • 我不认为这个问题也与 FPS 相关,因为即使 MAX_FPS 字段设置为 100,仍然存在口吃。

我的想法是,有一行或多行代码会导致某种延迟发生(从而跳过帧)。我也认为这些行应该围绕 ,和的update()draw()方法。 PlayerCharacterObstacleMainGameBoard

问题是,我对 android 开发和 android游戏开发还是新手,所以我不知道是什么导致了这种延迟。

我试着在网上寻找答案......不幸的是,我发现所有这些都指向 GC 应该受到指责。但是,我不相信这种情况(如果我错了,请纠正我)这些答案不适用于我。我还阅读了 android 开发者Performance Tips页面,但找不到任何帮助。

所以,请帮我找到解决这些恼人滞后问题的答案!

一些代码

主线程.java:

MainGameBoard.java:

PlayerCharacter.java:

障碍物.java:

0 投票
2 回答
3451 浏览

ios - 如何在随机高度产生 CCSprites,如飞扬的小鸟

iOS游戏flappy bird中,有一定距离后生成的管道,它们在随机高度生成

这是一张假图,但逻辑是一样的

我也在尝试制作飞扬的鸟管(我在我的代码中称它为树枝而不是管)。除了管道是垂直移动而不是水平移动,因为它是一个垂直滚动游戏(它像游戏涂鸦跳跃一样滚动)

这是我想要的图:https ://docs.google.com/drawings/d/18bxsVsNOlScCvgi1mwuzD2At7R6xKM3QCh6BfAVMuMo/edit?usp=sharing (水平线是分支)

所以这就是我迄今为止试图做的让垂直分支(或管道)......

在我的.h

在我的.m

setBranchInitialPosition方法

spawnNewBranches方法

scroll方法

现在,树枝出现了,但它们停留在左下角,根本不动,也不生成。我想让它们随着背景移动并在一定距离后生成,同时也在随机高度生成。我为你提供了我所有的代码,你知道我怎样才能做到这一点吗?提前致谢!

0 投票
1 回答
363 浏览

java - 进入状态错误,Slick2d

我正在创建一个飞扬的鸟式迷你游戏。出于某种原因,当我尝试从“菜单”状态进入我的实际“正在播放”状态并且“级别”状态将它们全部结合在一起时,出现了一个错误,一个新的错误被抛出,因为它之前正在工作。任何帮助将不胜感激,谢谢!

级别状态:将所有内容放在一起:

我的菜单状态:是玩家点击播放进入“正在播放”状态的地方:

Playing State,游戏发生的地方:

0 投票
1 回答
358 浏览

java - JavaGame角色在绘制时没有准确移动?

对于个人实践,我正在用 Java 重新制作桌面版 Flappy Bird,我已经成功完成了所有支柱的生成、屏幕、bg 移动,但现在我有一个问题,那就是性能。

我有时觉得游戏移动的速度没有那么快,有时会卡住 0.5 秒之类的,但事实并非如此,当我移动我的鸟时,它的移动有点奇怪,看起来它向前移动太多了然后在后面,观看 MP4 格式的 gif:

http://gyazo.com/d7e94c0b772192e5a5dd1d2b61b8c529

可能是什么原因造成的?这可能是我的游戏循环还是我绘制图形的方式?我不使用双缓冲,我只是通过在 jframe 中调用 .repaint 来渲染我添加的 JPanel。

游戏循环:

我的绘图区:

我渲染背景的方式是这样的:我一个接一个地添加背景,如果背景在框架之外,我不会渲染它。

这就是我移动我的鸟的方式(我不使用三角洲,使用了一些教程):

什么可能导致鸟类或背景滞后?我的渲染方式或游戏循环有问题吗?

fps 总是打印这个:

0 投票
0 回答
610 浏览

java - Java 游戏精灵在翻译背景上的移动出错

我正在为桌面制作一个飞扬的小鸟游戏作为一种学习体验,但不幸的是,出了点问题,我不知道如何解决。这是我的第一个滚动背景游戏,带有 fps 计算。

让我解释一下问题:

当我的游戏以 60 fps 运行时,这只鸟基本上看起来会随着背景快速地前后移动,如下所示:

(以 MP4 格式观看)

当我将我的游戏更改为 20 fps 时,它会飞得很好,但有时会向前小跳。

我不确定是我的电脑,还是我的渲染,或者我的游戏循环,还是我的小鸟运动系统。

什么可能导致这个问题?这是我的来源:

FlappyBird.java

Window,你真的不需要,因为它只包含我的 JPanel,screen.java:

Background.java(用于 bg 重复):

常量.java:

级别.java:

鸟.java:

支柱包

是什么导致了这种奇怪的渲染?

0 投票
1 回答
120 浏览

python - 如何让玩家图像暂停但游戏在pygame中继续?

我正在为扑动的鸟制作克隆,但是当我想让翅膀拍动时,它们会疯狂地快速拍动,所以有没有办法让它们在一张图像上暂停几秒钟,然后再切换到下一张?这是我的代码