问题标签 [cocos2d-iphone]

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 投票
8 回答
25631 浏览

iphone - 如何禁用触摸检测?

如何在运行的动作中禁用触摸检测,因为如果玩家在动作中单击并单击,我不希望角色像超人一样在天空中飞行,如果他们继续单击,角色将永远不会着陆。我找到了方法“isDone”,这和这个方法有关吗??玩家点击->动作(不能在动作中点击)->动作完成->再次点击.....这就是我想要的~

0 投票
2 回答
4771 浏览

iphone - cocos2d Sprite contentSize 问题

我使用 spriteWithFile 方法定义了一个精灵,提供了一个 120 像素 x 30 像素的 .png

当我将它添加到我的图层并定位它时,它就是我希望它出现在屏幕上的位置。

但是,它似乎没有 contentSize。以下 NSLog 语句:

给出以下读出:

我错过了什么吗?那不应该是 120.000000 乘 30.000000

任何帮助将不胜感激。

问候,

富有的

0 投票
1 回答
1996 浏览

iphone - 汽车转圈和移动精灵

我想在 iPhone 上使用 Cocos2d 来绘制一辆 2D 汽车,让它以自然的方式从左向右转向。

这是我尝试过的:

  1. 计算轮子的角度,然后将其移动到轮子指向的目标点。但这会产生一种非常不自然的感觉。汽车漂移了一半

  2. 之后,我开始研究如何获得汽车的转弯圆,这意味着我需要一些常数,比如轴距和汽车的宽度。

经过大量研究,我创建了以下代码:

前几行是我的常数。carPosition 是 CGPoint 类型。之后我尝试画一个圆圈来显示我的车的转弯圈,但它画的圆圈太小了。我可以让我的常数更大,让圆圈更大,但是我仍然需要知道如何在这个圆圈上移动我的精灵。

我尝试按照我在该主题上找到的.NET 教程进行操作,但我无法真正完全转换它,因为它使用了 Cocoa 不支持的矩阵。

有人可以给我一些关于如何开始的指示吗?我一直在寻找示例代码,但我找不到。

编辑在下面给出的评论之后, 我更正了我的常量,我的轴距现在是 50(精灵高 50 像素),我的 carWidth 是 30(精灵宽 30 像素)。

但是现在我有一个问题,当我的车第一次“滴答”时,旋转是正确的(还有位置),但之后的计算似乎是错误的。

转弯圆的中间移动而不是保持在原来的位置。我需要(我认为)是在汽车的每个角度我需要重新计算转弯圆的原始中心。我认为这很容易,因为我有半径和转弯角度,但我似乎无法弄清楚如何让汽车在一个漂亮的圆圈内移动。

还有更多指针吗?

0 投票
5 回答
465 浏览

iphone - 苹果手机,Cocos2d

有谁知道如何安装 cocos2d 以便它显示在新项目模板窗口中?

0 投票
4 回答
7926 浏览

iphone - Cocos2D-iPhone中的多线程OpenGL编程

为了尝试为我正在开发的 iPhone 游戏(使用 Cocos2D)创建加载栏,我想使用多线程方法。

一个线程显示加载屏幕并运行主应用程序事件循环,而一个新线程在后台静默加载所有 Sprite(通过spriteWithFile),然后将它们添加到图层。

我使用 NSThread 的detachNewThreadSelector方法创建新线程(该方法通过performSelectorOnMainThread将加载状态的更新发送到主线程)。

我面临的问题是,新线程中的任何 OpenGL 调用(例如在spriteWithFile方法中找到的调用)都会因 BUS ERROR 或某种内存访问错误而死掉。我假设这是因为两个线程都试图同时进行 OpenGL 调用,或者新线程不知道 OpenGL 上下文。

必须做什么才能允许多个线程使用 Cocos2D-iPhone 在 iPhone 上进行 OpenGL 调用。

0 投票
4 回答
2720 浏览

optimization - cocos2d 中的多粒子系统

我想知道我应该走哪条路ParticleSystem。在这种特殊情况下,我想同时创建 1-20 个小爆炸,但位置不同。现在我正在ParticleSystem为每个爆炸创建一个新的然后发布它,但这当然对性能非常不利。

我的问题是:有没有办法ParticleSystem用多个发射源创建一个。如果不是,我应该创建一个 init 数组,ParticleSystem然后在需要爆炸时使用一个免费的数组吗?还是我没有想到的另一种方法?

0 投票
1 回答
3132 浏览

iphone - cocos2d 移动物体

我试图在屏幕上移动一个对象,就像在游戏几何战争中一样。我可以很好地旋转对象,但是我似乎无法让它根据它所面对的方向移动。我在这里有这段代码,我认为这样做是正确的,但我不断收到语法错误:

错误是“请求成员 x 不在结构或联合中”。你如何在 Objective-c/cocos2d 语法中做到这一点?

0 投票
1 回答
1001 浏览

iphone - 在 cocos2d 中做不规则运动?

我正在制作一个简单的应用程序,其中实心圆圈在屏幕上弹跳。现在,圆圈的速度是固定的,但我希望它们随机加速或减速。

我最初尝试使用 NSTimer,但我发现无法将时间间隔设置为不规则的。根据 Apple 的文档,对于 NSAnimation 类,“与 NSTimer 不同,动画通知可以不规则的间隔发生,允许您创建看起来加速或减速的动画。”

所以看来我应该使用 NSAnimation 类。但是,当我查看 NSAnimation 中的绘图过程时,它似乎笨重且有限。我想制作几个圆圈并为它们的行为定义参数,所以我喜欢使用更简单的框架,例如 cocos2d-iphone。

可以用cocos2d的调度器做不规则的间隔吗?还是我必须使用 NSAnimation?

cocos2d 调度器如下所示:

0 投票
3 回答
691 浏览

iphone - 如何创建一个带有一些文本的 MenuItemImage?

我想从带有一些文字的图像创建一个菜单项。图像是一个按钮,我必须在按钮上写下播放器的名称,所以我假设我必须同时使用 MenuItemImage 和 MenuItemFont。

也许我可以使用图像和文本创建一个 AtlasSprite,然后使用 MenuItemAtlasSprite 对象?如果是这样,我该如何创建该合成图像?

实现这一功能的推荐方法是什么?

谢谢水壶

0 投票
1 回答
4017 浏览

iphone - 在 cocos2d 中检测触摸*屏幕上的任何位置*?

真的很抱歉,我意识到有几个关于 cocos2d 触摸检测的问题(包括这个对我有帮助的答案),但我无法让它们中的任何一个工作。我会评论我链接的答案,而不是问我自己的问题,但我没有足够的代表来发表评论。

我要做的就是在用户点击屏幕上的任意位置时立即停止动画。

到目前为止,这是我的代码:

我已经在 layer 文件和 cocosNode 文件中尝试了BOOLand voidccTouchesBeganand ,以及许多其他东西。touchesBegan没发生什么事。日志中没有显示任何内容,动画继续其快乐的小路。我究竟做错了什么?