Parkan V0.9

Ну что-ж... В конце концов Dinol расшифровал все текстуры, необходимые для наложения на модель, однако с прозрачностью мы так и не сошлись во мнении. Мой костыль выглядит банально - в палитре файла A*, цвета под индексами 1 - 32 (в DEC) содержится белый цвет с градиентом альфа-канала. Если взять что шаг канала равен 0.03125, тогда мы получим rgba(255,255,255,0) на индексе 1 и rgba(255,255,255,1) на индексе 32. Для расшифровки я сделал легкий скрипт на JS (ну да, python я не умею, посему скрипт моего друга использовать не смог), парсящий A файл и рисующий попиксельно на canvas-элемент и таки получил нужную мне текстуру, которую можно сохранить в PNG формате с прозрачностью.

С анимацией, к сожалению, пока не особо получается, т.к. в OpenGL обновление текстуры - сплошная боль, а если учитывать что это THREE.js - боль в кубе. Однако, совсем скоро будет обновление с анимацией и наконец можно перейти далее по списку - расшифровкой частей интерьеров. Конечно на восстановление метода построения станций я не надеюсь, так как я думаю что он зашит в дебри исполняемого файла и без дизассемблирования тут не обойтись, а ASM я тоже не знаю.

Из больших плюсов - наконец сделана часть для полноценной загрузки моделей из 3D файла, без необходимости какой либо конвертации. Теперь можно просто выбрать в выпадающем списке 3D модель и она загрузится сама + подтянет все нужные файлы (спасибо THREE.js). Было-бы неплохо такое провернуть и для текстур, однако я просто ненавижу тяжелые скрипты и всякие навороты которые начинают жрать CPU и память, так что не думаю что такое будет необходимо.


PS: Все текстуры и модели принадлежат компании Nikita.