Skip to content

sunjiahaoz/QFramework

This branch is 1424 commits ahead of, 256 commits behind liangxiegame/QFramework:master.

Folders and files

NameName
Last commit message
Last commit date
Jan 24, 2021
Nov 8, 2020
Dec 31, 2020
Mar 19, 2021
Dec 31, 2020
Jan 2, 2021
Mar 19, 2021
Mar 19, 2021
Mar 1, 2021
Feb 7, 2018
Oct 20, 2020
Oct 20, 2020
Oct 3, 2020
Oct 3, 2020
Oct 3, 2020
Jan 2, 2021
Mar 15, 2021
May 17, 2020
May 15, 2020
Dec 12, 2020
Jan 2, 2021
Mar 15, 2021

Repository files navigation

Build Status Coverage Status

QFramework 简介 Intro

QFramework 是一套 渐进式快速开发 框架。目标是作为无框架经验的公司、独立开发者、以及 Unity3D 初学者们的 第一套框架。框架内部积累了多个项目的在各个技术方向的解决方案。学习成本低,接入成本低,重构成本低,二次开发成本低,文档内容丰富(提供使用方式以及原理、开发文档)、插件丰富。github:https://github.com/liangxiegame/QFramework

QFramework is a Progressive and RAD framework.Goal is become indie developer and fresh man's The First Framework。It's include many project's tech solution.Easy 2 Learn,Easy 2 Install,Easy 2 Refactor,Easy 2 Modify,Feature Packed documents and plugins. github:https://github.com/liangxiegame/QFramework

码云国内镜像仓:https://gitee.com/liangxiegame/QFramework

ShowCase(商业案例)

谐音梗挑战

Star 趋势(如果项目有帮到您欢迎点赞)

Stargazers over time

快速图解:

1.ViewController和Bind的基本使用 自动生成脚本

自动生成的脚本如下:

2.ViewController和ViewController的嵌套使用

自动生成的脚本如下:

3.自动生成Prefab

4.使用UIKit创建Prefab和脚本

自动生成的脚本如下:

5.使用UIKit子控件UIElement

快速开始 QuickStart:

1.Action Kit

  • chainning style(Driven by MonoBehaviour or Update)
this.Sequence()
	.Delay(1.0f)
	.Event(()=>Log.I("Delayed 1 second"))
	.Until(()=>something is done)
	.Begin();
  • object oriented style
var sequenceNode = new SequenceNode();
sequenceNode.Append(DelayAction.Allocate(1.0f));
sequenceNode.Append(EventAction.Allocate(()=>Log.I("Delayed 1 second"));
sequenceNode.Append(UntilAction.Allocate(()=>something is true));

this.ExecuteNode(sequenceNode);

2.Res Kit

// allocate a loader when initialize a panel or a monobehavour
var loader = ResLoader.Allocate();

// load someth in a panel or a monobehaviour
loader.LoadSync<GameObject>("resources://smobj");

loader.LoadSync<Texture2D>("resources://Bg");

// load by asset bundle's assetName
loader.LoadSync<Texture2D>("HomeBg");

// load by asset bundle name and assetName
loader.LoadSync<Texture2D>("home","HomeBg");


// resycle this panel/monobehaivour's loaded res when destroyed 
loader.Recycle2Cache();
loader = null;

3.UI Kit

// open a panel from assetBundle
UIKit.OpenPanel<UIMainPanel>();

// load a panel from specified Resources
UIKit.OpenPanel<UIMainPanel>(prefabName:"Resources/UIMainPanel");

// load a panel from specield assetName
UIKit.OpenPanel<UIMainPanel>(prefabName:"UIMainPanel1");

技术支持 Tech Support:

下载地址 Download:

赞助 Donate:

  • 如果觉得不错可以在 这里 Asset Store 给个 5 星哦~ give 5 star
  • 或者给此仓库一个小小的 Star~ star this repository
  • 以上这些都会转化成我们的动力,提供更好的技术服务!

运行环境

  • Unity 5.6.x ~ 2020.x

可选的包含项目 Include Projects:

参考 Reference:

贡献者/感谢 Developer/Contributor:

优秀的 Unity 库、框架

  • ET:ET Unity3D Client And C# Server Framework
  • xasset: xasset 致力于为 Unity 项目提供一套精简稳健的资源管理环境
  • TinaX: 开箱即用的 Unity 开发框架,支持 Lua。
  • IFramework(OnClick) Simple Unity Tools
  • JEngine JEngine is a streamlined and easy-to-use framework designed for Unity Programmers.

代码规范完全遵循:

QCSharpStyleGuide

About

Your first K.I.S.S Unity 3D Framework.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%