本文整理汇总了C++中SpriteFrame::setOffsetInPixels方法的典型用法代码示例。如果您正苦于以下问题:C++ SpriteFrame::setOffsetInPixels方法的具体用法?C++ SpriteFrame::setOffsetInPixels怎么用?C++ SpriteFrame::setOffsetInPixels使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SpriteFrame
的用法示例。
在下文中一共展示了SpriteFrame::setOffsetInPixels方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createFightAnimation
//创建战斗动画模板
Animation* AnimationManager::createFightAnimation()
{
//定义每帧的序号
int fightAnim[] =
{
4,6,8,10,13,15,17,19,20,22
};
Vector<SpriteFrame*> animFrames;
Texture2D *texture = Director::getInstance()->getTextureCache()->addImage("sword.png");
//Texture2D *texture = TextureCache::getInstance()->addImage("sword.png");
SpriteFrame *frame;
int x, y;
for (int i = 0; i < 10; i++)
{
//计算每帧在整个纹理中的偏移量
x = fightAnim[i] % 5 - 1;
y = fightAnim[i] / 5;
frame = SpriteFrame::createWithTexture(texture, Rect(192*x, 192*y, 192, 192));
//第17和19帧在y方向上有-8的偏移
if (fightAnim[i] == 17 || fightAnim[i] == 19)
{
frame->setOffsetInPixels( Vec2(0, -8) );
}
animFrames.pushBack(frame);
}
Animation* animation = Animation::createWithSpriteFrames(animFrames, 0.1f);
//animation->createWithSpriteFrames(animFrames, 0.1f);
return animation;
}