在 cocos2d 中处理游戏循环

发布于 2024-10-15 19:18:35 字数 198 浏览 2 评论 0原文

如何同时处理游戏的多个元素?

在背景/图块地图在每个游戏循环中移动的滚动条中,如何同时处理用户输入?

地图需要在游戏循环中移动,需要检查玩家对象和地图上不应该碰撞的部分的碰撞,还需要一些代码来接受用户输入,在地图上移动玩家并也检查碰撞吗?

这些应该是线程化的还是在 cocos2d 中如何完成这些?

有没有内置的方法?

How does one handle multiple elements of a game at once?

In a scroller which the background/tilemap moves every gameloop how is the user input handled at the same time?

The map needs to be moved in the game loop and collision needs to be checked for the player object and parts of the map which it shouldnt hit, and there also needs to be code which takes the user input, moves the player on the map and checks for collisions too?

Should these be threaded or how are these done in cocos2d?

Are there any built in methods?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

飘逸的'云 2024-10-22 19:18:35

注册具有指定间隔的步骤方法。

[self schedule:@selector(step:) interval:1.0/60.0];


// Main loop of the application
-(void) step:(ccTime)delta
{
     // do your step actions here
}

尝试并避免注册多个步骤方法。您可以一步完成您需要的一切。您不需要使用线程。

Register a step method with a specified interval.

[self schedule:@selector(step:) interval:1.0/60.0];


// Main loop of the application
-(void) step:(ccTime)delta
{
     // do your step actions here
}

Try and avoid registering multiple step methods. You can do everything you need in one step method. You don't need to use threading.

甜柠檬 2024-10-22 19:18:35

最好注册更新方法

[self scheduleUpdate];

,然后根据需要重写更新方法,

-(void) update:(ccTime)delta
{
    //All steps happen here
}

这将由 cocos2d 在游戏的每一帧中更准确地调用,而不是安排新的更新方法。

(Cocos2dx 版本:this->scheduleUdate(), void update(float delta);

It is prefer to register the update method

[self scheduleUpdate];

Then override the update method as you like

-(void) update:(ccTime)delta
{
    //All steps happen here
}

this will be called in every frame of your game more accurately by the cocos2d than schedule a new one.

(Cocos2dx version: this->scheduleUdate(), void update(float delta);)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文