• This repository has been archived on 06/Jul/2023
  • Stars
    star
    622
  • Rank 72,195 (Top 2 %)
  • Language
    C#
  • License
    MIT License
  • Created almost 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

MotionFramework is unity3d game framework.

MotionFramework

MotionFramework是一套基于Unity3D引擎的游戏框架。框架整体遵循轻量化、易用性、低耦合、扩展性强的设计理念。工程结构清晰,代码注释详细,该框架已被应用于多款商业化的游戏项目,是作为创业游戏公司、独立游戏开发者、以及初学者们推荐的游戏框架。

image

支持版本

Unity2018.4+

开发环境

C# && .NET4.x

核心系统

  1. 引擎 - 游戏框架的核心类,它负责游戏模块的创建和管理。在核心系统的基础上,提供了许多在游戏开发过程中常用的管理器,可以帮助开发者加快游戏开发速度。
  2. 日志 - 游戏框架的日志系统,开发者通过注册可以监听框架生成的日志。
  3. 控制台 - 在游戏运行的时候,通过内置的控制台可以方便查看调试信息。控制台预设了游戏模块,游戏日志,应用详情,资源系统,引用池,游戏对象池等窗口。开发者可以扩展自定义窗口。
  4. 引用池 - 用于C#引用类型的对象池,对于频繁创建的引用类型,使用引用池可以帮助减少GC。
  5. 资源系统 - 依赖于经过商业化产品验证的YooAsset资源系统。
  6. 网络系统 - 异步IOCP SOCKET长连接方案,支持TCP和UDP协议。支持同时建立多个通信频道,例如连接逻辑服务器的同时还可以连接聊天服务器。不同的通信频道支持使用不同的网络包编码解码器,开发者可以扩展支持ProtoBuf的网络包编码解码器,也可以使用自定义的序列化和反序列化方案。
  7. 有限状态机 - 流程状态机是一种简化的有限状态机。通过流程状态机可以将复杂的业务逻辑拆分简化,例如:整个资源热更新流程可以拆分成多个独立的步骤。

管理器介绍

游戏开发过程中常用的管理器

  1. 事件管理器 (EventManager)
  2. 网络管理器 (NetworkManager)
  3. 资源管理器 (ResourceManager)
  4. 音频管理器 (AudioManager)
  5. 配表管理器 (ConfigManager)
  6. 场景管理器 (SceneManager)
  7. 窗口管理器 (WindowManager)
  8. 补间管理器 (TweenManager)
  9. 游戏对象池管理器 (GameObjectPoolManager)

新手教程

  1. 游戏启动器 (GameLauncher)

DEMO

Demo 使用MotionFramework制作的一款RPG单机游戏。

代码规范

请参考代码规范

贡献者

何冠峰 任志勇 ZensYue 徐烜 张飞涛