我尝试使用Phaser做我的第一场比赛,但是当我在自己的图像上使用tileSprite函数时出现错误:
this.game.load.image('ground', 'assets/ground.png');
this.ground = this.game.add.tileSprite(0, game.world.height - 432, game.world.width, 281, 'ground');
this.ground.tileScale.setTo(2, 2);
“ ground.png”显示为黑色,并且在控制台中出现此错误:
错误:WebGL:按照OpenGL ES 2.0.24规范第3.8.2节的规定,纹理将被渲染为黑色,因为它是2D纹理,且缩小滤镜不需要mipmap,且宽度或高度不是2的幂,并且具有不同于CLAMP_TO_EDGE的环绕模式。
使用相同的代码,但其他图像(来自演示移相器游戏),我没有收到此错误。
子画面的宽度和高度必须是2的幂:
错误:WebGL:按照OpenGL ES 2.0.24规范第3.8.2节的规定,纹理将被渲染为黑色,因为它是2D纹理,且缩小滤镜不需要mipmap,且宽度或高度不是2的幂,并且具有不同于CLAMP_TO_EDGE的环绕模式。
(我强调)
您的栅栏是两个精灵的幂,宽度为128px,高度为16px,但是您的“ Tapis”(无论是什么)为19x13,不是两个的幂。
2的幂是其背后的实际数学,即2^n
,其中n
任何正整数。您所有的宽度和高度测量值都必须为2的幂。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句