我正在尝试在 cocos2d 中制作动画,但它只打印白色矩形而不是图像。在代码中的 addChild(player);
之后,所有图像都会变成白色矩形。
当我给它评论时,其他图像显示得很好。动画似乎不错,因为我看到动画图像的白色矩形变化不大。所有图像都在 Assets 中。
有一个代码:
CGSize winSize = CCDirector.sharedDirector().displaySize();
CCSprite p = CCSprite.sprite("Player.png");
p.setPosition(CGPoint.ccp(p.getContentSize().width / 2.0f, winSize.height / 2.0f));
addChild(p, 1);
CCSpriteFrameCache.sharedSpriteFrameCache().addSpriteFrames("player.plist");
CCSprite player = CCSprite.sprite(CCSpriteFrameCache.sharedSpriteFrameCache().spriteFrameByName("Player.png"));
player.setPosition(CGPoint.make(60, winSize.height / 3));
addChild(player);
CCAnimation anim = CCAnimation.animation("", 0.3f);
for (int i = 2; i <9; i++) {
anim.addFrame(CCSpriteFrameCache.sharedSpriteFrameCache().spriteFrameByName("PlayerWalk_0" + i + ".png"));
}
CCAction animaction = CCAnimate.action(2, anim, true);
player.runAction(animaction);
感谢您的回复。
编辑:
我将 addChild(player);
更改为 addChild(player, 2);
,第一张图像现在可以正确显示,但动画图像和 fps 仍然是白色矩形。
最佳答案
纹理和plist有不同的名称。我重命名了它们,所以它们是相同的,只是一个以 .plist 结尾,另一个以 .png 结尾。现在可以了。 :)
关于java - Android编程(cocos2d),白色矩形代替图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16244496/