首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cocos2d:对多个精灵使用单个计时器/调度器

Cocos2d:对多个精灵使用单个计时器/调度器
EN

Stack Overflow用户
提问于 2012-08-04 19:06:39
回答 1查看 254关注 0票数 0

我想知道是否可以对多个精灵使用单个计时器或调度器方法?就像我现在正在开发一个游戏,可能有任意数量的精灵,我想在所有这些精灵上执行一些动作,所以我必须使用和精灵一样多的计时器或调度程序吗?或者,如何仅使用单个计时器或调度器来完成作业?如果我调度一个方法并将其用于10个精灵,会怎么样呢?它会影响性能吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-05 03:20:09

这在大多数游戏中都很常见。通常,你会使用一个相似的对象列表来进行不同的操作。粒子系统的工作原理是这样的,它们使用单个对象更新所有精灵的位置。在我的游戏中,我有很多对象,每个对象都有自己的更新功能,即使它们是同一类型的。

代码语言:javascript
复制
for (GameObject* object in objects)
    [object update:dt];

我猜这更多的是一个性能问题,一旦你遇到问题,或者如果你知道你将进行繁重的处理,那么应该对其进行优化。像这样的东西可能在update函数上,会涉及更少的函数调用,可能会更有效,但我不认为它真的值得这样做,因为id首先尝试优化的东西可能会在绘图端而不是逻辑端(就像spritebatch或粒子系统那样)。

代码语言:javascript
复制
for (CCSprite* sprite in sprite)
{
    sprite.x = someVariable;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11808143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档