Задался целью изменить внешний вид у существующей модели некоего объекта (файлы OGF). Изменение самой текстуры (файлы ".dds") подробно описано на этом сайте - спасибо теме "Создание костюмов". Как посмотреть модель объекта (файлы ".ogf") - спасибо программке "OGFViewer" (всё находится в данном разделе сайта).
Ниже привожу способ подключения файла с изменённой текстурой к файлу OGF при помощи HEX-редактора. "Топорно", зато сработало.
1) Открыть "OGF" в просмотрщике "OGFViewer" (выложен здесь на сайте в комплекте "MS STALKER Utilites Pack.exe").
2) В нём открыть файл "ogf", полюбоваться - приблизив колёсиком мышки.
3) Если хочется - указать путь к папкам текстур: "Настройки" - "Укажите путь к папкам textures". Укажите папку "GameData\Textures". Нужно указать общую папку, где лежат все текстуты игрушки. Они будут автоматически подхватываться просматриваемыми моделями.
4) Для перерисовки моделей и текстур - использовать кнопку ""Перезагрузить модель".
5) Зайти в "Инструменты" - "Информация о моделе". В этом окне будут прописаны пути к файлам текстур, используемым в просматриваемой моделе. Запомним их (например, скопируем в отдельный текстовый файл).
6) Если будем изменять путь к структурам именно просматриваемой модели - то закроем модель в "OGFViewer". Я же советую делать резервные копии, и работать именно с ними.
6) Вот теперь запускаем HEX-редактор и открываем в нём наш файл "ogf". Появятся 2 поля:
- одно поле с символами - в нём недалеко от начала и будет сразу виден один из путей к файлу текстур;
- второе поле с цифрами - шестнадцатиричное представление символов, отображённых в первом поле. Их и будем править, чтобы указать путь до своего файла текстур. Единственое ограничение - длина пути не должна изменяться (количество символов в тексте пути должна остаться прежней).
Сориентироваться по шестнадцатиричным кодам можно "по аналогии". Найти какой-нибудь знакомый символ в первом поле и для него во втором поле найти соответствующий код. Далее - помним, что 16-ричное представление состоит из двух символов соержащих цифры 0...1 и латинские буквы A...F (т.е. число "11" в десятичной системе равно символу "B" в шестнадцатиричной, десятичное "18" = шестнадцатиричное "12"). Также помним последовательность букв латинского алфавита и примерные их коды (латинская буква "A" - десятичный код "65", шестнадцатиричный код "41" - для вычислений можно использовать калькулятор Win в виде "Инженерный"). Каждая следующая буква имеет код на "единицу" больше предыдущей.
7) Для нахождения ссылок на текстуры пользуемся "Поиском", в строку которого вставляем скопированные ссылки на тектуры, которые получили из "OGFViewer". Текст будет найден в первом поле редактора. В текущей строке во втором поле посимвольно (т.е. "покодво") вручную изменяем коды символов, чтобы в первом поле прописался путь к файлам наших текстур.
(примечание: я заметил, что в "OGFViewer" прописываются не все пути к текстурам, на которые имеются ссылки в файле ".ogf". Поэтому советую просмотреть (пролистать) весь файл "ogf" на предмет наличия используемых текстур).
8) Сохраням наши изменения файла "ogf".
9) Открываем модель в "OGFViewer". Одновременно открываем файл текстурки в редакторе (Paint, Adobe Photoshop или др.) и редактируем его. Для получившегося результата в "OGFViewer" нажимаем кнопку "Перезагрузить модель".