This repository has been archived on 2022-06-27. You can view files and clone it, but cannot push or open issues or pull requests.
Xash3DArchive/todo.log

109 lines
4.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Наблюдения:
Винда неадекватно реагирует на исполняемые файлы с именем setup.exe (какой-то набор умолчаний - см BC)
Ньютон - это просто пипец какой-то. С версии 1.3 до 1.53 левостороняя система координат сменилась на правую.
Коллижен менеджер (который фейсы добавляет) на версии 1.53 вылетает при парсинге половины q2 карт почему-то.
Но если все полигоны преобразовать в треугольники, то не вылетает, даже наоборот, из некоторых групп треугольников
обратно делает полигоны. (хтя он и должен так делать)
DDS Converter 2.1 некорректно высчитывает размер dds файла (баг в devil ?), юзаем только nvdxt
SprExplorer писали редкостные идиоты - он у них не то что версию файла, он даже заголовок не проверяет,
действительно, раз расширение spr, значит правильный ресурс. Если б программисты строили дома...
fopen завешивает приложение, при попытке создать файл в несуществующей директории. Ну вылетал бы чтоли, или ошибку
возвращал.
fopen завешивает приложение, даже если перепутать местами + и a, при установке режима!
Отложенные задачи:
1. Поддержка loop для ogg vorbis
2. перенести ripper.dll в common.dll
3. doom snd extractor (write PCM header 8bit 11kHz, dump data)
GLOBAL: Достигнуть уровня xash 0.45 к очередному релизу
0. Откат версии до 13 сентября OK
1. Рефакторинг ImageLib OK
2. Загрузка спрайтов\моделей при помощи ImageLib OK
3. Софтверный загрузчик DDS OK
4. Правильная растановка сторон для dds OK
5. переместить PFDesc в launch.dll OK
6. запрос для принудительной распаковки DXT
7. поддержка vtf - файлов
8. поддержка BGRA - форматов (VTF)
9. Полная отладка ImageLib
10. Отладка extragen
11. дописать Image_SaveDDS
12. избавится от непрямых путей в экстрагене
По умолчанию все картинки распаковываются в RGBA_32.
Однако, если выставить флаг IL_DDS_HARDWARE, to DDS картинки разжиматься не будут, оставляя работу для
рендера. Флаг IL_PALETTED_ONLY заставляет систему игнорировать все неиндексированные изображения.
Логика работы:
HOST_NORMAL - все картинки требуются в RGBA_32, но DDS предпочтительнее разжимать видеокартой
! никогда не разжимать dds-кубемапы (поскольку они всегда имеют кратный размер), но всегда
разжимать skybox
HOST_BSPLIB - все картинки в PF_RGBA_32 всегда
HOST_SPRITE, HOST_STUDIO, HOST_WADLIB, HOST_RIPPER - не распаковывать проиндексированные картинки, не трогать палитру
операция "Имплементация рендера от q2e_068"
0. имплементация backend
операция "Отладка: bsp 48
0. отладка qbsp3
1. починить подсчет строк для Com_GetToken OK
2. подправить рендер с учетом новых констатнт
3. переписать менеджер текстур на рендере
4. переписать загрузчик текстур с учетом новой идеологии
5. раз и навсегда пофиксить R_ImageFreeUnused
6. создать Com_Assert в виде дефайна Sys_Break
7. Заюзать матрицы 3x3 на сервере
Новый загрузчик текстур:
0. сравнить скорость загрузки видеокартой\софтверным загрузчиком OK (видеокарта однозначно бырее)
1. сравнить скорость загрузки софтверным загрузчиком из DDSlib OK (старый загрузчик немного бырее)
2. все картинки при загрузке распаковываются в PF_RGB_24 (если нет альфы), либо в PF_RGBA_32 (если альфа есть)
3. все кубемапы собираются в один большой архив из PF_RGB_24 * 6 (у кубемапов альфы никогда не бывает)
4. доступ к стороне осуществляется при помощи функции FS_GetCubemapSide, после загрузки при помощи FS_LoadImage
5. доступ осуществляется либо по номеру. либо по суффиксу (но по номеру, ИМХО удобнее)
6. при некоторых инстанциях проиндексированные изображения не распаковываются в 32 и 24 битные, поскольку
их необходимо сохранить в восьмибитном формате.
7. DDS должен разжиматься весь в launch.dll по идее
8. Расширение matrixlib - Matrix3x3
1. r_backend.c:1335
2. r_backend.c:1338
3. r_backend.c:1347
4. r_shader.c:3087
5. r_main.c:339
6. r_backend.c:1310
9. r_texture.c:1724
TODO LIST
поправить поле movedir в bsplib/map.c
придумать как вернуть cmodel_t обратно в physic.dll
научить игрока лазить по лестницам
Провериться боундс-чекером на течку
Найти наконец эту йобанную утечку
избавится от идиотскова RF_TRANSLUCENT
Упорядочить EF_, RF_ ed_type проверки
Анимация (разобраться с pev->animtime)
выбросить лишние ресурсы
забэкапить результат
Список доступных рендереров: Что в них интересного
0. Q3Fusion (Mirrors, Portals)
1. MhQuake (Caustics)
2. Xash 0.45 (Mirrors, Portals, Monitors, Rain, Sky)
3. Paranoia (Sky)
4. EGL (Effects, Shaders)
5. Quake2XP (Effects, Glass, Shadows)
6. Tenebrae (Mirrors, Cubemap Projection, Bump)
7. Venegeance (Reflective Water)
8. ftewqw (some model loadings)
9.Darkplaces ALL!!!!!!!!!!!!!!!111111111111
10.MHQuakeII (auto-luma)