• Unity 游戏框架搭建 (十三) 无需继承的单例的模板

    Posted by : 袁艳平 on 2017年8月30日

    之前文章中介绍的Unity 游戏框架搭建 (二) 单例的模板和Unity 游戏框架搭建 (三) MonoBehaviour单例的模板有一些问题。 存在的问题: 只要继承了单例的模板就无法再继承其他的类。 虽然单例继承其他类是比较脏的设计,但是难免会遇到不得不继承的时候。没有最好的设计,只有最合适的设计。 解决方案: 首先实现单例的类从使用方式上应该不变,还是 XXX.Instance.ABCFunc() 之前的单利的模板代码如下所示: using Syst

    阅读全文...

  • Unity 游戏框架搭建 (十二) 简易AssetBundle打包工具(二)

    Posted by : 袁艳平 on 2017年8月30日

    本篇文章的核心api还是: BuildPipeline.BuildAssetBundles (outPath, 0, EditorUserBuildSettings.activeBuildTarget); 在第三个参数中,只要传入不同平台 BuildTarget就可以了。目前只考虑Android和iOS平台。 区分iOS、Android平台。 很简单,只要在上篇文章的QABEditor类中将原来的BuildAssetBundle方法分为BuildAsset

    阅读全文...

  • Unity游戏框架搭建(十一)简易AssetBundle打包工具(一)

    Posted by : 袁艳平 on 2017年8月30日

    看统一官方的AssetBundle(以下简称AB)的教程,也照着做了一遍,不过做出来的AssetBundleManager的API设计得有些不太习惯。目前想到了一个可行的解决方案.AB相关的内容有点多,所以为了良好的阅读体验,就把教程分为几个小文章,一次写一个点。 1.AssetBundle设置: 首先要确定一个专门打资源包用的目录,我的框架定的目录是QArt / QAB,并存放了一些Prefab资源,如下所示。 然后选定TestAB目录,将检查窗口的设置

    阅读全文...

  • Unity 游戏框架搭建 (十) QFramework v0.0.2小结

    Posted by : 袁艳平 on 2017年8月30日

    从框架搭建系列的第一篇文章开始到现在有四个多月时间了,这段时间对自己来说有很多的收获,好多小伙伴和前辈不管是在评论区还是私下里给出的建议非常有参考性,在此先谢过各位。 说到是一篇小节,先列出框架的概要图。 目前,图中除了UI模块和未支持的部分,都有相应的文章来介绍。 设计模式: Unity 游戏框架搭建 (二) 单例的模板 Unity 游戏框架搭建 (三) MonoBehaviour单例的模板 事件: Unity 游戏框架搭建 (五) 简易消息机制 AI:

    阅读全文...

  • 统一游戏框架搭建(九)减少加班利器-QConsole

    Posted by : 袁艳平 on 2017年8月30日

    如何使用? 使用方式和QLog一样,在初始化出调用,简单的一句。 QConsole.Instance(); 就好了,使用之后效果是这样的。  在编辑模式下,F1控制开关。 在真机上需要在屏幕上同时按下五个手指就可以控制开关了。(本来考虑11个手指萌一下的)。 实现思路: 1.首先要想办法获取日志,这个和上一篇介绍的QLog一样,需要使用Application.logMessageReceived这个api 2.获取到的日志信息要存在一个队列或者列表中,然后

    阅读全文...

  • 八卦游戏框架搭建(八)减少加班利器-QLog

    Posted by : 袁艳平 on 2017年8月30日

    现在框架中的QLog: 怎么用呢?在初始化的地方调用这句话就够了。 QLog.Instance (); 其实做成单例也没有必要.... 日志获取方法: PC端或者Mac端,日志存放在工程的如下位置:打开之后是这样的:最后一条信息是触发了一个空指针异常,堆栈信息一目了然如果是iOS端,需要使用类似同步推或者iTools工具获取日志文件,路径是这样的:Android端的话,类似的方式,但是具体路径没查过,不好意思... 初版 一开始想做一个保存Debug.Lo

    阅读全文...

  • Unity 游戏框架搭建 (七) 减少加班利器-QApp类

    Posted by : 袁艳平 on 2017年8月30日

    App类的职责: 1.接收Unity的生命周期事件。 2.做为游戏的入口。 3.一些框架级别的组件初始化。 本文只介绍App的职责2:做为游戏的入口。 Why? 在我小时候做项目的时候,每次改一点点代码(或者不止一点点),要看下结果就要启动游戏->Loading界面->点击各种按钮->跳转到目标界面看结果或者Log之类的。一天如果10次这种行为会浪费很多时间,如果按照时薪算的话那就是......很多钱(捂嘴)。 流程图是这样的: 为什么会

    阅读全文...

  • Unity 游戏框架搭建 (六) 关于框架的一些好文和一些思考

    Posted by : 袁艳平 on 2017年8月30日

    在进行项目架构阶段,游戏框架可以解决一部分问题。剩下的架构问题还需要根据不同的项目解决。总之游戏框架是游戏架构的一部分。 关于锤子和钉子: 最近又拿起了《代码大全》和《暗时间》,想起来《暗时间》的作者维护了一个个人博客,就去逛一逛。 这几天一直琢磨一句话:手里拿着锤子看什么都像钉子。于是翻到了博客锤子和钉子。我的这个行为很好的阐述了什么叫:手里拿着锤子看什么都想钉子- -。 看完之后深度自省了一下- - 文章很有趣,推荐大家读下。 对于框架,用锤子和钉子来

    阅读全文...

  • Unity 游戏框架搭建 (五) 简易消息机制

    Posted by : 袁艳平 on 2017年8月30日

    什么是消息机制? 23333333,让我先笑一会。 为什么用消息机制? 三个字,解!!!!耦!!!!合!!!!。 我的框架中的消息机制用例: 1.接收者 using UnityEngine; using System.Collections; using QFramework; /// <summary> /// 1.接收者需要实现IMsgReceiver接口。 /// 2.使用this.RegisterLogicMsg注册消息和回调函数。 /

    阅读全文...

  • Unity 游戏框架搭建 (四) 简易有限状态机

    Posted by : 袁艳平 on 2017年8月30日

    为什么用有限状态机? 之前做过一款跑酷游戏,跑酷角色有很多状态:跑、跳、二段跳、死亡等等。一开始是使用if/switch来切换状态,但是每次角色添加一个状态(提前没规划好),所有状态处理相关的代码就会指数级增长,那样就会嗅出代码的坏味道了。在这种处理状态并且状态数量不是特别多的情况下,自然就想到了引入状态机。 优点: 1.使代码整洁,状态容易扩展和管理。 2.可复用。 3.还没想到..... 缺点: 1.也没想到...... 什么是有限状态机? 解释不清楚

    阅读全文...

  • 1
  • 2(current)
  • 3