LINUX.ORG.RU

История изменений

Исправление a1batross, (текущая версия) :

Ты несёшь какую-то дичь.

что касается sdl_image и sdl_gfx. Мне кажется, что через них можно пользоваться OpenGL и Direct3D, чтобы не обращаться напрямую. Только и всего.

SDL_image это парсер форматов. Ну, чтобы твоя игра умела открывать PNG/BMP/JPEG и так далее, а ты не тратил время на реализацию всего этого. SDL_gfx это графические примитивы.

SDL предоставляет возможность связаться OpenGL через себя

Создать контекст.

хотя можно работать с OpenGL напрямую

Работать с EGL/GLX/WGL/etc и оконной системой операционной системы, если она есть, скорее. Ты и так напрямую с OpenGL работаешь, SDL даёт тебе только абстракцию над созданием окна и контекста.

Хотя должен сказать, что в SDL есть встроенный 2D рендерер, реализованный софтварно, через OpenGL, через Direct3D, через Metal. Вот кстати для него SDL_gfx и существует. Но это всё 2D, повторюсь, и не так интересно. :)

можно напрямую в /dev/dsp слать звук

/dev/dsp больше не существует. По крайней мере на Linux.

зачем, когда можно через sdl_mixer

mixer занимается тем, что… видно из названия. Его задача смиксировать звук с разных каналов, в том числе один с музыкой из MP3/OGG/etc. Чтобы просто играть звук он не нужен.

Некоторые движки кстати самостоятельно микшируют звук. Например, у нас в Xash3D свой микшер, родом из Quake и никакой SDL_mixer ему не нужен. Отдаёт готовый буфер, который можно уже прямиком слать на девайс, будь то /dev/dsp, ALSA, PulseAudio или OpenSL ES.

Исходная версия a1batross, :

Ты несёшь какую-то дичь.

что касается sdl_image и sdl_gfx. Мне кажется, что через них можно пользоваться OpenGL и Direct3D, чтобы не обращаться напрямую. Только и всего.

SDL_image это парсер форматов. Ну, чтобы твоя игра умела открывать PNG/BMP/JPEG и так далее, а ты не тратил время на реализацию всего этого. SDL_gfx это графические примитивы.

SDL предоставляет возможность связаться OpenGL через себя

Создать контекст.

хотя можно работать с OpenGL напрямую

Работать с EGL/GLX/WGL/etc и оконной системой операционной системы, если она есть, скорее. Ты и так напрямую с OpenGL работаешь, SDL даёт тебе только абстракцию над созданием окна и контекста.

Хотя должен сказать, что в SDL есть встроенный 2D рендерер, реализованный софтварно, через OpenGL, через Direct3D, через Metal. Вот кстати для него SDL_gfx и нужен. Но это всё 2D, повторюсь, и не так интересно. :)

можно напрямую в /dev/dsp слать звук

/dev/dsp больше не существует. По крайней мере на Linux.

зачем, когда можно через sdl_mixer

mixer занимается тем, что… видно из названия. Его задача смиксировать звук с разных каналов, в том числе один с музыкой из MP3/OGG/etc. Чтобы просто играть звук он не нужен.

Некоторые движки кстати самостоятельно микшируют звук. Например, у нас в Xash3D свой микшер, родом из Quake и никакой SDL_mixer ему не нужен. Отдаёт готовый буфер, который можно уже прямиком слать на девайс, будь то /dev/dsp, ALSA, PulseAudio или OpenSL ES.