首页 > 技术文章 > QFramework Pro 开发日志(二)为啥要搞 Pro

liangxiegame 2022-03-06 13:09 原文

自己的独立游戏《鬼山之下》鸽了有半年了。

上一次《鬼山之下》的大规模的功能新增是在 8 月份左右。然后感觉一直用 AssetStore 的素材也不是长久之计。于是就花了 2 个月的时间去学美术去了,把美术需要的基础都过了一遍,而现在基本上美术可以说是入门了。学完美术就到 10 月份了,还有一个月就双十一,于是就全部时间都花在了双十一的新课筹备上了,然后就一直忙,忙到 1 月 1 日,反正面包是要排在理想之前的。

在 1 月 1 日的时间点,自己的大部分教程都完结了,于是就又开了新坑,开始准备一个平台跳跃的课程案例,准备了 1 个月,2 月份开始录制课程,录了一个月加上春节初二~初四连续在 b 站直播 3 天,每天 3 ~ 6 小时的直播时长,结果嗓子就开始发炎了,连续打了一周点滴没见好,医生说只能静养了,课就不能录课了。

所以自己的所有正在进行的课程都暂停掉了。

这个时候我在想能做什么事情,一是可以接着制作《鬼山之下》,二是接着往下制作平台跳跃课程的案例。

结果我选择了搞 QFramework Pro 版本。

为啥要搞 QFramework 的 Pro 版本。

这里简单说明一下,在之前 QFramework 的大部分用户群体都是在公司上班的童鞋,可以说 QFramework 开源版本是面向企业和公司的。

而自己有半年多的独立游戏《鬼山之下》的制作经验,在个人或者小团队制作独立游戏的时候,要解决的问题与企业或者公司要解决的问题是有不少区别的。

公司和企业由于大部分都是做移动端手游的居多,所以游戏的性能很重要,于是就有了一些资源管理方案,QFramework 的资源管理方案是 ResKit。还是由于性能问题,游戏的界面最好可控管理,不能一股脑地把所有界面扔到场景就行了, 还要考虑 Canvas 的 Mesh 重建、层级管理、加载卸载等问题,在这个基础上还要考虑界面的制作效率问题,所以可能会用 FGUI、psd 2 ugui 等解决方案,但是一般面向企业或者公司的框架都会有个 UI 管理框架,有了 UI 管理,可以将没个界面的工作分工出去,而不会造成冲突,也就是说有了 UI 管理也方便团队协作。

根据以上简单的分析可以得知,面向企业的方案考虑的指标:

  • 团队协作
  • 生产效率
  • 性能

除此之外有很多公司有资源热更、脚本热更的需求,也有网络的需求。配置表、多语言等等。这里可以说很多,但是就简单啊说这几点足够了。

所以 QFramework 之前都考虑的都是 企业和公司的需求,当然市面上排名比较靠前的框架,基本也都是面向企业和公司需求的。

至少资源管理、UI管理基本都有,然后有的框架提供架构 MVVM、MVC、ECS 等,有的框架小而美开箱即用,有的框架提供一整套脚本热更方案,等等。基本都是围绕着公司的需求做的,QF 也不例外。

而自己有幸拥有了半年的独立游戏制作经验,在制作的过程中发现,由于独立游戏很多都是在 pc 上发布,相比于移动端,性能方面更宽松一些。这个时候资源管理方案可能用了反而拖慢游戏的制作进度。所以很尴尬,笔者在做自己的独立游戏的时候就没有用到 QF 的资源管理方案。

独立游戏基本都是自己一个人开发,所以团队协作也不用考虑了,除非要把一部分制作的工作外包出去。。所以 QFramework 里的 UI 方案 也用不了了,唯一用得比较多的只有 QF 里的音频管理方案,再加上一堆工具类库之类的,还有决定版架构部分用得比较多。

自己的独立游戏《鬼山之下》鸽了有半年了。

上一次《鬼山之下》的大规模的功能新增是在 8 月份左右。然后感觉一直用 AssetStore 的素材也不是长久之计。于是就花了 2 个月的时间去学美术去了,把美术需要的基础都过了一遍,而现在基本上美术可以说是入门了。学完美术就到 10 月份了,还有一个月就双十一,于是就全部时间都花在了双十一的新课筹备上了,然后就一直忙,忙到 1 月 1 日,反正面包是要排在理想之前的。

在 1 月 1 日的时间点,自己的大部分教程都完结了,于是就又开了新坑,开始准备一个平台跳跃的课程案例,准备了 1 个月,2 月份开始录制课程,录了一个月加上春节初二~初四连续在 b 站直播 3 天,每天 3 ~ 6 小时的直播时长,结果嗓子就开始发炎了,连续打了一周点滴没见好,医生说只能静养了,课就不能录课了。

所以自己的所有正在进行的课程都暂停掉了。

这个时候我在想能做什么事情,一是可以接着制作《鬼山之下》,二是接着往下制作平台跳跃课程的案例。

结果我选择了搞 QFramework Pro 版本。

为啥要搞 QFramework 的 Pro 版本。

这里简单说明一下,在之前 QFramework 的大部分用户群体都是在公司上班的童鞋,可以说 QFramework 开元版本是面向企业和公司的。

