The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"В библиотеке SDL3 отложили переход на Wayland по умолчанию"
Отправлено n00by, 27-Мрт-24 14:15 
>> Кто-то может объяснить, зачем нужна SDL, если пишется под Vulkan?
> На нем можно сделать что-нибудь например чисто 2D и со звуком.

Vulkan предназначен для вывода трёхмерной графики. 2D можно имитировать треугольниками. Звук, очевидно, выводится не через Vulkan. Например, вот я как раз сделал 2D и со звуком https://opennet.ru/53778-game

> Зачем тогда вулкан и вообще его требование?!

Потому что якобы именно с Vulkan проблема в Wayland.

> А надо сие чтобы не
> париться вопросом какая там у кого звуковая систем в разных линях,
> виндах, маке и проч. И как они графику на экран выводят.
> И проч.

Кому это надо? Мак и Виндовс ушли из России.

> Посмотри блин примеры libsdl какие-нибудь не очень древние. Это низкоуровневый уровень
> абстракции для геймдевов от системной конкретики.

Посмотрел. Вот прямо сейчас полез и скопировал:


    for (int i = 0; i < imageViewCount; i++) {
        framebufferCreateInfo.pAttachments = &imageViews[i];
        result = vkCreateFramebuffer(rendererData->device, &framebufferCreateInfo, NULL, &framebuffers[i]);
        if (result != VK_SUCCESS) {
            SDL_LogError(SDL_LOG_CATEGORY_RENDER, "vkCreateFramebuffer(): %s\n", SDL_Vulkan_GetResultString(result));
            return result;
        }
    }

https://github.com/libsdl-org/SDL/blob/02c63667c7b8107bb2958...

Вот это буквально и есть низкоуровневый уровень. Не низкий уровень абстракции, а низкое качество. Я мог бы сейчас сидеть в луже, если бы не предугадал, что там окажется вот такой вот цикл.

Вся тонкость в том, что Khronos Group спроектировали Vulkan с целью дать программистам максимальный контроль над происходящим. Что бы программисты могли выжимать из железа лишние кадры в секунду.

Вот этот код под Wayland создаст на 1 кадровый буфер больше, чем под X11. Если же как следует подумать и не копировать код из Vulkan Tutorial (что очевидно и проделано), а реализовать ленивую инициализацию, тогда наоборот в Wayland удастся сэкономить 1 буфер.

Проблема вовсе не в Wayland, как тут пытаются преподнести.

> На самом деле либ умеет довольно много чего. Аудио. Вывод графики, 2D
> и 3D. Сеть. Вгрузка разных форматов. Рендер фонтов. В версии 2
> и новее - портабельная работа с клипбордом. Ты же не хотел
> лично кодить куски кода под линухи с разными оконными системами и
> вводом, винду и мак, не говоря про какие там еще андроиды?!
> На которых ЭТО внезапно тоже пашет. Да, игроделы там прожали запуск
> нативного кода.

Если это для примерно таких изделий, как по моей ссылке, то "потеря производительности" не происходит. Там треугольников столько, что нечему тормозить.

> А ты сколько будешь такой код сам выписывать? Вместо реализации задуманных фич
> гамесы или что там у тебя было?

Выше есть ссылка, возьми да и сравни количество строк. И это в игрушке, которая ничего толком не делает. Как только начнётся действительное использование Vulkan, то есть сложное 3D, так вся эта мелочь устремится в объёме к статпогрешности. Зато вон тот цикл уже сожрал совершенно не лишнюю память. И я не хочу тратить время на вопрос "а сколько там еще подобного?"

> Или может, ты желая
> проиграть пару "бзынь!" всегда мечтал для этого написать ресамплер и микшер?
> На случай какого-нибудь луддита с алсой без опционального микшера?! Ну а
> вон то - таки - решает эти вопросы само. И игродел
> может - гамесу делать, а не...

snd_pcm_open() совершенно внезапно работает с устройствами "hw", "pulse" и "pipewire".

> NB: это не движок графона, только низкоуровенвая платформенно нейтральная подложка, позволяющая
> работать с всеми ОС одинаково.

Скорее, позволяющая программисту не париться с написанием элементарного кода. За универсальность приходится платить и "одинаково плохо" вполне себе "одинаково".

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру