每个人都可以3天开发一款小游戏(demo)

天下武功 唯快不破 为坚不催

我3天开发的一款小游戏 two dots demo预览地址 只实现了game play部分 具体玩法可以搜一下two dots

个人的开发耗时分布

  • 拼UI 组装UI逻辑
  • 游戏数据结构设计
  • 写逻辑 gameplay 实现

这3大块想必大家都避免不了,但是我们可以想办法简化其中一些

  • 拼UI部分 我选择了fgui,提供了在美术资产部到位的情况下的资源解决方案,并且其中控制器这些还是挺好使的
  • 组装UI逻辑 重复又简单的UI渲染逻辑是必须要优化的,我新写了一套适配MVVM的装饰器方法来简化流程 实现了 fgui发布代码后 加一行就绑定好数据
    但众所周知 fgui的代码发布有点弱智 没次是覆写代码 导致不能基于它生成的代码文件开发,所有我又写了一个fgui的代码发布插件 实现不删除我们新加的部分 直接在生成的Gcompont代码上编写逻辑,原生cocos开发般丝滑
  • 资源管理 fgui自定义的脚本还需要自己挂载才能被正确创建?新加个界面 还要去界面枚举加加加?
    基于fgui生成的脚步已经含有唯一key url 我直接写了一个专门适配fgui的uimanager来一键自动完成依赖资源的加载(基于我写的代码发布插件 不然跨包资源类型变成base 组件了不好用必须要改! ) UI关闭自动dec依赖 卸载ui包
    开发者使用的时候只需要关注 open() close() get() 接口 不用过多分散注意力
  • 数据结构的设计 这个必须要开发者自己想了,没想到什么优化方向,希望大家集思广益
  • 逻辑编写 我使用了copolit x来加速一些算法的编写 当然gpt生成的初版肯定有BUG 你需要自己review一下,然后接入了jest进行算法函数的单元测试(可以让gpt生成测试用例)
开发流程示意

如果大家也有兴趣共同探讨 回复过100 开源这套工具

顶一下,想看看这套工具,能提高生产力不错

请教一下,数据绑定写在哪里了?

有个毛用?

666,好奇大佬绑定部分逻辑

我写了一个module base类用来管理数据,然后每个module 构造的时候会把自己挂载到一个全局变量,就可以在mvvm 实现动态去取跨模块数据,自己模块的很好取就不多说了

开发这个游戏没有什么意义。上线就是5毛钱一天的广告费

没搞了 准备搞个 3d的

对fgui默认导出的代码做哪些哪方面修改呢?

你先读他的引用 算出来哪些资源是其他包的(跨包的资源引用fgui不会提供给你 但你可以先创建一个资源实例再转换为资产去读)拿到引用后 你就可以输出到代码文件了,然后加载卸载 引用计数也可以自动化了,然后 你得想办法让你修改的文件不会被覆盖,你就需要按你习惯 改写文件时的操作了

1赞

学到了,点赞 :+1:

顶一个,加油

凑100 +1