From ScummVM :: Wiki
Jump to navigation Jump to search
Name Alejandro Marzini
Team Member since 26/04/2010
Working on SDL backend and OpenGL
Personal webpage/BLOG


I am one of the 2010 GSoC students working on ScummVM. I will be working on refactoring the SDL backend, and adding OpenGL(ES) as a new render engine for ScummVM.

I have created a blog, where I will post all my progress on this task.


  • Design and creation of base subsystems
    • Description: Design of a new backend structure that make ports easier to manage
    • Time: May 24 – June 7
    • Status: Finished
    • Deliverables: The new backend structure consists on having the specialized code of the backends (Graphics, Events, Audio, CD, Timer, and else) separated on different manager classes. These managers then are initialized and called from the main backend class.
      • New Classes: ModularBackend, MutexManager, GraphicsManager
      • Refactored Classes: AudioCDManager
  • Refactoring of SDL backend
    • Description: Implement the new backend structure to the SDL backend and its ports (Some ports may be left for later if time allows it)
    • Time: June 7 – June 28
    • Status: In progress - working on WinCE (Half done) and Linux Moto Port
    • Deliverables: The SDL backend has been refactored, and almost all its code has been modularized.
      • Refactored OSystem_SDL, SdlAudioManager, SdlMutexManager, SdlEventManager, SdlGraphicsManager, SdlMixerImpl, OSystem_Win32, OSystem_POSIX, OSystem_MacOSX, OSystem_SDL_SamsungTV, OSystem_SDL_Symbian, OSystem_LINUXMOTO, OSystem_GP2XWIZ
      • To do: Refactor OSystem_WINCE3, OSystem_GP2X
  • Implementation of OpenGL support
    • Description: Implement a OpenGL Graphics Manager working with SDL
    • Time: June 28 – July 12
    • Status: To do
  • Implementation of OpenGL ES support
    • Description: Implement an OpenGL ES Graphics Manager
    • Time: July 12 – July 19
    • Status: To do
  • Implementation of new modular backend for other platform backends
    • Description: Refactor the actual ports for subclassing the ModularBackend class
    • Time: July 19 – August 14
    • Status: To do