+1,对这个Sorting2D的使用感觉有点疑惑,感觉目前来看不太好使用,要手动的在每个渲染组件上添加,很麻烦!根本不好管理,另外每个渲染组件都添加,感觉也很重度。原以为是在一个父结点上添加,然后在这父节点之下的渲染组件都应用这个排序层级,这样至少好控制一点,首先每个面板使用不同的区间段排序,而面板内部再根据排序优化再细分,比如字体在最上层,这样至少好管理一点。另外,要么就是把一些关键的实现接口暴露出来让用户自己魔改……
可以多选节点批量一次性添加。
这也没多大改变啊,我还要挑出哪些是渲染结点?
可以在 层级管理器 中搜索特定类型的渲染组件,批量选中后,添加 Sorting2D 组件,设置对应的 layer。
使用组件的方式,就是方便为需要调整的渲染组件进行优先级调整,不需要调整的,不需要添加。
然后在这父节点之下的渲染组件都应用这个排序层级,这样至少好控制一点,首先每个面板使用不同的区间段排序,而面板内部再根据排序优化再细分
这个后续版本中可以考虑一下。
可以在层级管理器中按组件类型进行过滤后批量选择。
需要考虑的细节还是比较多的。
保持使用体验的一致性也很重要,毕竟我们已经有 3D 排序的 Sorting 组件,复用当前的设计,能够保持使用一致性。
后续会为 Sorting2D 组件添加 Y Sorting 功能,这样做瓦片地图上角色遮挡关系就容易一些。
理论上单独提供一个组件的设计是好的,需要全局特殊排序的模块毕竟是少数功能点。
少数点->特殊添加,这个设计没毛病。也相当于手动标记,也是符合对性能的优化的设计。
[Scene] [Spine] Skeleton version 4.2.40 does not match runtime version 3.8.99
mac也用win32的替换么,我用mac的SimulatorApp-Mac替换还是提示3.8
mac 替换 SimulatorApp-Mac-spine-4.2/Release 和 native-preview-spine-4.2/native-preview。替换后最好重启看看。
另外,你这个日志是 [Scene] 进程的。不是模拟器预览。如果正确替换, 重启一下应该就可以了。
我感觉就是有特殊需求的人才会去设置 正常不设置也是可以使用 假如每个默认都增加也是麻烦 最好就是可以像添加组件一样的方式去增加需要的人自己去增加
2D 渲染排序,其实一定程度上就是为了脱离 scene graph 的节点顺序进行渲染顺序的调整。如果又要耦合节点层级,那么整体是会更加复杂化一些。可能设计上也不够清晰。
我们会认真听取大家的意见和建议,后续在使用体验上做更多的改进、优化。
模拟器预览是好的,浏览器预览和打的web包是错的,这个版本还不支持浏览器上用4.2么
可以了,我傻了

Failed to allocate chunk in StaticVBAccessor, the requested buffer might be too large: 1089168 bytes
Error: [PreviewInEditor] Failed to allocate chunk in StaticVBAccessor, the requested buffer might be too large: 1089168 bytes
at console.error (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\app.asar\node_modules@sentry\core\src\utils-hoist\instrument\console.ts:40:14)
at error (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:159175:12)
at errorID (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:159353:5)
at StaticVBAccessor.allocateChunk (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:244894:13)
at RenderData.resize (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:243711:39)
at realTimeTraverse (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:248425:10)
at updateComponentRenderData (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:248410:7)
at Simple.updateRenderData (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:248675:13)
at Skeleton.updateRenderer (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:99320:23)
at UIRendererManager.updateAllDirtyRenderers (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:98915:31)
at Director.tick (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:15843:31)
at Game._updateCallback (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:16900:22)
at updateCallback (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:90227:20)
at sentryWrapped (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\app.asar\node_modules@sentry\browser\src\helpers.ts:116:17)
[PreviewInEditor] Cannot read properties of null (reading ‘vb’)
另一个 报错
TypeError: Cannot read properties of null (reading ‘vb’)
at realTimeTraverse (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:248428:47)
at updateComponentRenderData (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:248410:7)
at Simple.updateRenderData (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:248675:13)
at Skeleton.updateRenderer (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:99320:23)
at UIRendererManager.updateAllDirtyRenderers (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:98915:31)
at Director.tick (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:15843:31)
at Game._updateCallback (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:16900:22)
at updateCallback (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\resources\3d\engine\bin.cache\dev\editor\bundled\index.js:90227:20)
at sentryWrapped (E:\dev\cocos\dev\CocosCreator-v3.8.7-win-042814\resources\app.asar\node_modules@sentry\browser\src\helpers.ts:116:17)
深度排序之前论坛有一个方案,我们项目用的是那个方案
做了一键深度排序,以及一键取消排序的插件,
是否开启深度排序设置有开关,开关在哪个节点,就会影响下面节点。
目前遇到的问题就是嵌套预制体的情况下,界面需要重新排一下,不然可能会没显示出来。
修改嵌套的预制体,不太可能找出所有引用的地方重排。看能不能解决这个问题。
嗯,方便把这个方案链接发一下吗?后续我们会综合评估看看。

