![]() You can see this happening on line 6 below. We do this by passing it the current value of our animationStateTime variable. When it is time to render our sprite, we ask our Animation instance for the frame that we need to draw - AKA the Key Frame. To help cycle the animation frames, in our update() method we utilise a variable which accumulates the delta time between frames - animationStateTime. In other words, the duration between each frame is 1/15 seconds, or, 0.0666 seconds. Using 16 bit (that would be RGBA4444 or RGB565) reduces the amount of memory by 50 compared to a 32 bit texture. On line 11, we create a new Animation instance and instruct it to animate our sprite frames 15 times per second. From the command line interface you should be able to use the -flip-pvr option which should flip the PVR file to work with Unity. The Animation class makes it a breeze to animate our sprites. For our purposes, each AtlasRegion holds a frame of animation for our sprite. ![]() Note that AtlasRegion has the same parent class as Sprite - TextureRegion, which we have seen before. Try this: Create a txt file and change its extension to '.bat'. As an added bonus, because of the way I configured TexturePacker, we receive them in animation order. bitmap font generator, and texture packer Libgdx is incredibly fast. Depending on your choice this enables additional features. intersection utilities, andfull Box2D andBulletphysics JNI wrappers File. Texture Texture format -texture-format Choose an image file format your framework supports.On line 10, we ask the TextureAtlas for an array of all the AtlasRegions (frames) belonging to the invader1 sprite. Filtering (only available if Data Format is LibGDX) Sets the filtering values in the LibGDX exporter. On line 9, we create an instance of TextureAtlas, by passing it the path to our spritesheet.atlas file. The TextureAtlas class deals with de-serialsing that file and provides us with handy methods to get hold of the frames for a particular sprite, along with other useful information. This file contains all of the information about each sprite frame I packed. When I packed my sprites into a texture atlas, TexturePacker generated a file called spritesheet.atlas. TextureAtlas = new TextureAtlas("spritesheet.atlas") // 9.įrames = textureAtlas.findRegions("invader1") // 10.Īnimation = new Animation(1/15f, frames) // 11. Letâs have a look at our create() method and itâs supporting class member variables. Iâm not going to delve into the details of how to use the tool, as you can just click the link that I have provided.Īll you need to know for this tutorial, is that I have used it to pack the frames needed for my demonstration of Sprite animation, and, that we can get hold of the frames for that animation as shown in the source code below. LibGDXâs TexturePacker is nothing short of excellent. In this post, I just want to put those two classes to one side and look at what libGDX provides us with for sprite animation purposes.Ä«y the end of this tutorial, weâll have a simple application which animates a sprite, as shown in the video below. In my previous tutorial, we introduced a couple of new classes - XNASpriteBatch and XNASprite - to help us draw sprites in a more familiar way.
0 Comments
Leave a Reply. |