To Use the Calculator decide which Bit Depth you wish to use for your texture. This example will use 4Bit IA. Enter a desired Width and height for a texture. This example will use 64x64 Leaving everything else alone shows us that a 64x64 texture with 6 Levels (Base + 5 Mip-Maps) will use a total of 2,800 Bytes. The Bar is Blue, so all is good. If we wanted to use an 8Bit IA we would see tha bar change to Red and a message show up showing how over TMEM we are. In this case, 1,392 Bytes. We can also set when to stop the Mip-Map Pyrimid. Returning to 4Bit IA and setting to stop at Width=64bit we can see that the number of levels are reduced to 3 and we save 112Bytes. Errors: Setting an odd width will cause the width to turn red. The calculator will then pad to allignment and continue. In this case 47 is padded to 48. Setting an Out Of Range number in either width or height will turn them red. Notes: You may notice Mask and Wrap Values. Mask signifies the value used in the RSP for SetTileSize() and may not be of use to you. Wrap Signifies the point in texels that the texture will start again (like a tiled floor). It is also the same value for Clamp and Mirror. While textures do not have to be Powers of 2 (eg a face or guard texture) Walls, floors and other 'Tiled' objects must be a power of 2 to match this value otherwise odd effects will show up on your object. ---------------------------------------------------------------- ADVANCED: Custom Levels: Unchecking Auto-Calculate Levels pust you in charge of the number of levels and also the size of each level, Lets deal with the first option. Setting the number of levels is as simple as entering a number between 1 and 8, however, you will not be able to enter a number if the texture is not big enough to divide that many times. Eg, Entering 8 will show a message stating there is not enough texture space to do 8 and will be automatically set to the highest number, this case being 6. Custom Level Sizes: After entering the desired levels you can also set your own dimentions for each level. This is an Advanced feature and does not do any checking. You must remember Mask powers and 64bit allignment padding. Failure to do so will not crash the program however you will get an inaccuriate result. This example I set 2 Levels (Base and +1) leaving the base at 64x64 and set the width and height of the +1 to 16. (64x64x4)/8 = 2048 (16x16x4)/8 = 128 2048 + 128 = 2176 as shown