Open 0x4E69676874466F78 opened 10 months ago
vk_vsync_mode
может показывать сам доступные режимы, можно спец команду не делать для этого.
Это бы в идеале (как и многие другие настройки рендеринга) вынести в меню настроек видео. Надо разобраться, можно ли, и как это делать.
vk_vsync_mode может показывать сам доступные режимы, можно спец команду не делать для этого. Надо разобраться, можно ли, и как это делать.
Я об этом кстати думал, но мы тогда немного вытекаем из vk_cvar.c в этом плане, хотя в этом в принципе нет ничего плохого. Движок поддерживает смену описания на лету. Я так в рамках HDR уже сделал как костыль, который забыл убрать после того как разобрался с clearflags. Если ты за, то я в HDR ветке у себя уберу лишнюю команду и список будет динамически формировать из обхода сурфейсов.
vk_cvar.c не очень удачный, можно под него сильно не подстраиваться.
Не знаю, насколько стабильно обновление описания команды. Можно менять его и его, если да. А можно и выводить доступные при неправильном или пустом аргументе/значении, как то сделано для дебажного отображения
Можно сделать по аналогии https://github.com/w23/xash3d-fwgs/pull/727/commits/8ffea312d887245bf9749ef276fbaf139907b87a но пока этот код ещё не ревьюился, возможно я сделал не совсем правильно.
Добавить квар для выбора режима вертикальной синхронизации.
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkPresentModeKHR.html Нас интересуют первые 4.
Нельзя просто так выставить любой режим, нужно проверить какие реально доступны и если указанный режим недоступен игнорировать значение квара (выставлять по умолчанию), можно заодно выдать предупреждение об этом. Нужно так же в описании квара выводить список поддерживаемых режимов.
Сам режим выставляется здесь: https://github.com/w23/xash3d-fwgs/blob/6ffaad02f2887f7d9e2777df99dac82df2b84a03/ref/vk/vk_swapchain.c#L107-L109