关于Bitworld的一些话题222

2,046 views
1,957 views

Published on

珠三角技术沙龙游戏专场2011.05广州

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,046
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
34
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

关于Bitworld的一些话题222

  1. 1. 关于Bigworld 的一些话题 深红网络:杨铭
  2. 2. � 什么是bigworld� bigworld的特点� 一些注意事项
  3. 3. • 什么是bigworld bigworld bigworld? Bigworld是一套 老外开发的MMOG 解决方 案。
  4. 4. 构成• 客户端: 渲染引擎, 内容创建工具,navgen工具 max,maya 导出插件等• 服务器端: cellapp, baseapp, loginapp, dbmgr, cellappmgr, baseappmgr。 服务器端工具(web_console, space_viewer)
  5. 5. • 谁在用Bigworld? Bigworld? 网易,世纪天成,深红等• Bigworld 的一些作品 《天下2》, 《创世西游》,《猎国》 《坦克战争》等等
  6. 6. • Bigworld 开发平台:• Linux,python, MySQL,C++
  7. 7. �bigworld的特点
  8. 8. BigWorld 一些特点• 分布式架构 • 完善的控制后台• 动态平衡技术 • Web访问支持• 无缝大地图 • C++扩展• 可靠的udp协议 • Bot 支持• 灾难恢复技术 • 其他
  9. 9. 拓扑图: 分布式架构
  10. 10. 动态划分的cell
  11. 11. 动态平衡图
  12. 12. 无缝大地图: Real-Ghost
  13. 13. UDP 协议• 可靠,有序 游戏协议• 非可靠,有序 可定制。 聊天,坐标同步
  14. 14. 灾难恢复• Baseapp自动恢复• Cellapp自动恢复
  15. 15. BaseApp 恢复
  16. 16. Cellapp 恢复• Cellapp 自动从 对应的baseapp 重建• 如果某个 Entity 没有base部分,则不会重建。 比如, monster.• 可以设置,不需要恢复
  17. 17. 完善的控制台• 集群控制工具• 远程进程注入,便于调试• 性能分析,profile• Watcher• Space viewer
  18. 18. Web 访问支持• Bigworld.so, 支持 http方式从外部访问 比如,手机游戏等• http方式访问 urs,ebilling等。 支付,urs等。 (bg任务方式: 多线程,以及 select模型)
  19. 19. C++ 扩展• CPU 密集型,或者IO 操作。 如 物理校验,复杂的AI,A*等 如 外部网络链接,服务器端资源加载• Extra 扩展entity
  20. 20. Bot• 便捷的大规模机器人测试• 便捷编辑机器人AI
  21. 21. 其他• Mysql存储, seconddb. 未做脏数据处理。• Xml 定义存储。双面刃。• Client,cell,base 之间的 rpc调用• 一切皆是 entity• 无处不在的异步操作• 属性自动同步,坐标同步方式(高流量)• 属性可见域控制
  22. 22. �一些注意事项
  23. 23. 谨慎控制• 到底如何放置 cell,base 逻辑 省事的代价,是后期的重构• 规划好entity属性,存储属性 过多的属性,导致内网的流量剧增• 更多的分时逻辑 超时,有时候不仅仅是卡机,而是宕机• 精准的属性访问控制• 小心的控制LOD, AOI,利用起witness
  24. 24. 关于大宝的问题
  25. 25. �其服务器动态均衡技术,在实际使用时, 有没有遇到什么问题?• 数据在cell间同步,容易产生bug。飞速,buff,<- -- 复杂python 对象• 过于密集的场景传送,可能引起抖动• 无处不在的异步,会潜在引导逻辑集中在cell上• 属性可见性控制不好,会引起很大效率问题
  26. 26. �策划在设计内容时,有没有一些特殊的约 定或者制约?• 与所有MMOG 一样,同屏人数• 过于密集的传送,调戏动态平衡?迷失之地• 不是问题的问题:少动那些不在线的玩家数据
  27. 27. �机器数量的增加与可承载人数上限的增 加,是成线性比例关系吗?• 从全服来看,基本如此。 每个游戏逻辑的 core,可以支持200-300人。• 问题: 不要过于集中在一起
  28. 28. 其他• 程序开发效率确实比较高,至少对程序而 言
  29. 29. 其他• 对客户端不要有太多期待,尤其是UI
  30. 30. 其他• 如果bigworld宕机了,往往就是灾难
  31. 31. 其他• 10万人同服不是问题。问题是,我们的策 划能控制这样大的世界吗?
  32. 32. 其他• 不支持事物,不支持外键
  33. 33. 其他• treatAllOtherEntityAsGhost? 我们自己犯的 错
  34. 34. Thanks

×