|Project:||The Open Toolkit demo|
With 1.0 beta-1 out of the door, it is time to open the discussion on the OpenTK demo.
Why do we even need a demo?
In my opinion, a demo is useful for three main reasons:
- to attract attention and sell the features of the library
- to provide a concrete application as a reference for users and as a test case for the library itself
- to act as an experimental testbed, where new features must prove themselves before becoming part of the core library
There are other reasons for creating a demo application, but the bottom line is that this will be beneficial for both users and developers of OpenTK.
What will the demo contain?
This is ultimately up to the community to decide. A few rough ideas to get us started:
- it should be possible to implement in a reasonable time frame
- light on artwork, to avoid large downloads (can it fit in 10MB?)
- (related to the above) procedural generation for graphics?
- scalable to older hardware (to the extent possible)
- it should be something interesting, i.e. something more than "yet-another-parallax-demo"
What could fit inside those constraints?
One idea: split-screen, 2-player deathmatch. Each player controls an aircraft and tries to shoot down his opponent. Can take advantage of simple physics and procedural terrain generation. Relatively simple to implement.
Can I help with the demo?
Glad you asked! The first step is to decide what the demo will be (brainstorm!) The second step is to define with a very rough design document (which features it will include and which features it will not include). The final step is to implement this.
This topic is about the first step, so share your ideas!
Where can I get the source code?
Once the code becomes more mature, proper packages will be made available. Until then:
- Install an IDE (Visual Studio 2008 Express Edition, MonoDevelop 2.0 & 2.2 and SharpDevelop 3.0 are all fine. Higher versions will work, too.)
- Install git (Windows, Mac OS X, or "
sudo apt-get install git-core" for Ubuntu).
git clone git://opentk.git.sourceforge.net/gitroot/opentk/opentkfrom a terminal, or from the git gui (on Windows, right click a folder and select "Git GUI here").
- Open Demo.sln and hack at will!
git commit -a .to commit your changes to your local branch (or click the "commit" button in Visual Studio).
It will immediately become obvious that the code is currently pre-alpha quality. It contains an incomplete but usable graphics abstraction layer, as well as a working fractal terrain generator (if you know how to perform correct normal mapping on terrain, please drop a hint!)