Нужно сохранить текстуру либо в TGA, либо в DDS. В общем случае лучше в DDS, если не требуется предельно четкого качества.
TGA нужно положить в папку doom3/твой_проект/textures
DDS - в папку doom3/твой_проект/dds/textures
Естественно, разрешение по сторонам должно быть кратно степени двойки.
Затем нужно создать материал. Для этого создается текстовый файл с расширением *.mtr и кладется в папку doom3/твой_проект/materials. Имя файла может быть любым, но логично использовать имя твоего прожекта.
В файле нужно написать определение материала. Образцы определений материалов можно найти в архиве dm_textures_base01.pk4.
В общем случае самый обычный материал выглядит примерно так:
textures/darkmod/wood/boards/weathered
{
wood
qer_editorimage textures/darkmod/wood/boards/weathered_ed
diffusemap textures/darkmod/wood/boards/weathered
specularmap textures/darkmod/wood/boards/weathered_s
bumpmap textures/darkmod/wood/boards/weathered_local
{
if ( parm11 > 0 )
blend gl_dst_color, gl_one
map _white
rgb 0.40 * parm11
}
{
if ( parm11 > 0 )
blend add
map textures/darkmod/wood/boards/weathered
rgb 0.15 * parm11
}
// TDM Ambient Method Related
{
if (global5 == 1)
blend add
map textures/darkmod/wood/boards/weathered
scale 1, 1
red global2
green global3
blue global4
}
{
if (global5 == 2)
blend add
program ambientEnvironment.vfp
vertexParm 0 1, 1, 1, 1 // UV Scales for Diffuse and Bump
vertexParm 1 1, 1, 1, 1 // (X,Y) UV Scale for specular
vertexParm 2 global2, global3, global4, 1
fragmentMap 0 cubeMap env/gen1
fragmentMap 1 textures/darkmod/wood/boards/weathered_local // Bump
fragmentMap 2 textures/darkmod/wood/boards/weathered // Diffuse
fragmentMap 3 textures/darkmod/wood/boards/weathered_s // Specular
}
}
Но если у тебя просто текстура без нормальной и спекулярной карты, и не нужно подсвечивание, и устроит, если поверхность будет себя вести как камень, то материал будет проще:
textures/твой_проект/твоя_текстура
{
diffusemap textures/твоя_текстура
// TDM Ambient Method Related
{
if (global5 == 1)
blend add
map textures/твоя_текстура
scale 1, 1
red global2
green global3
blue global4
}
{
if (global5 == 2)
blend add
program ambientEnvironment.vfp
vertexParm 0 1, 1, 1, 1 // UV Scales for Diffuse and Bump
vertexParm 1 1, 1, 1, 1 // (X,Y) UV Scale for specular
vertexParm 2 global2, global3, global4, 1
fragmentMap 0 cubeMap env/gen1
fragmentMap 2 textures/твоя_текстура
}
}
Обрати внимание - путь к текстуре нужно прописать в трех местах. И еще - если текстура в DDS, то dds писать в пути указывать не надо.
После этого твоя текстура появится в списке текстур в папке textures/твой_проект.