1. A method of generating a texture map for use with a graphics processing unit (GPU), the method comprising: partitioning, utilizing one or more processing units, a raw texture map file into raw texel blocks; reducing, utilizing one or more processing units, a number of raw texel blocks until a predefined compression metric is satisfied to generate a set of reduced texel blocks; saving, utilizing one or more processing units, the set of reduced texel blocks; generating, utilizing one or more processing units, an index array comprising a set of indices, each index designating a location of a respective raw texel block and a respective one of the set of reduced texel blocks in the codebook identified as being a closet match to the respective raw texel block; and generating, utilizing one or more processing units, a compressed codebook by compressing the codebook into a format compatible with the GPU, such that the compressed codebook comprises a compressed texel block associated with each reduced texel block.