SDL_mixer

홈페이지: http://www.libsdl.org/projects/SDL_mixer/

SDL_mixer is a sample multi-channel audio mixer library.
It supports any number of simultaneously playing channels of 16 bit stereo audio, plus a single channel of music, mixed by the popular MikMod MOD, Timidity MIDI, Ogg Vorbis, and SMPEG MP3 libraries.

As of SDL_mixer 1.2.7, Ogg Vorbis and MP3 loading libraries are dynamically loaded, so if you don’t need to load those formats, you don’t need to include those shared libraries.

다운로드: 1.2.11

ClanLib SDK

홈페이지: http://clanlib.org/wiki/Main_Page

clanlib

Allegro, SDL과 같은 게임 제작 SDK.

ClanLib is a cross platform C++ toolkit library.

Essentially the library offers a series of different functionality under a streamlined API. Its primary focus is on games, although not limited for that usage only.

Feature Highlights

– Very liberal BSD style license
– Supports Windows, Linux and Mac OS X
– OpenGL 3, OpenGL 1 and SSE Software Rendering
– High-performant shader based render architecture
– Full GUI framework customizable using CSS
– GUI windows rendered to textures or native windows
– High level 2D graphics with fonts, sprites, – animations, collisions
– Network library with sockets, web, irc and game – interfaces
– Database supporting SQLite
– Sound supporting wav, tracker formats and ogg– vorbis
– Basic cross platform runtime (threading, file I/O, – XML/DOM, etc.)
– Template based signal library (type-safe callbacks)
– Integrated resource management

SDL GUI 툴킷 정리

내친김에 SDL에서 사용 가능한 GUI 툴킷을 정리해본다.

aedGUI
http://aedgui.sf.net/
a cross-plataform, easy-to-use, non-intrusive C++ GUI library that runs on top of SDL

Agar
http://agar.csoft.org/index.html.en
a high-level graphical C application framework aimed primarly at 2D/3D games and simulations. Agar applications are portable to a variety of platforms thanks to the SDL.support for SDL 2D and OpenGL rendering. Thread safe

ParaGUI
http://www.bms-austria.com/projects/paragui/
a high-level crossplatform application framework and GUI library. It is completely based on the SimpleDirectMedia Layer (SDL). Works on any environment where SDL exists.

PicoGUI
http://picogui.org/
“a new Graphical User Interface architecture designed with embedded systems in mind. … includes low-level graphics and input, widgets, themeing, layout, font rendering, network transparency, and debugging features.” Also can be an alternative windowing system (when running on framebuffers)

wGui
http://wgui.sourceforge.net/
a simple, platform independent dialog manager library using SDL

AntTweakBar
http://www.antisphere.com/Wiki/tools:anttweakbar
AntTweakBar is a small and easy-to-use C/C++ library that allows programmers to quickly add a light and intuitive graphical user interface into graphic applications based on OpenGL, DirectX 9 or DirectX 10 to interactively tweak their parameters on-screen. Program variables can be bound to graphical controls that allow users to modify them. Thus, parameters exposed by programmers can be easily modified. They are displayed into the graphical application through one or more embedded windows called tweak bars. The AntTweakBar library mainly targets graphical applications that need a quick way to tune parameters (even in fullscreen mode) and see the result in real-time like 3D demos, games, prototypes, inline editors, debug facilities of weightier graphical applications, etc.

Guichan
http://guichan.sourceforge.net/wiki/index.php/Main_Page
A portable C++ GUI library designed for games using Allegro, HGE, OpenGL, OpenLayer and/or SDL.

Agar

홈페이지: http://libagar.org/

SDL 프레임에 사용 가능한 GUI 툴킷이다.

Agar is a modern open-source, cross-platform toolkit for graphical applications implemented in C, C++, Perl and Ada (with bindings to other languages in development). Designed for ease of integration, it follows the philosophy of building the GUI around the application, and not the other way around. The Agar GUI library is designed to work under almost any platform that provides a graphic display and input device. Beginning with the 1.4 series, Agar can be built without any dependencies, and has even been used on embedded devices without any operating system.

$ gcc mytheme.c themes.c `agar-config --cflags --libs` -lag_dev `sdl-config --c
flags --libs` -mwindows -lwinmm

agar

다운로드: 1.4.0 1.3.3

wxWidgets + SDL 의 조합

마침 회사에서 일하면서 GUI와 SDL의 조합도 필요했거니와, GUI는 wxWidgets가 자신있던터라 SDL 프레임을 끼워넣을수 있을까 생각을 해봤다.
모… 이렇게 사용할 유저가 있을지 모르겠다만…

monitor

위의 이미지는 간단히 직접 구현해본 예제이다.
코드는 여기서 받으면 된다.

아래는 참고한 코드들이다.