Adding custom textures to user-created PWADs allows wad authors to create their own look in their custom maps.
The easiest way to add custom textures is to simply "replace" the original graphics, using a WAD management tool such as SlumpEd, WinTex, or XWE. This is done by inserting patches into a PWAD that have the same lump name as those found in the main game IWADs. Such an approach does not technically add new textures, it merely replaces components of the present ones. This method is usually most effective on textures that only use a single patch, as replacing a patch that is used by multiple textures will, in effect, modify all of those textures. Note that you cannot modify the dimensions of any textures using this method.
A more thorough approach is to actually add new patches to the PNAMES lump, and use these to create new textures within the TEXTURE1 lump. Patches can be arranged to form individual textures at the discretion of the wad author, thus allowing a small set of patches to create a large quantity of textures. These textures can then be used along the original textures, and the end user has a larger variety of textures with which to create his/her maps.
In either of the above two cases, it is customary to use PP_START/P_START and PP_END/P_END marker lumps to enclose the patch graphics inside the PWAD, although this is technically not necessary.
For Doom 2 and Final Doom, an alternative to TEXTURE1 is the TEXTURE2 lump, where it is unused. All textures defined in TEXTURE2 will stack on top of TEXTURE1, so that one does not need to include all of the original textures when adding new textures.
Adding flat textures
Floor and ceiling textures, referred to as flats, are used differently by the Doom engine, and require a different, yet arguably easier approach. All flats must be 64x64 pixels in size and must be converted to Doom's flat texture format (all major WAD management utilities are capable of this conversion). By using identical lump names as found in the IWAD, flats can be replaced in a similar manner as textures, however, new flats can be defined by assigning them their own unique lump names. For vanilla Doom, in order for the flats to be usable in-game, the flat graphics in the PWAD must be followed by an F_END lump marker. A preceding FF_START or F_START marker is recommended for organizational purposes, but is not needed.