KDE Games/Kolf 2: Difference between revisions

From KDE Community Wiki
(first tasks)
m (moved Projects/Games/Arcade Games/Kolf2 to KDE Games/Kolf 2: Move page to its correct location.)
 
(15 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Box|Hint|I'm currently creating this page. -- [[User:Majewsky|Majewsky]] 21:43, 26 December 2008 (UTC)}}
This is the project page for Kolf 2, the next generation of minigolfing in KDE. If you've got a question or would like to contribute, send a mail to [mailto:[email protected] Stefan].


This page is intended to list the tasks that need to be done in Kolf 2. We can divide these tasks into the following three groups: objects, engine, and interface.
== Meeting ==


<!--
The next Kolf developer meeting will be on '''May 26, 10:00 UTC''' (in your local time [http://www.timeanddate.com/worldclock/fixedtime.html?&day=26&month=5&year=2009&hour=10&min=00&sec=0 here]), at the IRC channel [irc://irc.freenode.net/kdegames #kdegames], [http://freenode.net/ freenode network]. Join us if you like.
Template for a new feature that can be added into the lists below:
{{FeatureTodo|affected classes|task description|nobody|}}
or
{{FeatureTodo|affected classes|task description|your mail|your name}}
-->


== Objects ==
=== Topics ===


This category contains everything related to the objects that appear on the course scene.
* Current developments
* Outstanding design issues in the kernel
* <nowiki>[add more topics here]</nowiki>


{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
== Unsolved design questions ==
|- style="background: #ececec; white-space:nowrap;"
! Status !! Classes !! Task description !! Assigned to
{{FeatureDone|Object<br />Overlay|Base class design|[email protected]|Stefan}}
{{FeatureTodo|Ball<br />Putter|Putting (end-of-move signal and such missing)|nobody|}}
{{FeatureDone|WallObject<br />WallOverlay|Wall|[email protected]|Stefan}}
{{FeatureDone|RectBlockObject<br />RectOverlay|Rectangle-shaped solid block|[email protected]|Stefan}}
{{FeatureTodo|EllipseBlockObject|Curved solid block (collision code missing)|nobody|}}
{{FeatureTodo|LandscapeObject|Landscape (including puddles, slopes, etc.) as height map|nobody|}}
{{FeatureTodo|HoleObject|The hole one has to reach|nobody|}}
{{FeatureTodo|BlackHoleObject|A black hole which moves you to another position of the scene|nobody|}}
{{FeatureTodo|WindmillObject|A generic moving obstacle|nobody|}}
{{FeatureTodo|BumperObject|Something that reflects the ball with increased speed when the ball touches it|nobody|}}
|}


It may be that some objects are missing in this list. Do not forget to add these. (Of course, you can also add new objects that did not exist in Kolf 1.)
* Internal design of the landscape objects
* How to integrate artwork into the object rendering (at least 2D)?


== Engine ==
== Outstanding tasks ==


This category contains everything related to game management.
Pick one if you like, and start to contribute! (Names in parentheses mark assigned tasks.)


{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
''Fundamental class design''
|- style="background: #ececec; white-space:nowrap;"
* allow for multiple geometries per object (Stefan)
! Status !! Classes !! Task description !! Assigned to
* redesign the putter class to allow for different types of putters
|}


== Interface ==
''Objects''
* landscape objects (GSoC)
* windmill object
* bumper object


This category summarizes work that is being done on the interface.
''Overlays''
* blackhole overlay


{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width: 100%;"
''Game engine''
|- style="background: #ececec; white-space:nowrap;"
* a new persistency framework, along with Save/Undo/Redo actions (Stefan)
! Status !! Classes !! Task description !! Assigned to
* support for network playing via GGZ (currently blocked, waiting for KGGZ libraries to arrive in trunk)
|}
 
''3D view''
* rendering stuff in 3D (Casper)
* make OpenGL an optional dependency in the build system and in code
 
''Editor interface''
* an object model with which objects on the view can be selected
* an object toolbox where objects can be added to the view
* a property view based on the editor model and type models
 
''Miscalleneous/Junior Jobs''
* remove hard-coded colors from the code, replace with KColorScheme brushes

Latest revision as of 17:23, 27 April 2012

This is the project page for Kolf 2, the next generation of minigolfing in KDE. If you've got a question or would like to contribute, send a mail to Stefan.

Meeting

The next Kolf developer meeting will be on May 26, 10:00 UTC (in your local time here), at the IRC channel #kdegames, freenode network. Join us if you like.

Topics

  • Current developments
  • Outstanding design issues in the kernel
  • [add more topics here]

Unsolved design questions

  • Internal design of the landscape objects
  • How to integrate artwork into the object rendering (at least 2D)?

Outstanding tasks

Pick one if you like, and start to contribute! (Names in parentheses mark assigned tasks.)

Fundamental class design

  • allow for multiple geometries per object (Stefan)
  • redesign the putter class to allow for different types of putters

Objects

  • landscape objects (GSoC)
  • windmill object
  • bumper object

Overlays

  • blackhole overlay

Game engine

  • a new persistency framework, along with Save/Undo/Redo actions (Stefan)
  • support for network playing via GGZ (currently blocked, waiting for KGGZ libraries to arrive in trunk)

3D view

  • rendering stuff in 3D (Casper)
  • make OpenGL an optional dependency in the build system and in code

Editor interface

  • an object model with which objects on the view can be selected
  • an object toolbox where objects can be added to the view
  • a property view based on the editor model and type models

Miscalleneous/Junior Jobs

  • remove hard-coded colors from the code, replace with KColorScheme brushes