Hi everybody.
I am wanting to develop a 3d version of my artificial life simulator
( http://www.stauffercom.com/evolve4 ).
The game premise is a poorly run biohazard laboratory (hence the name 'Biohazard Lab From Hell'), and the players job is to eradicate the biohazards. Game play will be unique in that the baddies are evolving while you play. The creatures that survive will be used to seed the next level of game play. At least thats my hope for this game.
The problem is, I am a total noob to 3d development. This engine looks great. I tried some of the 3d level editors will little success (my fault, for being so impatient). The best editor I have found was a DOOM editor (doom_builder.exe).
So my first question is this: Can IRRLICHT use doom .wads??
My next question is really to solicit any good 3d people who would like to make this project a reality.
More info on what I am trying to do:
=======================
If you follow the link above, and explore the screen shots etc... you'll notice its a 2d overhead view of a lots of grid-like creatures. My initial goal is to be able to "go into" this world by using this 3d engine, and allow the player to explore while the simulation is running. This would be more or less a "god mode" type thing.
The next step would be to have the player interact with these creatures (mostly by killing them). With just that change, the system should right away exhibit evolution of creature behavior, as the creatures you do not kill will breed and the one you have killed, won't be breeding at all.
Of course tweaking the simulation model, and game play characteristics would follow.
The maps or levels wouldn't need to be elaborate initially. Either would the creatures (simple blobs initially). Anyway, that's my plan. And being able to get a quickie map built is my main goal right now.
In my opinion, the strength of this game concept comes from the core alife simulator I have built. which is already up and running. Its strengths are the ability to simulate thousands of creatures in real time, and exhibit natural selection in a short period of time.
What I have done so far:
================
1. I have the IRRLICHT engine, compiling inside my Visual Studio .NET 2003 environment
2. I can build the quake map demo and modify it to use other quake3 maps.
Thanks for taking the time to reading this.
Cheers.
Ken
BHLFH - Biohazard lab from hell
cool sim! I like it
unfortunatley irrlicht can't use doom WAD files, but as you've seen it can use Quake maps. I think your biggest challenges with having so many creatures moving around will be-
1) collision, you're going to need your simplified collision to decide where the masses of creatures can and can't move, you'll need something similar to your 2d code rather than using irrlicht's (rather slow) built in collision or even a physics api (still too slow for so many entities)
2) culling. you won't be able to have tens of thousands of scene nodes in the scene graph (well, not without making some kind of tree hiararchy and making branches invisible), so you'll need to be picky about which ones you register for rendering, and even then you'll probably need--
3) batching. drawing so many meshes one after another will seriously hurt your graphics card! you'll need to put lots of them into one buffer, or use a technique more specific to your needs (ie directx instancing) instead of irrlicht's generic drawing routines.
sounds like a fun project, good luck
unfortunatley irrlicht can't use doom WAD files, but as you've seen it can use Quake maps. I think your biggest challenges with having so many creatures moving around will be-
1) collision, you're going to need your simplified collision to decide where the masses of creatures can and can't move, you'll need something similar to your 2d code rather than using irrlicht's (rather slow) built in collision or even a physics api (still too slow for so many entities)
2) culling. you won't be able to have tens of thousands of scene nodes in the scene graph (well, not without making some kind of tree hiararchy and making branches invisible), so you'll need to be picky about which ones you register for rendering, and even then you'll probably need--
3) batching. drawing so many meshes one after another will seriously hurt your graphics card! you'll need to put lots of them into one buffer, or use a technique more specific to your needs (ie directx instancing) instead of irrlicht's generic drawing routines.
sounds like a fun project, good luck
why dont you just make a 3d version of evolve;) maybe with a bit interaction...
greets,
halan
btw: evolve looks great
greets,
halan
btw: evolve looks great
My Blog: http://www.freakybytes.org
Hello, very interesting project.
I guess you could implement evolve in 3D using much less organisms than in a 2D version, maybe 20 or so.
Anyway, a way to solve the massive collisions problems could be to use a "collision map". That's done by dividing the simulation space in cubes, 2x2 units for example, and calculate what height value each cube has, then you can know that if an organism is in cube 'x' it has to be at height 'y'. You can tweak it so you can get other information(organisms in same cube, etc)
Of course this is far from acurate, depending on cube size and level geometry, but i think you won't need absolute precision.
I guess you could implement evolve in 3D using much less organisms than in a 2D version, maybe 20 or so.
Anyway, a way to solve the massive collisions problems could be to use a "collision map". That's done by dividing the simulation space in cubes, 2x2 units for example, and calculate what height value each cube has, then you can know that if an organism is in cube 'x' it has to be at height 'y'. You can tweak it so you can get other information(organisms in same cube, etc)
Of course this is far from acurate, depending on cube size and level geometry, but i think you won't need absolute precision.
-
- Posts: 2
- Joined: Wed Jan 17, 2007 4:27 pm
I produced a demo program that takes a sim file and produces a 3d world which you can explore using the FPS camera. It includes the skybox from the CDemo.
http://www.stauffercom.com/evolve4/evolve_3d.zip
it's all self contained, and includes a sample sim file (test.evolve)
To run it, use a Command Prompt to execute the program and give it the name of the sim file. For example,
C:\> evolve_3d test.evolve
To quit, its the same as the other IRRLICHT demos
Thanks to those who responded. I especially like the comment about making evolve into 3d. So I am abandoning my goal to make a game for now. My new goal is to take the existing simulator and make that work in 3d (without any level editor stuff or other fancy eye candy).
(It's the biggest use of TestCube in IRRLICHT history!!! )
http://www.stauffercom.com/evolve4/evolve_3d.zip
it's all self contained, and includes a sample sim file (test.evolve)
To run it, use a Command Prompt to execute the program and give it the name of the sim file. For example,
C:\> evolve_3d test.evolve
To quit, its the same as the other IRRLICHT demos
Thanks to those who responded. I especially like the comment about making evolve into 3d. So I am abandoning my goal to make a game for now. My new goal is to take the existing simulator and make that work in 3d (without any level editor stuff or other fancy eye candy).
(It's the biggest use of TestCube in IRRLICHT history!!! )
Well, it loads about 1min, then i walk about 3min. I get 5-10 FPS. When i press ALT+F4 in console wrote that 0 cycle steps done. Maybe my computer is too old (1.4ghz)
My project in forum- ATMOsphere - new dynamic sky dome for Irrlicht