Open main menu

Difference between revisions of "Talk:OpenTasks"

2,345 bytes added ,  22:08, 11 March 2009
Add some ideas on the OGL task.
(Add some ideas on the OGL task.)
Line 64: Line 64:


: Removed! --[[User:Fingolfin|Fingolfin]] 03:10, 10 March 2009 (UTC)
: Removed! --[[User:Fingolfin|Fingolfin]] 03:10, 10 March 2009 (UTC)
== [[User:DJWillis|DJWillis]]'s ideas on an OpenGL task ==
Comments please ;). I am still fleshing this out but I wanted to chuck something up.
Not final (and do people even think it is a good idea?)
'''Improve the default ScummVM backend to leaver OpenGL support and provide a common base class.'''
TODO: Make an exciting title ;).
''Technical Contact:'' [[User:DJWillis|John Willis]] (and?)
''Background:''
Since its inception ScummVM has offered a default cross platform backend that makes use of the extensive and prolific SDL API. We have no intention to change this but we would like to extend the default backend to take advantage of things like OpenGL, and its little brother OpenGLes, that is becoming commonplace on the latest generations of devices.
We would also like to refactor the common aspects of the SDL backend into a common base class to better support backends that derive from it. Architecturally this could be very elegant and allow platforms to derive from the common SDL base (inc. the OpenGL and default existing one) and future platforms could derive from the OpenGL base etc.
There are a number of required features that the extended backend must have.
''The Task:''
*Allow for arbitrary rate scaling.
* Be well written and maintainable!
** This could become part of the default choice for ScummVM’s userbase so really does have to be well architected.
* Offer a fallback to the existing rendering code if OpenGL support is not available OR not desired by the user. This should be configurable at run time (maybe a config setting?).
* Support removing the new OpenGL additions at compile time by the use of structured defines so that NO OpenGL code need be built if not required.
''Also required:''
* This task will require testing under both OpenGL and OpenGLes API’s. There are sample OpenGLes and OpenGL implementations for development available from several sources. (TODO: Add links to the PowerVR OGLES dev kits.)
''Required Skills:''
* Reasonable C++ skills.
* Refactoring skills.
* Knowledge of the OpenGL and SDL API’s.
* Knowledge of the default SDL ScummVM platform backend is desirable.
We feel this could represent a very interesting project and is widely requested by the userbase. Doing it right represents a reasonable challenge but then a good challenge has its rewards ;-).
208

edits