• X xray-16
  • Информация о проекте
    • Информация о проекте
    • Активность
    • Метки
    • Участники
  • Репозиторий
    • Репозиторий
    • Файлы
    • Коммиты
    • Ветки
    • Теги
    • Участники
    • Диаграмма
    • Сравнение
  • Задачи 216
    • Задачи 216
    • Список
    • Доски
    • Спринты
  • Запросы на слияние 31
    • Запросы на слияние 31
  • CI/CD
    • CI/CD
    • Конвейеры
    • Задания
    • Расписания
  • Развертывания
    • Развертывания
    • Окружения
    • Релизы
  • Пакеты и реестры
    • Пакеты и реестры
    • Реестр пакетов
    • Реестр контейнеров
  • Мониторинг
    • Мониторинг
    • Инциденты
  • Аналитика
    • Аналитика
    • Поток ценности
    • CI/CD
    • Репозиторий
  • Wiki
    • Wiki
  • Сниппеты
    • Сниппеты
  • Активность
  • Диаграмма
  • Создать новую задачу
  • Задания
  • Коммиты
  • Доски с задачами
Свернуть панель
  • OpenXRay
  • xray-16
  • Запросы на слияние
  • !177

gamedata: Add pre-compiled R2 shaders.

  • Ревью изменений

  • Скачать
  • Почтовые патчи
  • Простое отличие
Слиты xottab-duty запросил слияние github/fork/CrossVR/pre-compile-r2 в dev Мар 15, 2017
  • Обзор 12
  • Коммиты 2
  • Конвейеры 0
  • Изменения 1000+

Created by: CrossVR

Includes a python script to compile them from scratch. The script searches shaders for macros and compiles all permutations of those macros in parallel. Afterwards it prefixes the data with a CRC32 checksum which is required by the engine. The engine itself is already equipped to load these shaders from gamedata.

The advantage of these pre-compiled shaders are faster load times, but it also has significant advantages for the cross-platform port as there are significantly more cross-compilers available for DX bytecode than for HLSL shaders.

The script is a bit ugly, as it was written just to get the job done. But when we're going to do significant work on the HLSL shaders, then the script can be cleaned up and expanded to cover more renderers.

Note: As can be seen in the script, there are currently two assumptions:

  • Every supported GPU supports USE_HWSMAP so this option is force-enabled, this means we don't support GPUs that don't support pixel shader model 3.0 (DX9c)
  • The SKIN_COLOR command-line parameter is never used so this option is disabled, it looks like this option never worked in the first place.
Ответственный
Назначить
Проверяющие
Запросить ревью
Оценка трудозатрат
Исходная ветка: github/fork/CrossVR/pre-compile-r2