这是用libgdx更新每个帧动画的位置的属性方式?

时间:2015-08-22 16:25:32

标签: animation libgdx

我只需要知道哪种方法可以通过int LeadingZeroCount(long value) { // http://en.wikipedia.org/wiki/Hamming_weight unsigned long x = value; x |= (x >> 1); x |= (x >> 2); x |= (x >> 4); x |= (x >> 8); x |= (x >> 16); x |= (x >> 32); x -= (x >> 1) & 0x5555555555555555; x = (x & 0x3333333333333333) + ((x >> 2) & 0x3333333333333333); x = (x + (x >> 4)) & 0x0F0F0F0F0F0F0F0F; x += x >> 8; x += x >> 16; x += x >> 32; return (sizeof(value) << 3) - (x & 0x7F); } int MostSignificantBit(long value) { return (sizeof(value) << 3) - LeadingZeroCount(value); } int BitsNeededUnsigned(unsigned long value) { return MostSignificantBit(value); } int BitsNeededTwosComplement(long value) { if (value < 0) return BitsNeededUnsigned(-value - 1) + 1; else return BitsNeededUnsigned(value); } int main() { printf("%d\n", BitsNeededUnsigned(243)); printf("%d\n", BitsNeededTwosComplement(243)); printf("%d\n", BitsNeededTwosComplement(-56)); return 0; } 类和Animation更改框架的位置:

我创建了一个libgdx个对象,其中有很多Animation,我找到了这个解决方案来更新渲染方法中帧的位置:

TextureRegions

这将动画的每一帧按顺序绘制在不同的位置; 这是一个很好的解决方案或存在更好的东西? 感谢。

1 个答案:

答案 0 :(得分:0)

初始化动画对象后,只需使用getKeyFrame方法获取当前帧并使用批处理绘制它:

TextureRegion currentFrame = animation.getKeyFrame(Gdx.graphics.getDeltaTime(), true);
batch.draw(currentFrame, 0, 0);