引擎组可以帮忙看下吗? 材质系统用在 spine 上有 bug

在模拟器上,spine 动画使用自己修改的材质,调用 setProperty 设置材质属性时,属性改变了,正常情况下 spine 动画的亮度会改变,但是实际渲染出来的效果没有变化,浏览器上正常。

  • Creator 版本:2.2.2 & 2.3.1

  • 目标平台: iOS / Android / 模拟器

  • 编辑器操作系统 :

  • 出现概率:native 100%

可以复现的 demo, 直接打开对比 浏览器 和 模拟器,效果不一样

materialDemo-2.2.2.zip (1.7 MB)

自顶,项目正在从 1.10.3 升级

好像是你没有将修改好的材质设置回去的样子

-- this.spineBoy.getMaterial(0).setProperty("ilight", 0.2);

// 改成下面的

++ let material = this.spineBoy.getMaterial(0);
++ material.setProperty("ilight", 0.2);
++ this.spineBoy.setMaterial(0, material)   
1赞

非常感谢回复,解决了我的问题,sprite 不需要重新设置回去也能在 web 和 native 正常跑,spine 这里还是有点平台差异

2.4.10仍旧存在该bug