基于聚合状态机的游戏引擎架构.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于聚合状态机的游戏引擎架构 呈天游 霍殿岩 目录 • 游戏架构问题 • 游戏引擎框架 – 引擎结构、对象组织、组合聚合、状态机 • 聚合状态机 – 结构、特性、应用形态 • Unity3D应用案例 – 引擎框架、游戏结构、应用案例 • 总结 – 优劣势、适用范围、QA 游戏架构问题 游戏创作需求 游戏架构需求 • 业务需求、产品需求 – 多、快、好、省 – 复制、移植、适配、改造、国际化 • 运维需求 – 自动化、可扩展、易控制 • 研发需求 – 快速原型、敏捷迭代 • 技术需求 – 松耦合、易重构、可扩展、拆分 游戏引擎框架 游戏引擎框架 • 物理适配 – 声音、输入、文件、网络、绘图、平台适配等 • 服务管理 – 内存管理、多线程、事件、资源、脚本等 • 集成环境 – 多语言、资源、编辑、发布、部署等 • 游戏扩展 – 物理、动画、高级绘图、游戏对象 • 游戏对象组织与流程控制 游戏对象结构 • 游戏对象组织 – 导演、舞台、场景、精灵和精灵的孩子们 – 游戏对象树状聚合 – 游戏对象创建、查询、释放 • 基础对象:可管理性 – 资源、引用、获取 • 游戏对象:可控性 – 查询、关系、组合、聚合、生命周期 游戏对象定义 • 继承 (是一个) • 组合与聚合(有一个) – 组件 • View • Control – Behaviour行为 – FSM有限状态机 • Model – 静态、动态、网络同步 游戏对象定义 游戏流程控制 • 基础流程 – 更新线程、渲染线程、其他线程(计算、IO ) • 流程控制 – 接口、函数、消息、事件、回调 – 有限状态机 有限状态机(FSM ) • 组成 – 状态(State ):Enter、Exit – 转换(Transition ) – 动作(Action ) – 事件(Event ) – 变量(Variable ) 有限状态机(FSM )定义 聚合状态机 游戏引擎架构与聚合状态机 聚合状态机定义 • 游戏(应用)由游戏对象多级聚合而成 • 游戏对象由组件组合而成,其数据、展现、 控制都体现在组件中 • 游戏对象的生命周期处在多种状态中 • 游戏对象在状态中响应事件、实施行为 • 游戏对象主动或被动的转换状态 • 游戏对象间通过状态机传递信息、事件, 相互影响、驱动流程 聚合状态机设计 聚合状态机应用——游戏主流程 聚合状态机应用——角色控制 聚合状态机应用——NPC AI控制 聚合状态机特性 • 松耦合 • 结构化 • 事件驱动 • 组件复用 聚合状态机适用范围 • 适用范围 – 游戏框架与流程控制 – 游戏对象定义与控制 – 引导教学控制 – 过场动画 Unity3D应用案例 Unity3D引擎 • 底层适配 – 物理适配、服务管理、集成环境、游戏扩展 • 游戏对象组织管理 – 游戏对象、组件、行为扩展 • 游戏流程控制 – 事件、代理、消息 – PlayMaker插件 游戏对象定义 总结 聚合状态机优劣势与适用范围 • 优势 – 易理解易应用,降低设计、开发难度 – 结构清晰松耦合,降低维护、重构成本 – 便于团队集成制作,降低沟通成本 • 劣势 – 复杂产品游戏对象结构较臃肿,即时性响应效率较低 – 状态、动作对象多,关系冗余,需要后期逐步优化 • 适用范围 – 快速产品原型,MVP – 中小团队中小型产品 – 以内容、体验为主中心

文档评论(0)

xingyuxiaxiang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档