Наблюдения: Винда неадекватно реагирует на исполняемые файлы с именем setup.exe (какой-то набор умолчаний - см BC) Ньютон - это просто пипец какой-то. С версии 1.3 до 1.53 левостороняя система координат сменилась на правую. Коллижен менеджер (который фейсы добавляет) на версии 1.53 вылетает при парсинге половины q2 карт почему-то. Но если все полигоны преобразовать в треугольники, то не вылетает, даже наоборот, из некоторых групп треугольников обратно делает полигоны. (хтя он и должен так делать) DDS Converter 2.1 некорректно высчитывает размер dds файла (баг в devil ?), юзаем только nvdxt SprExplorer писали редкостные идиоты - он у них не то что версию файла, он даже заголовок не проверяет, действительно, раз расширение spr, значит правильный ресурс. Если б программисты строили дома... fopen завешивает приложение, при попытке создать файл в несуществующей директории. Ну вылетал бы чтоли, или ошибку возвращал. // замеченные баги 1. viewer ничего не пишет в лог (сцуко) // из неоконченного 0. snd encoder для roqlib 1. doom snd decoder для snddec Шаги до выпуска альфы: 1. Сделать проверку столкновений со сферой OK 2. Обновить bsp-формат до ver. 39 rev. 1 OK 3. Добавить загрузку hl-текстур из wad OK 4. Исправить чтение g_TX command OK 5. Иконки всем экзешникам OK 6. Поменять нужные пути для graphics OK 7. Доделать меню OK 8. перенести qc код в sdk_main OK engine.dll { написать код для некоторых энтить } //================================================== // то, что уже готово //================================================== +добавлена динамическая смена шрифта +новый трасинг (проверка на капсулы) +текущая версия bsp обновлена до rev. 1 +сохранение физики на сервере +дописан лоадер кастомных мешей +переписан менеджер моделей +пофикшен парсинг map-карт для bsplib +переписана физика игрока +скриншоты теперь учитывают текущую гамму +освещение влияет на спрайты (кроме additive и glow) +базовые форматы текстур - tga и dds. Другие типы не поддерживаются +Запущены в строй lmpdec, mdldec, mipdec, snddec, sprdec +движок переработан под Xash Sprite Format -xmdlib, imglib, idconv удалены +xmdlib полностью опробован и готов к работе +исправлена ошибка при -dev 6 +запущен в строй idconv (в дайльнейшем заменит половину утилит) +добавлена поддержка текстур из первого дуума (с прозрачностью) +запущена в строй wadlib +добавлена поддержка ВСЕХ существующих типов внутри вадов +добавлена поддержка wad-файлов +наконец-то добавлена аппаратная гамма-коррекция +добавлена загрузка мипмапов для всех типов текстур +пофикшен баг с загрузкой мипмапов +collision tree теперь сохраняется в lump +исправлены баги в parselib.c +доделан кастомный парсинг исходников для qcclib +утилиты вновь стали консольными -удалена горячая клавиша space для выхода из системной консоли +имплементирован Sys_Break для остановки движка +добавлены hardcoded binds для системных клавиш (выставляются при отсутствии keys.rc) +исправлен баг в stdlib.c +добавлено базовое меню на QuakeC ++исправлен баг с рекурсивным вызовом Sys_Crash +добавлен Sys_Crash +исправлен баг с рекурсивным вызовом Sys_Error и Host_Error +имплементированы простейшие сохранялки +qcclib создает progs.src +исправлен баг в stdlib.c -убрана Sys_FatalError (MessageBox) +исправлен баг в studiomdl +исправлен баг в spritegen +добавлен fps counter +добавлен loading bar +исправлен баг с лаунчерами +пофикшена проверка на размер картинки +консоль теперь показывается только для dev или debug режимов +SC_GetToken теперь умеет парсить слова +добавлена миникарта +спрайты наконец-то пофикшены +добавлена простейшая физика +исправлен баг с проигрыванием видео и демок +исправлен баг с записью сжатых исходников в готовый файл +добавлен новый тип критичных ошибок - internal error +консольные приложения могут использовать расширенные пути, типа ./ или ..\ +добавлен выход по горячим клавишам из консольного приложения при ошибке (ESC или SPACE) +новый стиль для progdefs.h +добавлена загрузка *.mip (quake1 текстуры) +Добавлены func_areaportal +исправлен overflow при компиляции в release +подключена система использования gl_ext при загрузке DDS Текстур по двум критериям(наличие расширения и наличие Pow2) -убран последний DDS FPU формат +исправлен баг с загрузкой BGRA_32 текстур +добавлено два паттерна для отрисовки сторон кубемапы( выбираются автоматически ) +исправлен критичный баг с загрузкой скайбоксов\кубемапов +Добавлена загрузка lmp и wal +при ненайденной стороне кубемапы или скайбокса она заменяется на сгенерированную текстуру +xash теперь способен загружать текстуры только с указанным расширением +исправлен баг с логом при выводе сообщений через pipeline +исправлен баг с загрузкой анимированных текстур -удален формат моделей md2 +исправлен баг с флагом RF_FULLBRIGHT для studio models в режиме RDF_NOWORLDMODEL +существенно уменьшен размер всех лаунчеров +новая система загрузки дллок (поддержка нативных библиотек) +добавлены кастомные названия окна для различных инстанций (studiomdl, bsplib итд) +исправлен баг с кодом возвращаемой ошибки +исправлен баг с выводом сообщений в консоль кварка\хаммера +исправлены баги со studiomdl +убраны лишние пункты в меню +исправлен баг с вылетом рендерера +пофикшен баг с автоматическим рассчетом хулла для первой энтити на карте +существенное уменьшение размера сейвов +новая организация сейвов +добавлен новый интерфейс - виртуальная файловая система +исправлен баг со сменой карт +исправлен баг в коде bloom +пофикшен баг с загрузкой процессора на 100% при системной ошибке +добавлена новая функция файловой системы - поиск только директорий +добавлена команда debug для studiomdl. В этом режиме большинство ошибок заменяются на предупреждения +studiomdl пропускает анимацию, если для нее не указан smd-файл (вместо остановки компиляции) +studiomdl больше не обязательно прописывать actweight в анимации (по умолчанию равен 1) +spritegen проапгрейжен до версии 0.2 +при ненайденной текстуре для модели или спрайта выдается соответствующее предупреждение и вставляется нулевая текстура +удалена поддержка груп кадров для спрайтов (никогда не использовалось в half-life) +все поврежденные спрайты выгружаются, вместо остановки игры +xash sprite ver 3. Включают в себя предустановку RGBA и framerate. Версия спрайта зависит от этих установок. +добавлен рескайлинг спрайтов +добавлено смещение в 0.01 юнита для валлспрайтов (Volatile3D стандарт) +beamlength в dsprite_t изменен на framerate для смены кадров рендерером +добавлен новый texformat для спрайтов - glow +сделан просчет освещения для моделей +создана статическая таблица округления хуллов для mdl файлов (hull подгоняется автоматически под табличное значение) +в менеджер памяти добавлена функция Mem_Realloc (аналог realloc) +подключен анализатор скрипта для spritegen и studiomdl (автоматически пропускает чужие скрипты) +подключены studiomdl, spritegen, bsplib с учетом новой системы +пофикшены утечки памяти в bsplib +пофикшены утечки памяти в studiomdl +запущен в строй mdllib версии 0.1 (есть поддержка texrendermode, $cdtexture поддерживает только одну директорию) +запущен в строй sprlib версии 0.1 (в дальнейшем будут модификации) +запущена в строй bsplib +наконец-то закончена динамическая система определения рабочей папки +новые проекты в папке utils - для компиляции достаточно запустить makefile.nmake (студия не требуется) +добавлена поддержка анимации для шейдерных скриптов +добавлены простейшие шейдерные скрипты +в sprgen добавлена глобальная команда $origin +сделана проверка на одинаковые имена в разных моделях Z_AllocTag полностью пермещен на сервер (избавится совсем в дальнейшем) +добавлено определение типа процессора и его фичей (как в hl2)