而自己有半年多的独立游戏《鬼山之下》的制作经验,在个人或者小团队制作独立游戏的时候,要解决的问题与企业或者公司要解决的问题是有不少区别的。

公司和企业由于大部分都是做移动端手游的居多,所以游戏的性能很重要,于是就有了一些资源管理方案,QFramework 的资源管理方案是 ResKit。还是由于性能问题,游戏的界面最好可控管理,不能一股脑地把所有界面扔到场景就行了, 还要考虑 Canvas 的 Mesh 重建、层级管理、加载卸载等问题,在这个基础上还要考虑界面的制作效率问题,所以可能会用 FGUI、psd 2 ugui 等解决方案,但是一般面向企业或者公司的框架都会有个 UI 管理框架,有了 UI 管理,可以将没个界面的工作分工出去,而不会造成冲突,也就是说有了 UI 管理也方便团队协作。

根据以上简单的分析可以得知,面向企业的方案考虑的指标:

  • 团队协作
  • 生产效率
  • 性能

除此之外有很多公司有资源热更、脚本热更的需求,也有网络的需求。配置表、多语言等等。这里可以说很多,但是就简单啊说这几点足够了。

所以 QFramework 之前都考虑的都是 企业和公司的需求,当然市面上排名比较靠前的框架,基本也都是面向企业和公司需求的。

至少资源管理、UI管理基本都有,然后有的框架提供架构 MVVM、MVC、ECS 等,有的框架小而美开箱即用,有的框架提供一整套脚本热更方案,等等。基本都是围绕着公司的需求做的,QF 也不例外。

而自己有幸拥有了半年的独立游戏制作经验,在制作的过程中发现,由于独立游戏很多都是在 pc 上发布,相比于移动端,性能方面更宽松一些。这个时候资源管理方案可能用了反而拖慢游戏的制作进度。所以很尴尬,笔者在做自己的独立游戏的时候就没有用到 QF 的资源管理方案。

独立游戏基本都是自己一个人开发,所以团队协作也不用考虑了,除非要把一部分制作的工作外包出去。。所以 QFramework 里的 UI 方案 也用不了了,唯一用得比较多的只有 QF 里的音频管理方案,再加上一堆工具类库之类的,还有决定版架构部分用得比较多。

经过自己的经验知道了面向企业的框架和方案,不适合做独立游戏。

自己做独立游戏遇到的需求:

  • 关卡设计

    • 关卡脚本:最好用可视化脚本方案,这里笔者用的是 PlayMaker,用得很顺手。
    • 敌人 AI:也是 PlayMaker,这里也推荐 BehaviorDesigner
    • 关卡机关、可交互物体:也是 PlayMaker
  • 剧情对话:需要用可视化对话树插件,可以用 Dialogue System 或者 NodeCanvas,我买了个国人开发额插件,PlayText 也算好用。

  • 背包、任务、成就,这里也都用的各种插件,什么 Inventory System、Quest Machine 等等

  • 基本上这些算是笔者花了钱才解决的需求吧,如果按照以往自己只做开发的话,以上这些自己都能手撸,但是无奈,做独立游戏不能只专注在技术上,还有很多其他事情要做,所以这些方案能买就都通过花钱解决了,独立游戏,时间是稀缺资源。

经过自己的经验知道了面向企业的框架和方案,不适合做独立游戏。

自己做独立游戏遇到的需求:

  • 关卡设计

    • 关卡脚本:最好用可视化脚本方案,这里笔者用的是 PlayMaker,用得很顺手。
    • 敌人 AI:也是 PlayMaker,这里也推荐 BehaviorDesigner
    • 关卡机关、可交互物体:也是 PlayMaker
  • 剧情对话:需要用可视化对话树插件,可以用 Dialogue System 或者 NodeCanvas,我买了个国人开发额插件,PlayText 也算好用。

  • 背包、任务、成就,这里也都用的各种插件,什么 Inventory System、Quest Machine 等等

  • 基本上这些算是笔者花了钱才解决的需求吧,如果按照以往自己只做开发的话,以上这些自己都能手撸,但是无奈,做独立游戏不能只专注在技术上,还有很多其他事情要做,所以这些方案能买就都通过花钱解决了,独立游戏,时间是稀缺资源。

这个是独立游戏制作的时候遇到的需求,好在都有对应的不错的方案,但是 QFramework 没有支持这些。

除了制作独立游戏,自己做独立游戏的课程也需要以上的这些工具的,否则,这些要么在课程里从头手敲出来,要么告诉童鞋去卖这个插件那个插件,课程里用这个插件那个个插件的,这两种都不太好,全都手敲课程猴年马月能完结?如果全都让童鞋买买买,本来学课程的群体是学生和刚入行的童鞋居多,基本也没什么钱,在花钱买动砸 300 ~ 400 的插件,肯定吃不消。

再加上自己的 框架搭建 决定版 后续第四季 ~ 最终季 也需要有一些解决方案设计的案例来讲,然后前边自己做独立游戏的需求还有做独立游戏课程的需求,最终思考出来的答案,就是让 QFramework 也提供以上独立游戏需要的工具。

于是就开始构思 QFramework 的 Pro 版本了,因为工作量实在太多,提供的功能也实在太多,而免费开源版,被抄烂了

推荐阅读