Minecraft 1.5 made significant changes to how texture packs work. Mainly it allowed for almost any block or item to be animated, separated item sprites and block textures into individual files, and allowed for default textures or sprites to be automatically used when a texture pack lacks them.
The best way to start creating a texture pack is to extract all of the default textures and various UI images from
minecraft.jar. In Windows, this is found at
%appdata%\.minecraft\bin, in Linux it's at
/.minecraft/bin and in OS X it's found at
~/Library/Application Support/minecraft/bin. Once you've found it you can extract its contents using an app like WinRAR, 7zip, The Unarchiver, etc.
Alternatively you can download someone else's texture pack and edit what's already in there.
The relevant files and directories in
/achievement contains the achievements screen GUI
/armor contains images for all of the various armor in the game
/art contains images of the various paintings in the game
/environment contains images for the sun, moon, snow, rain and clouds
/font contains images for the font used in all text in the game
/gui contains stuff like the menu background and various inventory screens and GUIs
/item contains textures for boat, mine cart, and chest models and a few more things
/misc contains various stuff like the map background, beacon textures, explosion particles, etc.
/mob contains textures for the friendly & hostile mobs in the game
/title contains the main title, Mojang logo and some other stuff. In the
bg folder are images that are used to create the panorama background in the main title screen
pack.png: the thumbnail that shows up next to your pack in-game in the texture packs list
pack.txt: optional, lets you add a short description that shows up in the texture packs list
particles.png: contains images for various particles used in the game, like fireworks and hearts
/textures/items contains sprites for all of the items in the game, each as individual files
/textures/blocks contains textures for all of the blocks in the game, again as individual files
To make your own texture pack, you just copy whichever images you want to change into your own folder (the name of the folder becomes the name of your texture pack in the texture pack screen), keeping intact the file names & folder structures. Then just edit them however you want, but keep them at the original resolution (also keep the format as
png). Any texture files that are missing from your folder will simply be replaced with the default files once the game is running.
Making textures or sprites animated is a little more tricky, but this post explains the process nicely.
To test your texture pack you will want to put your folder in the
texturepacks folder, which you can get to by going to
Options... > Texture Packs > Open texture pack folder. Once that's done, your texture pack will show up in the texture packs list, and you can select it.
Once your folder is in the right place you can easily test your textures in-game as you change them by pressing T + F3 (this reloads the currently selected texture pack).
Finally if you want to share your texture pack with others, you can either give them the folder or you can compress everything inside into a zip file. Then others can simply place the folder or zip file into their