`
eric_weitm
  • 浏览: 235077 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于cocos2dx的主循环

 
阅读更多

关于cocos2dx的主循环

1、调用栈

cocos2d::CCDirector::drawScene()  Line 268C++

cocos2d::CCDisplayLinkDirector::mainLoop()  Line 1055C++

cocos2d::CCApplication::run()  Line 67 + 0x20 bytesC++

2、drawScene主逻辑

m_pScheduler->update

切换scene

m_pRunningScene->visit

    排序

    按着zorder依次画每个child(没有culling的过程,只能程序自己用visible属性来进行场景剔除,即即使是看不到的sprite,也会调用opengl进行渲染)

    递归draw每个node

3、update的处理逻辑

   按着优先级 <0 =0 >0 依次update每个模块(通过scheduleupdate放进来的需要每帧执行的函数)

   自定义的handler(通过timer累积时间,时间到了之后回调过来)

   脚本的tick

   删除不同的handler

 

4、好处 

可以看到scheduler的update是完全松散的管理的,这样提高了灵活性,如果需要添加网络等别的模块也可以方便的使用timer集成进来

 

分享到:
评论

相关推荐

    龙灵修-讲Lua的cocos2d-x进阶视频.rar

    cocos2d-x进阶教程1_5Lua中循环语句和逻辑运算关键字.mp4 cocos2d-x进阶教程1_6LuaTable使用1.mp4 cocos2d-x进阶教程1_7LuaTable使用2.mp4 cocos2d-x进阶教程1_8LuaTable使用3.mp4 cocos2d-x进阶教程1_9LuaTable读写...

    Cocos2d-x 3.2 大富翁游戏项目开发-第十部分实现人物轮流行走

    Cocos2d-x 3.2 大富翁游戏项目开发-第十部分实现人物轮流行走

    cocos2d 总结:四 背景的循环移动

    NULL 博文链接:https://o0o0o0o.iteye.com/blog/805601

    cocos2dx课程游戏主循环.pdf

    cocos2dx课程游戏主循环

    Cocos2d-x地图随精灵无限滚动与边缘检测----《赵云要格斗》

    实现了精灵向右运动到地图中间时,地图能跟着移动,但此时精灵是原地不动只是播放跑动画。并且,当地图移动到边缘时,地图不在移动,但此时精灵能移动同时播放跑动画。有不懂的地方,具体可以看我的文章 ...

    Cocos2d-x 3.0多线程异步加载资源实例

    Cocos2d-x从2.x版本到上周刚刚才发布的Cocos2d-x 3.0 Final版,其引擎驱动核心依旧是一个单线程的“死循环”,一旦某一帧遇到了“大活儿”,比如Size很大的纹理资源加载或网络IO或大量计算,画面将 不可避免出现卡顿...

    cocos2dx动画工具

    最近在制作cocos2dx下的动画,使用的flashToCocos2d的工具集,生成的动画是不可换皮的,而且底层代码很多,出现问题解决起来比较麻烦,所以业余时间写了一个工具。按照一定的规范制作动画,然后放置在场景上导出成...

    MyWuXainGunDong.zip

    无线滚动视差背景 背景循环滚动 cocos creator2.4.5 2D RPG地图实现

    一款基于cocos2dx开发的文字游戏引擎。lite2d.zip

    循环结构:游戏使用 while 循环,直到玩家猜对为止。玩家每次猜测后,根据猜测的数字与目标数字的大小关系,给出相应的提示,并根据猜测结果决定下一步的操作。 用户输入处理:通过 Console.ReadLine() 获取用户...

    DJInfiniteScrollPicker

    cocos2d-x3.0下循环链表的Demo,详情见http://blog.csdn.net/qqmcy/article/details/27393011

    AnimatePacker(动画编辑器)v2.0绿色版

    AnimatePacker动作打包工具,方便自己编辑动作,... 开发背景: 我一直比较吐槽cocos2d-x那个动画加载方式,一个简单动画的加载,就需要写十几行代码。其中加载的代码占了好多,我们可以通过刷循环简化。也就是说,理

    Cocos2dXLessons20131011

    #Cocos2d-x 6周课程 ##1. C语言 ###知识点 C语言入口方法 C语言标准输入与输出 C语言方法调用 C语言宏定义 C语言宏方法定义 C语言条件判断 C语言循环 C语言结构体 构建结构体及销毁结构体 C语言typedef关键字 C语言...

    SwfTo2dX_V1.0

    最近在制作cocos2dx下的动画,使用的flashToCocos2d的工具集,生成的动画是不可换皮的,而且底层代码很多,出现问题解决起来比较麻烦,所以业余时间写了一个工具。按照一定的规范制作动画,然后放置在场景上导出成...

    基于C++虚幻4的大逃杀游戏

    虚幻引擎4的第三个人生存游戏完全是用C++制作的。 项目概述 C++课程的特点包括C++游戏框架的构建,包括“动作系统”和事件...包含敌人、物品、得分和时间的游戏循环。 携带障碍物等物品的能力,并讨论了游戏网络。

    9-4回调加动作

    1.实现带一个参数或者两个参数的方法回调。 2.实现按钮围绕屏幕转动。 3.实现场景的切换(中间要...4.实现label的循环旋转+不停的来回移动。 博客参考:http://blog.csdn.net/dingxiaowei2013/article/details/11116155

Global site tag (gtag.js) - Google Analytics