|
Size: 5243
Comment:
|
Size: 5573
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 12: | Line 12: |
| This wiki is your portal to documentation and other resources for SDL 1.3. Use the links on the left-hand menu to access: | This wiki is your portal to documentation and other resources for SDL 1.3. Use the links under the '''Navigation''' heading on the left-hand menu to access: |
| Line 20: | Line 22: |
Use the links under the '''Page Actions''' heading on the left-hand menu to add or update content in the wiki. For help using the editing functions see the [[HelpOnEditing|MoinMoin Wiki Help]] pages, also available at any time from the Wiki Help link under the '''Page Actions''' heading. |
Simple DirectMedia Layer 1.3 Wiki
The Simple DirectMedia Layer Library (SDL) is designed to make it easy to write portable multimedia application that run on Linux, *BSD, MacOS, Win32 and BeOS. By presenting a single source code level API to your application, SDL enables access to the various native high-performance media interfaces for video, audio, etc.
Using the SDL documentation Wiki
This wiki is your portal to documentation and other resources for SDL 1.3.
Use the links under the Navigation heading on the left-hand menu to access:
- user help pages
- tutorials
- articles
- books
- FAQs
- forums
Use the links under the Page Actions heading on the left-hand menu to add or update content in the wiki. For help using the editing functions see the MoinMoin Wiki Help pages, also available at any time from the Wiki Help link under the Page Actions heading.
Introduction to SDL
What is SDL?
SDL is a free cross-platform multi-media development API, used for games, game SDK's, emulators, MPEG players and other applcations.
What can SDL do?
Video
- Set a video mode at any depth (8-bpp or greater) with optional conversion, if the video mode is not supported by the hardware.
- Write directly to a linear graphics framebuffer.
- Create surfaces with colorkey or alpha blending attributes.
- Surface blits are automatically converted to the target format using optimized blitters and are hardware accelerated, when possible. MMX optimized blits are available for the x86.
- Hardware accelerated blit and fill operations are used if supported by the hardware.
Events
- Events provided for:
- Application visibility changes
- Keyboard input
- Mouse input
- User-requested quit
Each event can be enabled or disabled with SDL_EventState().
- Events are passed through a user-specified filter function before being posted to the internal event queue.
- Thread-safe event queue.
Audio
- Set audio playback of 8-bit and 16-bit audio, mono or stereo, with optional conversion if the format is not supported by the hardware.
- Audio runs independently in a separate thread, filled via a user callback mechanism.
- Designed for custom software audio mixers, but the example archive contains a complete audio/music output library.
Threads
- Simple thread creation API
- Simple binary semaphores for synchronization
Timers
- Get the number of milliseconds elapsed
- Wait a specified number of milliseconds
- Set a single periodic timer with 10ms resolution
Endian Independence
- Detect the endianness of the current system
- Routines for fast swapping of data values
- Read and write data of a specified endianness
What platforms does SDL run on?
Linux
- Uses X11 for video display, taking advantage of XFree86 DGA extensions and new MTRR acceleration for fullscreen display.
- Uses the OSS API for sound.
- Threads are implemented using either the clone() system call and SysV IPC, or glibc-2.1 pthreads.
Win32
- Two versions, one safe for all systems based on Win32 APIs, and one with higher performance, based on DirectX APIs.
Safe version uses GDI for video display. High performance version uses DirectDraw for video display, taking advantage of hardware acceleration if available.
Safe version uses waveOut APIs for sound. High performace version uses DirectSound for audio playback.
BeOS
- BWindow is used for video display.
- BSoundPlayer API is used for sound.
Mac OS
- more info?
Special info about 1.3?
Interesting starting points:
RecentChanges: see where people are currently working
WikiSandBox: feel free to change this page and experiment with editing
FindPage: search or browse the database in various ways
HelpOnMoinWikiSyntax: quick access to wiki markup
SiteNavigation: get an overview over this site and what it contains
How to use this site
A Wiki is a collaborative site, anyone can contribute and share:
Edit any page by pressing Edit at the top or the bottom of the page
Create a link to another page with joined capitalized words (like WikiSandBox) or with [[words in brackets]]
- Search for page titles or text within pages using the search box at the top of any page
See HelpForBeginners to get you going, HelpContents for all help pages.
For customizing MoinMoin's language support see HelpOnLanguages.
To learn more about what a WikiWikiWeb is, read about WhyWikiWorks and the WikiNature. Also, consult the HelpMiscellaneous/FrequentlyAskedQuestions page.
This wiki is powered by MoinMoin.
