SoC Ideas SDL2

From The Battle for Wesnoth Wiki
Revision as of 23:15, 12 March 2014 by Timotei21 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page is related to Summer of Code 2014
See the list of Summer of Code 2014 Ideas

This is a Summer of Code 2014 Idea



Page for the idea: SoC_Ideas_SDL2

The Wesnoth project uses the SDL library. Last year, a new major version (2.0) of SDL was released. This version of the library has better support for mobile devices like the Android and the iPhone. This project involves helping porting Wesnoth from SDL 1.2 to 2.0.

There are 5 submitted student proposals for this idea

Ben Kenawell - SDL2 Project Proposal

Descriptive Summary of Proposal
I would like to work on moving the event and input handling from SDL 1.2 handling to SDL 2.0. To accomplish this I will be considerate of the many differences between the versions including how text input is handled and the differences in event handling. In performing both these tasks, I will be aware of a possible Android or iOS port (since I would love to see that myself), so that my code will perform as smoothly on mobile operating systems as it already does on desktop OSes.

First Level Sections
One major change in event handling is how the thought process behind the keyboard works. The keyboard has become like a many buttoned controller, instead of text inputs. This will be a major change I will work on, in order to make Battle for Wesnoth more keyboard-layout independent. Mouse input will remain similar, except for the mousewheel which, with better support in SDL 2.0, will be more useful for scrolling around the screen. This change may also help with two-finger scrolling across a screen where the comptuer reports this as a mousewheel, ultimately aiding in the creation of a mobile port. Event handling will have similar ideas in mind. While the actual code has not changed very much, those differences will be taken care of as well as a new style of event handler for certain important events, i.e. events that affect the state of the app (open/closed) will be monitored more closely so that progress may be saved. I have taken this into consideration along with the other event handler changes in order to deal with the "garbage collector," which is the nightmare of mobile operating systems. I fear that in the near future (at least with Windows machines), that the garbage collector's presence might make an appearance in desktops, and this measure would increase the longevity of my changes as well as more easily enable mobile ports.
See Dragonofair0/GSoC2014 project idea for more information.

Juan Miguel Ruiz Ladrón, new SDL version

Project description I want to upgrade Wesnoth's SDL 1.2 version to SDL 2.0 version. Specifically the event handling system.

First-level The main problem to move Wesnoth to SDL 2.0 version is the event handling system. I would work with desktop version of the game, improve keyboard input to select actions, units, etc. Also, develop the mobile version of the game, i'm working with Android, using LibGdx framework, i think, it's similar to SDL 2.0 version for handling events and more.
See Juan Miguel Ruiz Ladron/GSoC2014 Proposal for more information.

lipkab - SDL2 transition

I propose to help with the SDL2 transition.

I'd like to work on implementing hardware accelerated rendering for Wesnoth and enabling it for the map/unit rendering system.
See SoC2014 lipkab SDL2 for more information.

See SoC2014 SDL2 DrawingTransition for more information.

TODO: Copy this page and write "your name - proposal title" in this h4 section

TODO: Write a small (1-4 sentences) description of your proposal here.

TODO: Add more first-level sections to detail your proposal
See SoC2014 SDL2 stevedes for more information.

Additional Information

The transition from SDL 1.2 to 2.0 is a large project and a lot of work needs to be done:

  • The event handling has changed, so the event and input handling in Wesnoth needs to be changed.
  • With SDL 1.2 we are using surface-based drawing. With the transition to 2.0, we want use accelerated drawing.

The SDL transition is too large for one GSoC project. During the application period the student will discuss which part of the transition he or she wants to work on during the summer.

Whom to ask about this

mordante on IRC

This page was last edited on 12 March 2014, at 23:15.