【已发布】Cocos Creator v3.5 社区测试版

提个关于 canvas resize 功能的问题。

测试版本

v3.3.2 && v3.4.2 && v3.5 社区版

测试环境

macOS 10.12 + chrome

测试方式

  1. 新建个空项目
  2. 新建个 scene
  3. 随便加个 3d cube 啥的,只是为了方便演示

然后就直接网页运行就可以

  1. 这里就是简单的测试 canvas 缩放时候游戏内容是否跟着缩放

测试结果

v3.3.2 在缩放浏览器的时,canvas 游戏内容也会根据策略,正常缩放
v3.4.0 v3.5 在缩放浏览器的时,canvas 游戏内容不会缩放

视频:
resize.mp4.zip (438.8 KB)

线索

虽然没有细看,但是也提供一下大致的线索:

  1. 对比看了 3.3.2v3.4.0+screen-adpter.ts view.ts 做法上变换很大
  2. v3.4.0+ 在游戏启动时,screen-adpter.ts 中的 _updateContainer 会先触发一次 this.emit('window-resize');,但是这个时候 view.ts 里的 screenAdapter.on('window-resize') 还没执行

  3. 游戏启动后,缩放浏览器,screen-adpter.ts_updateContainer 不会再触发 window-resize 了,因为那个 // Cache Test 部分代码,永远不会进去了
  4. 试着把这个 // Caches Test 强制执行,这时候 view.ts 就会执行 _updateAdaptResult 了。但是效果还是错的

后面就没有细看了,想问下这个大概是什么问题导致的,这个功能应该还是很基础的。

3.x版本的引擎面板好多问题

时不时蹦出来一堆莫名报错,重启又好了,烦的一批

看你的mac版本是10.12,想一下,最近appstore要求提交app必须用xcode13以上的版本编译,大佬怎么解决的?

3.x的问题是最多的,移动脚本都会报一堆莫名其妙的问题,重启还不一定可以,要删除library

3.5预计啥时候正式发布

3.6预计啥时候正式发布啊

ccc加油。 :+1:

都在期待3.6

web 上目前有两个窗口模式:

  • 子窗口模式,该模式下窗口属于浏览器里边一个固定的 div,是不会跟随浏览器 resize 的(目前 web pc 端预览和 web-desktop 属于这种模式)
  • 全屏模式,该模式下将内容撑满浏览器,会跟随浏览器做 resize(web-mobile,web 真机预览,以及你提到的 chrome 真机模拟会使用这种模式)

至于你提到的这个问题,应该是打开了 web pc 端预览,之后再开启 chrome 真机模拟,窗口没有更新模式导致的,刷新一下页面应该可以解决

image
这一条我是不是可以理解为,可以想u3d编辑器那样, 分 scene 和 game 窗口, 运行时只要在编辑器就能实时渲染,而不需要在跳到谷歌浏览器了? 要是这样就太方便了。
还是我理解错了?

image
这条更新也很好,ccc的崛起了。

原生和性能这块也要加大优化是最好的了。

最后一句话才是关键

请官方多认真点对待release,不然每个版本放出来都无法用于生产

步子迈大了,容易扯着蛋,蛋碎一地。

其实建议官方能够参考一下unity,对引擎做一下版本分类规划,例如:
image



通过这些分类,个人觉得引擎组在开发引擎过程中,不管是针对H5或者原生上的优化和新功能开发应该会有较大的帮助。
例如:
补丁版:对H5做了哪些优化,或对原生做了哪些改进。
beta版:H5新增了哪些功能,原生新增了哪些功能。
LTS版:则是针对补丁和beta的整合,出一个稳定的版本。
以上分类,
对开发者选择引擎版本也有较大的参考价值。
至少LTS版本对开发者来说是可以毫无顾虑的去使用。
补丁版本可以对有特殊需求的群体。
beta版本则可以对那些感兴趣研究新功能或新项目立项的群体。

当然这样也是个人建议,是否值得参考还须大佬决策!
@wangzhe

这是大型商业厂商的操作。。
别人付费了,对得起用户

cocos:给我再加1000人

这个我觉得不分大厂小厂,这个只是做事方式而已。
好的方法是能够提升效率的。
直管,清晰。

稳,赞同
好的就要虚心学习

其实一直是有类似的。
比如 Creator 2.4.x 基本就是 LTS 了
补丁程序版,对于 a.a.x && x>=1 的版本都是补丁程序版,没增加新功能,只修复 bug
而 Beta 版则对应我们的社区版,就是官网下载列表里还没有,仅仅是能从论坛里下载的都是。

但是这样不是太直观,最好是编辑器和官网上做出明确的分类说明和区分会更好些。
论坛就仅对beta版的测试增加一个测试反馈贴就足够了。

1、编辑器上增加类别,对已经在使用的开发人员来说在选择版本时能够有直观的说明。
2、官网上增加类别,对即将使用或在了解的开发者来说也能够直观了解目前的引擎版本状况。

因为如果你不解释我还真不知道有这个类别的区分。
以目前的来说,给广大开发者的感觉就是,不停的大版本迭代,小版本修改。 然后在大版本迭代,小版本修改,无限循环。
给人的感觉就是没有一个稳定的版本。不知道如何去选择版本来作为项目开发。
同时版本与版本之间的“功能,性能,优化”等的具体区别并没有一个明确的界定。
就是感觉新版本是上一个版本的bug修复版。

版本与版本直接有直接的界定区分,那么引擎组在接下来的开发过程中对新功能,性能及优化等方面应该能够有更好的参考,明确下个版本需要增加些什么功能,优化哪些性能,修改哪些bug等

2赞

别人公司有钱有资源 不能比