 |
Johan Nilsson
About Me
I'm currently studying to become Master of Science in Information Technology at Chalmers in Gothenburg, Sweden. I have about 1,5 years left after have been studying under 3 years. My particular sphere of interest mainly concerns interactive simulations, adaptive systems and algorithms in general. The latest program I developed was a program to use raytracing, pathtracing and photonmapping to render images of high quality, the program was written in C and used the GLUT lib. During my studies at Chalmers I have also participated in different projects as parts of different courses, e.g. developing a turn based strategy game, spreadsheet program with database connection and a traffic simulator.
During these years I have used quite a few programming languages and technologies, but here is a short list of the languages and technologies that I
find myself most comfortable in:
- ProgramingLanguages?: Java/J2SE, Python, C/C++, PHP
- Technologies: MySql?, Eclipse, Junit, Visual Studio .net
Contact
IM: ICQ : #25866101
e-mail: johanils ( at ) itstud (dot) chalmers (dot) se
Google Summer of code 2006
Proposal: #102 - 3D Earth
My proposal concerns a game where the player uses a 3D sphere representation of the earth to answer different questions.
Overview
Almost everyone has sometime played the game of correctly pinpointing a country on a map, or naming the correct capital of a certain country, this is in fact the essence in the game im proposing.
The Game
What I suggest is quite basically the game of "find the correct country" but instead of the usual 2D map, a sphere representing the Earth is used instead. . There are several types of games possible using this Earth model, but I will personally focus on pinpointing countries given the name.
The goal is to make the code so that it should be quite easy to add other types of games e.g. name capital, locate capital. It should also be possible to add a search function so that it searches the Earth and locates the place. Other functionality that might be added is that one can click on a country, and get some small info about that country. This application is not an attempt to copy Google Earth or something, Google Earth is much more extensive than this, and this application is simply a game to pinpoint countries, not a complete atlas. The GUI for this application should be kept to a minimum, ideally only the Earth would be visible. There is a need however to display the name of the country to be found, or a input field if one is to answer which country some marked area on the map is. The options menu should be hidden during run, maybe by clicking "ESC" the menu would appear and one might choose e.g. game mode
Implementation Issues
One of the most difficult tasks is to map a coordinate on the sphere to a specific country. The countries are not simple geometric objects; they are indeed quite complex in their form. The approach I am thinking of taking is to first develop a program (in e.g. Java) where, using the sphere texture as background, one can create polygons containing some area that one wants to be able to click on. One can also fill in the information about the country in this client, save the data to a file that can be loaded into the main application. The main application then traces the coordinate towards the data structure that holds the polygons rather than the texture itself. Maybe a spatial data structure should be considered to reduce the lookup time.
Deliverables
- Source Code for both game and editor
- Manual for both game and editor
- Design documents for both game and editor
Schedule
- Research/Familiarization (2 weeks) Familiarize myself with LG3D?
- Initial Design (1 week) Class diagrams, Create UML diagrams. Design for editor program also done here. Note that this i prilimary design, it may be altered when found inconsitent during implementation
- Game core, step 1 (1 week) Basic functionality of the actual game, should display a sphere with texture, can be rotated.
- Editor program (1 week) Editor program created so that one can create the "hit" areas, saves information to a file.
- Game core, step 2 (3 weeks) Should be able to load the file, and to click on the countries, generation of quetions. The game should be functional after this step.
- Game core, step 3 (1 week) Refactor and testing. Look for bugs, fix them. Optimize code.
- Documentation (1 week) Manual for the game, and the editor
- Unscheduled (1 week) This is more or less a pool of days that can be used in either steps if anything goes wrong and/or takes longer time than planned.
-- Main.mazon - 06 May 2006
|