RebelSDL is a plugin for Hollywood that allows you to use SDL (Simple
DirectMedia Layer) from Hollywood. This makes it possible to write scripts
that utilize the host system's graphics hardware to create high-performance,
butter-smooth 2D animation that is produced completely in hardware by the
GPU of your graphics board. This leads to a huge performance boost over the
classic Hollywood graphics API which is mostly implemented in software for
maximum portability and compatibility. Especially systems with slower CPUs
(like the Raspberry Pi) will benefit greatly fro hardware-accelerated
drawing, scaling, and transformation offered by SDL.
SDL is a cross-platform development library designed to provide low level
access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL
and Direct3D. It is used by video playback software, emulators, and popular
games. More information about SDL can be obtained from http://www.libsdl.org.
You can find good tutorials about learning SDL all over the web.
RebelSDL transparently replaces Hollywood's inbuilt display handler with its
own display handler managed by SDL. Whenever RebelSDL is activated,
Hollywood displays are automatically mapped to SDL windows and hardware
brushes are mapped directly to SDL textures so that they can be drawn,
scaled, and transformed in an extremely quick way on all supported systems.
This is especially useful on Windows, Mac OS X, and Linux because Hollywood
doesn't support hardware double buffers and hardware brushes on these
platforms by default. With RebelSDL, however, hardware double buffers and
hardware brushes can be used on these platforms now too. So RebelSDL can
also act as a helper plugin here which adds this functionality to Hollywood
without having you write a single line of SDL code to utilize it!
On top of that, RebelSDL offers wrapper functions for some useful commands
of the SDL API, for example RebelSDL allows you to call SDL's joystick and
game controller functions which are much more flexible than Hollywood's
inbuilt joystick library. RebelSDL also allows you to access Hollywood
hardware brushes as SDL textures and modify their properties via some
dedicated SDL calls exposed by RebelSDL.
Finally, RebelSDL also replaces Hollywood's inbuilt audio driver with the
audio driver offered by SDL. In contrast to the graphics driver SDL's audio
driver probably doesn't have any advantage over Hollywood's inbuilt audio
driver but by using it RebelSDL will make your program into a complete SDL
application which doesn't only use SDL for graphics output but also for
audio output.
RebelSDL utilizes the new display adapter plugin interface introduced with
Hollywood 6.0. Thus, the plugin will not work with any older versions of
Hollywood. It requires at least Hollywood 6.0. Whenever RebelSDL is
activated, all graphics and audio output will automatically be routed
through SDL. To benefit from hardware-accelered drawing, however, Hollywood
scripts have to follow some rules as described in this manual.
RebelSDL comes with extensive documentation in various formats like PDF,
HTML, AmigaGuide, and CHM that contains information about how to use this
plugin. On top of that, many example scripts are included in the
distribution archive to get you started really quickly.
All of this makes RebelSDL the ultimate scripting experience for all you SDL
rebels by combining the best of both worlds into one powerful plugin:
Hollywood's extensive and convenient multimedia function set and SDL's raw
graphics power!
|