I'd like to thank everybody who applied, and congratulate everyone who was selected for the Google Summer of Code!
The following projects were accepted for the Google Summer of Code:
-
by Jiang Jiang, mentored by Ryan C. Gordon
-
by Edgar Simo, mentored by Sam Lantinga
-
by Martin Lowinski, mentored by Sam Lantinga
Presenting the Google Summer of Code 2009 "work complete" snapshot!
http://www.libsdl.org/tmp/SDL-GSoC-2009.zip
I want to thank all of these students for the excellent work they contributed!
Please feel free to download the snapshot and check out their work!
If you run into any bugs, please enter them in the SDL bug tracking system.
If you have any questions, please ask on the mailing list or the forums.
Here is more detailed information on each of the projects:
Automated Tests
The initial version of the Automated Testing Framework has been already merged with SDL 1.3:
http://www.libsdl.org/cgi/viewvc.cgi/trunk/SDL/test/automated/
Basic functionality it has now serves to test the following subsystems:
- RWops - all the builtin rwops stuff
- platform - endianness and the likes
- surface - surface manipulation
- render - different rendering drivers/renderers (not working 100% since
- the readpixels function isn't implement)
- audio - only in verbose mode
The framework is there and documented to add more functionality or testcases. There is both user and developer documentation.
The manual testcases weren't implemented due to lack of time and increase complexity the brought (needing to change to autotools, use SDL_ttf [if found] to display text, etc...), so currently they are all automated.
You can also use the verbosity flag to see what your system supports as far as renderers/drivers are concerned. More is explained with the documentation.
Playstation 3
Martin was porting the ps3 video driver from SDL 1.2 to SDL 1.3. Basically the ps3 driver in 1.3 provides the same functionality (but improved) as in 1.2, which means:
- All videomodes the ps3 comes with are supported (420p, 720p, 1080p, WXGA, SXGA, WUXGA)
- Scaling (bilinear YV12/IYUV), converting (YV12/IYUV) and copying the frame to the framebuffer are accelerated by SPEs.
- Easy way to build the needed ps3libs by running "make ps3libs"
The API to manage programs running on a SPE is documented and provides an easy way to use different/faster scaler or converter.
Installation and ideas to extend the ps3 driver are documented.
IME on Mac OS X
Jiang added three new API functions to manage text input in SDL 1.3:
SDL_StartTextInput() - Enable text input events
SDL_SetTextInputRect() - Set the area where the IME will display
SDL_StopTextInput() - Disable text input events
There is also a new event that is triggered when partially composed text is available:
struct SDL_TextEditingEvent
{
Uint8 type; /**< SDL_TEXTEDITING */
char text[]; /**< The editing text */
int start; /**< The start cursor of selected editing text */
int length; /**< The length of selected editing text */
};