Google Summer of Code: 2014

From ENIGMA

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
This article gives a general outline of several tasks that could be completed by Google Summer of Code 2014 volunteers. Most ideas were created by top ENIGMA contributors, but a few ideas were created by ENIGMA users.
This article gives a general outline of several tasks that could be completed by Google Summer of Code 2014 volunteers. Most ideas were created by top ENIGMA contributors, but a few ideas were created by ENIGMA users.
 +
 +
Students may join the ENIGMA IRC channel, #enigma on Freenode, or post on the forums if they have any questions or concerns.
== Integration of the Box2D Physics Engine ==
== Integration of the Box2D Physics Engine ==
Line 6: Line 8:
Requires:
Requires:
* At least intermediate C++ knowledge.
* At least intermediate C++ knowledge.
-
* GNU make experience, ability or willingness to learn how to compile and link libraries, as well as an intermediate understanding of basic high school Physics
+
* GNU make experience, ability or willingness to learn how to compile and link libraries, as well as an intermediate understanding of basic high school Physics.
 +
 
 +
Possible Mentors:
 +
* RobertBColton
 +
* JoshDreamland
== Implementation of the ANGLE Library ==
== Implementation of the ANGLE Library ==
Line 14: Line 20:
* C++ and graphics API knowledge.
* C++ and graphics API knowledge.
* GNU make experience, ability or willingness to learn how to compile and link libraries.
* GNU make experience, ability or willingness to learn how to compile and link libraries.
 +
 +
Possible Mentors:
 +
* RobertBColton
 +
* JoshDreamland
== Implementation of an Asynchronous Networking System ==
== Implementation of an Asynchronous Networking System ==
-
- TODO -
+
For games with multiplayer support, asynchronous networking is useful. A current, limited, implementation of sockets is available in GameMaker, but it lacks asynchronous functions.
Requires:
Requires:
Line 22: Line 32:
* Must be familiar with cross platform programming.
* Must be familiar with cross platform programming.
* Requires: Ability or willingness to learn networking using [https://en.wikipedia.org/wiki/Berkeley_sockets Berkeley Sockets]
* Requires: Ability or willingness to learn networking using [https://en.wikipedia.org/wiki/Berkeley_sockets Berkeley Sockets]
 +
 +
Possible Mentors:
 +
* RobertBColton
 +
* JoshDreamland
== Implementation of an VR technology ==
== Implementation of an VR technology ==
-
With recent technologies such as Oculus Rift, the experience of players can be changed with interesting effects.
+
With recent technologies such as Oculus Rift, the experience of players can become more immerse. We recommend implementing the Oculus SDK, since the Oculus Rift is currently the most popular and most supported form of VR.
Requires:
Requires:
-
* At least intermediate C++ knowledge.
+
* C++ and graphics API knowledge.
* GNU make experience, ability or willingness to learn how to compile and link libraries.
* GNU make experience, ability or willingness to learn how to compile and link libraries.
 +
 +
Possible Mentors:
 +
* RobertBColton
 +
* JoshDreamland

Revision as of 00:07, 14 February 2014

This article gives a general outline of several tasks that could be completed by Google Summer of Code 2014 volunteers. Most ideas were created by top ENIGMA contributors, but a few ideas were created by ENIGMA users.

Students may join the ENIGMA IRC channel, #enigma on Freenode, or post on the forums if they have any questions or concerns.

Contents

Integration of the Box2D Physics Engine

The current version is our own custom rolled wrapper with documentation that simply lacks joints, the GameMaker: Studio compatible extension on the other hand lacks, well, compatibility.

Requires:

Possible Mentors:

Implementation of the ANGLE Library

ANGLE is a library that translates OpenGL calls to DirectX calls, giving Windows users a potential performance boost. Currently, ENIGMA has OpenGL 1, OpenGL 3 and DirectX 9 graphics systems. ANGLE would remove the requirement of the DirectX system in favor of a singular OpenGL 3 system.

Requires:

Possible Mentors:

Implementation of an Asynchronous Networking System

For games with multiplayer support, asynchronous networking is useful. A current, limited, implementation of sockets is available in GameMaker, but it lacks asynchronous functions.

Requires:

Possible Mentors:

Implementation of an VR technology

With recent technologies such as Oculus Rift, the experience of players can become more immerse. We recommend implementing the Oculus SDK, since the Oculus Rift is currently the most popular and most supported form of VR.

Requires:

Possible Mentors:

Personal tools
Namespaces
Variants
Actions
Navigation
ENIGMA
Other
Toolbox