Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

基于Cocos2 d x二次开发的自有引擎方案分享-mobile 2d framework en

1,073 views

Published on

Published in: Technology, Travel
  • Be the first to comment

基于Cocos2 d x二次开发的自有引擎方案分享-mobile 2d framework en

  1. 1. Mobile 2D Framework by Happy Elements Cong Ling
  2. 2. Agenda 为什么 整体设计 Q&A
  3. 3. 为什么使用cocos2dx?
  4. 4. 我们使用过的技术 Cocos2d-iphone HTML5 Flash air port Cocos2dx Conora Unity 跨平台 可控性
  5. 5. 为什么脚本化?
  6. 6. 多版本维护 IOS和很多Android市场无法做到增量更新 大包包含所有分辨率,浪费带宽和存储 更新问题 Google Play:2小时 IOS:5天 审核周期
  7. 7. 开发调试工具全部不一样 Context被破坏 真机调试的问题 调试困难 编译、部署、调试需要写脚本 Eclipse对NDK的支持很弱,特别是 debugging Gdb在windows下有问题 需要使用MAC去编译、部署、调试IOS Android
  8. 8. 50%的联调时间在处理crash 引用计数池的问题 Context/Stack会丢失,特别是在优化版本 Crash 上线标准 5% crash rate over 5000 minutes testing sessions
  9. 9. 为什么选择lua?
  10. 10. 简单、可控 Lua最轻 国内市场商业最成熟的是 cocos2dx+lua 解决方案
  11. 11. 我们做了那些改进?
  12. 12. Android:Java lua IOS: OC  Lua 第三方库集成接口
  13. 13. IDE和调试器 UI编辑器 动画编辑器 TTF字体导出工具 工具
  14. 14. COCOS2D-X Develop Tools 内存混淆 本地化 Utils 网络库 资源管理 Crash 渲染 脚本引擎 第三方接入 帐户系统 SNS接入 支付接入 Notification DC打点 广告&积分墙 Log Tracker CI service IDE 自动化Build脚本 调试工具 打包工具 日志管理 Engine
  15. 15. Lua scripting runtime tolua++ Cocos2dx/Comm on Lib iOS native api luajava iOS 3rd party API Android 3rd party API Android native API Interface w/ languages Wax
  16. 16. 基于Zerobrane 改善断点性能-提高100x 支持symbols和文件的快速定位 Push to device 改善智能提示 Lua调试器
  17. 17. Stub Debugger iOS stub Android stub Windows stub 文件列表和MD5 连接debugger 连接成功 日志和断点 改变了的文件 推送文件 关闭连接 发送命令 文件部署过程调试过程 Push to device
  18. 18. • 更新一定要Transaction • 增量更新 • 按需下载 • 功能模块 • 分辨率 (分辨率匹配) • 资源加密 • APK更新(国内android市场) Resource Manager-设计目的
  19. 19. APK/app目录 Resource Manager-设计 Current Resource Locator Resource Locator version Content with md5 name Old Resource Locator Document目录 Content with md5 name Content with md5 name
  20. 20. Client CDN Dynamic Server 获取当前配置 下载配置 下载资源 查看当前配置是否是最新的 查看那些资源没有 增量更新
  21. 21. Client CDN Game Res Mgr Ensure Modules 本地缓存了? 下载资源 回调结果 按需下载 加载资源
  22. 22. 客户端配置管理 (支持lua/c/java) Utils Meta信息(支持lua/c/java)
  23. 23. Crash分析系统 PLCrash reporter Google breakpad Crash Analysis Center Log tracker Game Crash folder Crash Sent Task 开发人员 Symbol Center Build
  24. 24. Hudson做build管理 手机下载安装 新版本下载提示、自动安装更新包 Crash/日志采集和分析 Session time分析 CDN同步检查 Udid检测、申请流程 一键发布到App store和Google Play (future) Build/CI
  25. 25. Build/CI Build.s h symbol s Hudso n apk/ipa/pn g resources Adhoc.mobile provision svn build_version Projec t.plist Safari Mobile Browser Udid Check Resource Manager CDN Crash Analysis Latest Version Client Manager
  26. 26. Dragon Bones ■ Flash CS5.5+Plugin ■ UI Editor ■ Animation Editor Font editor ■ BMP Font ■ TTF 工具
  27. 27. Particle designer Glyph designer 第三方工具
  28. 28. 多谢开源项目 Cocos2dx https://github.com/cocos2d/cocos2d-x LuaJava http://www.keplerproject.org/luajava/ Wax https://github.com/probablycorey/wax
  29. 29. ZeroBrane https://github.com/pkulchenko/ZeroBraneStudio Mobdebug https://github.com/pkulchenko/MobDebug DragonBones http://dragonbones.github.com 多谢开源项目
  30. 30. 你想和一群有创造力、想象力的人一起工作吗? 你相信工程师能改变世界吗? 你想不断挑战、提升自己的能力吗?
  31. 31. 请加入我们吧! 联系人:柳小姐(HR) QQ : 2459685715 E-mail:lu.liu@happyelements.com C++ Java

×