Difference between revisions of "GSoC Ideas"

Jump to navigation Jump to search
3,316 bytes removed ,  11:03, 1 March 2013
Remove GSoC 2012 tasks
(Add GSOC 2012 activity)
(Remove GSoC 2012 tasks)
Line 67: Line 67:


Technical contact: [[User:Fuzzie|Alyssa Milburn]].
Technical contact: [[User:Fuzzie|Alyssa Milburn]].
Currently handled by: [[User:upthorn|upthorn]], GSoC 2012


On phones and other mobile devices, ScummVM may need to be shut down abruptly - for example, due to memory pressure caused by an incoming call, or another background task.
On phones and other mobile devices, ScummVM may need to be shut down abruptly - for example, due to memory pressure caused by an incoming call, or another background task.
Line 77: Line 76:


See [[OpenTasks/Generic/Saving Everywhere]] for more details.
See [[OpenTasks/Generic/Saving Everywhere]] for more details.
== Scalers ==
Technical contact: [[User:Sev|Eugene Sandulenko]], [[User:LordHoto|Johannes Schickel]].
Currently handled by: [[User:singron|singron]], GSoC 2012
Our SDL-based backends (a backend is roughly equivalent to a 'port'), such as the one used by default on desktop machines, use 2D scaler functions to 'scale up' the game screen to a larger size, such as plain 2x/3x scalers and HQ2x/HQ3x.
Right now, they are all hardcoded into the build, which means that adding new scalers is inconvenient, especially since they all have to be built into ScummVM. This means that, at the moment, we have stopped adding new scalers to the code. If our plugin system could be extended to allow for scalers to be provided as plugins, then these problems would be solved.
Once this is done, and the existing scalers changed to be plugins, then support could be added for scalers supporting higher bit depths (32bpp) - which would allow us to use a 32bpp overlay for the GUI. And finally, new scalers could be added (there have been several patches submitted already).
See [[OpenTasks/Generic/Scalers]] for more details.
== Wintermute Engine ==
Technical contacts: [[User:Strangerke|Arnaud Boutonné]], [[User:Sev|Eugene Sandulenko]].
Currently handled by: [[User:somaen|somaen]], GSoC 2012
The Wintermute Engine (WME) is a set of tools for creating and running graphical adventure games. This idea involves integrating the game runtime engine into ScummVM - this would make the games far more portable. Since there is a free SDK, it would allow people to directly develop 2D games that would run in ScummVM, which is a regular request from ScummVM users.
While the original runtime itself is LGPL, there is also a portable version of the runtime called ''WME Lite'', which already runs on Windows, iOS and MacOS. It only supports the 2D games, but since the 2.5D/3D games are outside the scope of ScummVM, that is ideal.
The important part of the task would be the actual integration; using ScummVM subsystems for graphics, audio, input, etc, and reworking the code to follow our portability/style guidelines. If there's enough time, it would also be possible to add some missing WME Lite features: for example, video support (which is probably most important) and sprite frame mirroring, rotations and blending modes.
See [[OpenTasks/Engine/Wintermute]] for more details.


== Improve touchscreen GUI ==
== Improve touchscreen GUI ==
Line 116: Line 89:


See [[OpenTasks/Generic/Touch GUI]] for more details.
See [[OpenTasks/Generic/Touch GUI]] for more details.
== Implement testing framework for ScummVM ==
Technical contacts: [[User:Sev|Eugene Sandulenko]].
Currently handled by: [[User:jakimushka|jakimushka]], GSoC 2012
The number of ScummVM supported games grows with each release. Since 0.8.0 we are performing extensive prerelease testing. Basically, it is game replaying to find regressions. This becomes a somewhat tiresome process and takes up a lot of time.
In fact there should be no changes in the gameplay in most cases, so event recording and proper replaying should be enough. There is some code for that based on the action recorder patch, but the recordings are not played consistently. The main problem is that there is no guarantee of the events to be in sync with other engine parts, so the playback may deviate, depending on the machine speed.
See [[OpenTasks/Generic/Add Testing Framework Engines]] for more details.


== Sources for other ideas ==
== Sources for other ideas ==

Navigation menu