8.4.08

mapscript/XNA

mapscript / xna / c# is fun. step by step : install MS4W, FWTools(opt.), Configure Mapserver cgi, Install XNA Game Studio 2.0 , then go berserk.

eg. map file

NAME test
SIZE 500 500
STATUS ON
SYMBOLSET Symbols/symbols.sym
EXTENT -180.000183105469 -90 180 83.6230316162109
UNITS METERS
SHAPEPATH "Data/"

WEB
IMAGEPATH "Web/"
IMAGEURL "Web/"
END

PROJECTION
"init=EPSG:4326"
END


LAYER
NAME world_adm0
TYPE POLYGON
STATUS ON
DATA world_adm0
CLASS
STYLE
COLOR 110 50 100
OUTLINECOLOR 200 200 200
SYMBOL 0
END
END
END

LAYER
NAME "prov_bound"
TYPE RASTER
STATUS ON
CONNECTION "http://www2.dmsolutions.ca/cgi-bin/mswms_gmap?"
CONNECTIONTYPE WMS
METADATA
"wms_srs" "EPSG:4326 ESPG:4030"
"wms_name" "prov_bound"
"wms_server_version" "1.1.1"
"wms_format" "image/gif"
END
END

END


with wms capability.. could load it up on my application.. exciting stuff

googlecode svn

Finally, found some time to create a SVN repository, as I enter full-fledged coding stage. Have most of the resources in place to make things work now.

1. XNA Game Studio 2.0 / C#
2. Visual Studio 2005 (*not using 2008.. not yet.. will try compiling in it later)
3. MapScript API for data (NEED to MAKE it WORK!)
4. StreamLine, Tile, Cache, Prepare Images for Fast Simulation / Access / Display
5. Textures of size powers of 2, < 2048 per tile
6. Migoid (boid) code (C++ to C# port) .. will essentially be a rewrite mostly
7. xWinFormLib - Good GUI lib. for XNA.. trying it out.. should be enough for my needs.
8. GIS interface - custom.. only include required layers.
9. TimeLine/Historic Events Classes to be designed soon.

migraine.googlecode.com

20.3.08

Ogre and XNA

After Framework 1.0 which I did using SDL, C++, I wanted to try other libraries. For GIS/Map stuff I tried out GDAL/OGR, MapScript API. For Rendering, I used osg, vtk at the beginning and then moved on to Ogre. Now, I'm using XNA/C# to integrate mapscript, shapelib and the other cool stuff with XNA Game Studio.

This is what I've been through regarding the Implementation part. The data collection / research parts led me to some papers from JSTOR .

8.10.07

Framework 1.0

Have been busy building a very simple game engine like framework using OpenGL and SDK for the MigraInE project. It is coming together slowly and steadily. Planning to start on a relatively lower resolution map on 2 dimension with some elevation data and get the geographic grid figured out. Have been thinking of various ways to implement the world :

1. simple flat world, with a flat rectangular map with grids but elevation
2. a spherical world, that is still gridded with elevation
3. a world that can go both ways as the viewer goes from the global to local views (like civ4)

Realtime rendering of the world is also being thought of using the elevation data and somehow optimizing the time that it takes to read and populate the arrays. vtkDEMReader() crashes when I use a DEM file larger than around 5 MB. So, need to think of something else, probably will use preprocessed heightmaps.


This screen is just a 5400X2700 jpg of the BMNG format texture mapped into a sphere. Not anything fancy just as yet.

21.8.07

Initial Stages

At present, I am in the initial stages of implementation, experimenting with different datasets, libraries and tools which I can use effectively. So far I have tried : SDL/OpenGL for drawing in OpenGL, vtk(visual tool kit) for simple visualizations, GDAL+OGR libs for reading/storing/writing GIS data. I'm planning to use C++ for the project. Have already downloaded some sample DEM data from the USGS GTOPO30 dataset and played with some command line gdal & ogr tools. I was able to generate some images through these tools which I then tried to read in Paraview 3.x. Next, I'm planning to try out some widget libraries like FLTK, wxWidgets and Qt for the GUI.

playing with sample data in Paraview 3.0.2

Other general thoughts: need some climate data that is useful enough to document drastic change in the physical features of the world over the ages, need some basic anthropological factors that probably influenced ancient human migration, need to establish a basic rule-based algorithm for the simulation of the migration etc..

16.8.07

MigraInE: A tool to simulate human migration

Migration of Independent Entities - MigraInE. This is inspired by the Genographic Project by Dr. Spencer Wells and Craig Reynolds' boids. For a detailed discussion of the Genographic Project & Boids take a look at:
The Genographic Project
Craig Reynolds's boids

Human migration is a very interesting topic. It has fascinated a lot of scholars in the past. Migration is a continuous process and its happening everyday, everywhere in this world. My project would simulate humans as artificial migratory beings controlled by various factors like food, shelter(land), resources, climate etc. The journey of humans can be tracked in a real-time simulation over time starting at around 200,000 BC. Unlike the Genographic project which is based on the analysis of mtDNA of volunteers across the globe, this would be based on various physical, social & climatic factors that govern the migration. Historically important climatic changes will affect the route the humans take. I hope it would be an interesting journey for me to document the journey of men from the dawn of humans.