Difference between revisions of "OpenTasks/Engine/Wintermute"

From ScummVM :: Wiki
Jump to navigation Jump to search
m (Grammatical corrections)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox_OpenTasks|
{{Infobox_ClosedTasks|
taskname=Integrate Wintermute Engine (2D only)|
taskname=Integrate Wintermute Engine (2D only)|
gsocworkload=100%|
gsocworkload=100%|
techcontact=[[User:Strangerke|Arnaud Boutonné]]|
techcontact=[[User:Strangerke|Arnaud Boutonné]], [[User:Sev|Eugene Sandulenko]]|
subsystem=Engine|
subsystem=Engine|
taskstatus=GSoC 2012 ([[User:somaen|somaen]]), Done and Merged
}}
}}


Line 10: Line 11:
===Background:===
===Background:===


The Wintermute Engine (WME) is a set of tools for creating and running graphical adventure games. It's originally MS-Windows oriented, and lets the user create 2D, 2.5D (using 3D characters in a 2D environment) and 3D games for free. During the first semester of 2011, a WME developer, Mnemonic, created WME Lite in a move to make WME more portable. WME Lite runs "only" WME 2D games with a sub-set of available features, and runs on Windows, iOS and MacOS.
The Wintermute Engine (WME) is a set of tools for creating and running graphical adventure games. It's originally MS-Windows oriented, and lets the user create 2D, 2.5D (using 3D characters in a 2D environment) and 3D games for free. During the first semester of 2011, a WME developer, Mnemonic, created WME Lite in a move to make WME more portable. WME Lite runs "only" WME 2D and 1rst person games with a sub-set of available features, and runs on Windows, iOS and MacOS.


After some discussion with Mnemonic, it appears that the engine should be backward compatible, and that development since the last version (v1.9.1, on 1/1/2010) has been slow, so it's a good time to work on the integration of the Wintermute Engine (2D) into ScummVM. This will be based on WME Lite sources, available on [http://code.google.com/p/wmelite Google Code].
After some discussion with Mnemonic, it appears that the engine should be backward compatible, and that development since the last version (v1.9.1, on 1/1/2010) has been slow, so it's a good time to work on the integration of the Wintermute Engine (2D) into ScummVM. This will be based on WME Lite sources, available on [http://code.google.com/p/wmelite Google Code].
Line 17: Line 18:


* Integrate WME Lite sources in ScummVM
* Integrate WME Lite sources in ScummVM
* Rework code so it follows ScummVM coding conventions
* Make use of ScummVM subsystems for graphics, audio, input, ...
* Refactor code when required
* Rework code to follow our portability guidelines
* Add support for WME 2D Games not suffering from WME Lite limitations (see list [http://res.dead-code.org/doku.php/wmelite:start#unsupported_and_changed_features here].
* Add and test support for a number of WME 2D and 1rst Person games, taking into account WME Lite limitations (see list [http://res.dead-code.org/doku.php/wmelite:start#unsupported_and_changed_features here]).


If there's enough time, the following tasks may be covered too:
If there's enough time, the following tasks may be covered too:
* Add video support to WME Engine
* Add video support to WME Engine (which has the highest priority)
* Add sprite frame mirroring
* Add sprite frame mirroring
* Add sprite rotations
* Add sprite rotations
* Add sprite blending modes
* Add sprite blending modes
===The Benefits:===
- This would allow to run most of the 2D and 1rst person games using Wintermute Engine, all of them on a longer term.
There are currently more than 30 games targetted, some are described [http://res.dead-code.org/doku.php/games:start in Wintermute Engine documentation], and the others may be found [http://forum.dead-code.org/index.php?board=2.0 in the forum].
This includes:
* [http://www.coldwinterwaiting.com/ Corrosion]
* [http://www.juliathegame.com/ J.U.L.I.A.] (will be released soon)
* [http://www.adventuregamers.com/article/id,1420 The Shine of a Star]
* [http://www.kulivocko.cz/galerie SnowShine]
* [http://gameletgame.blogspot.com/ Hamlet or the last game without MMORPS features, shaders and product placement]
* [http://taiken.savana.cz/nihilis/deadcity_eng.html The Dead City]
* And so many more...
- The Wintermute Engine has a free SDK. This would allow people to directly develop 2D games that would run in ScummVM, which is a regular request from ScummVM users.
- Compared to the current WME Lite engine, an integration in ScummVM would provide:
* free sound support
* enhanced portability (it currently only works on iOS, MacOS and Windows)
* video support and sprite manipulations


===Required Skills:===
===Required Skills:===


* Good C++ skills.  
* Good C++ skills.  
* Engine internals could be studied within a week or less.
* Good knowledge of ScummVM coding conventions and portability guidelines (could be learned in less than a week)
* Engine internals could be studied quickly.

Latest revision as of 10:58, 1 March 2013

Closed Task
Task Name Integrate Wintermute Engine (2D only)
Technical Contact(s) Arnaud Boutonné, Eugene Sandulenko
Subsystem Engine
Status GSoC 2012 (somaen), Done and Merged

Background:

The Wintermute Engine (WME) is a set of tools for creating and running graphical adventure games. It's originally MS-Windows oriented, and lets the user create 2D, 2.5D (using 3D characters in a 2D environment) and 3D games for free. During the first semester of 2011, a WME developer, Mnemonic, created WME Lite in a move to make WME more portable. WME Lite runs "only" WME 2D and 1rst person games with a sub-set of available features, and runs on Windows, iOS and MacOS.

After some discussion with Mnemonic, it appears that the engine should be backward compatible, and that development since the last version (v1.9.1, on 1/1/2010) has been slow, so it's a good time to work on the integration of the Wintermute Engine (2D) into ScummVM. This will be based on WME Lite sources, available on Google Code.

The Task:

  • Integrate WME Lite sources in ScummVM
  • Make use of ScummVM subsystems for graphics, audio, input, ...
  • Rework code to follow our portability guidelines
  • Add and test support for a number of WME 2D and 1rst Person games, taking into account WME Lite limitations (see list here).

If there's enough time, the following tasks may be covered too:

  • Add video support to WME Engine (which has the highest priority)
  • Add sprite frame mirroring
  • Add sprite rotations
  • Add sprite blending modes

The Benefits:

- This would allow to run most of the 2D and 1rst person games using Wintermute Engine, all of them on a longer term. There are currently more than 30 games targetted, some are described in Wintermute Engine documentation, and the others may be found in the forum.

This includes:


- The Wintermute Engine has a free SDK. This would allow people to directly develop 2D games that would run in ScummVM, which is a regular request from ScummVM users.

- Compared to the current WME Lite engine, an integration in ScummVM would provide:

  • free sound support
  • enhanced portability (it currently only works on iOS, MacOS and Windows)
  • video support and sprite manipulations

Required Skills:

  • Good C++ skills.
  • Good knowledge of ScummVM coding conventions and portability guidelines (could be learned in less than a week)
  • Engine internals could be studied quickly.