Large Terrain

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
gamemaker981
Posts: 12
Joined: Sat Jan 27, 2007 4:21 am

Large Terrain

Post by gamemaker981 »

How can I create a very large terrain with paths, valleys etc in it?

If we use the Irrlicht tutorial, all we get is a single texture, far away from a nice terrain.

I mean, something richer in detail. I don't want to hear scaling as a solution :lol:

The idea is to make something like one level of games like Unreal 2, Halo etc.

Please help.
Why did I choose Irrlicht? Simple: It has the most helpful tutorials. :-)
olivehehe_03
Posts: 157
Joined: Tue Mar 20, 2007 8:30 am

Post by olivehehe_03 »

As far as I know, the terrain in Halo is a mesh whereas the terrain in the Irrlicht demo is a heightmap, so that could be why Halo terrains can be more detailed. Anyways to make your own you'd need to model it yourself, which generally takes longer than using a heightmap, but would give you the extra detail you're after, and as for how to do that, search google for terrain modelling or something like that. Hope that helps
franklyn
Posts: 36
Joined: Thu Mar 15, 2007 7:03 pm

Post by franklyn »

modeling actual terrain would take up billions and billions of polygon . i dont think its a feasible solution unless you can break it up into sectors and do some sort of culling.
roxaz
Posts: 575
Joined: Tue Jan 23, 2007 8:35 pm
Location: LT

Post by roxaz »

i gues everybody knows lineage2. map is realy big and detail. so it is divided in sectors (squares). one square takes its heightmap. after heightmap is loaded game puts other static objects (like trees, stones, bridges and so on) on it. heightmaps used and map is extra-detail :idea:
Midnight
Posts: 1772
Joined: Fri Jul 02, 2004 2:37 pm
Location: Wonderland

Post by Midnight »

it's actually two textures one is the texture and the other is the detail texture and with a single texture height map this can look very convincing considering you can paint the texture anyway you like.

however the terrain in irrlicht is a work in progress and by that I mean it's nearly useless right now. if you want tiled terrain use irrspintz or hack the code.

if you want mesh terrain with basic culling turn it into an octtree scenenode and that will give you basic culling for some things.

if your doing this as a free noncommercial project you can use BSP style mapping with GTKRadiant.. it's made by the valve guys you know wolfenstien.

otherwise you have 1 last option and if yer not a good coder this is gonna be the hard line to cross UNLESS you have B3D which is kinda cheap but a crooked company. yer last option is to develope your own mesh culling system.. which could be fairly simple actually all you need is a way to section off your map to make anything clipped not be drawn behind several clipping zones.

learn BSP mapping and you'll understand how that works. far too complex to explain here.

good luck 8)
franklyn
Posts: 36
Joined: Thu Mar 15, 2007 7:03 pm

Post by franklyn »

Midnight wrote: if your doing this as a free noncommercial project you can use BSP style mapping with GTKRadiant.. it's made by the valve guys you know wolfenstien.
you mean ID and Quake right ? because valve made hl1 on a modified quake 2 engine and the original wolfenstein was made using raycasting :P.
Spintz
Posts: 1688
Joined: Thu Nov 04, 2004 3:25 pm

Post by Spintz »

Last edited by Spintz on Mon Dec 10, 2007 1:52 pm, edited 1 time in total.
raubritter
Posts: 12
Joined: Wed Mar 28, 2007 11:53 am

Post by raubritter »

so you cant model a terrain with Blender?
bigfish
Posts: 19
Joined: Fri Mar 23, 2007 6:18 pm

Post by bigfish »

You can definitely model your own terrain but I couldn't tell you what the right way to get it into Irrlicht is. Doing it yourself would just take a bit longer than scribbling down a quick heightmap in Photoshop. Besides being able to have lots of control, another advantage to doing it yourself is that you'd have more control over the polygon count. At least I assume you would.....the terrain renderer doesn't do any intelligent tessellation, does it? If it's smart enough to use big polygons in areas of low curvature, well forget what I said then.
Earl
Posts: 14
Joined: Tue Jan 23, 2007 10:33 pm
Location: San Angelo, Tx

Post by Earl »

I'm currently modeling terrain in Maya and exporting in .obj files. The finished product looks pretty good in Irrlicht.

I'm not seeing a problem with polys yet really. I'm building huge tiles with houses and roads and stuff as minutely detailed as a I can, and it's still about only 30k for a mesh that almost makes a horizon :D I actually have the draw distance set to 20k right now I think, and there's still map after that. That is, though, without trees, I've not decided about how to do foliage yet. I want wind...
So yeah, Irrlicht can handle it, it seems, and most computers probably can as well.
I'm running a 2.4 Celeron, 4 gigs DDR ram and a 256 meg Radeon 9600 running at about a gigahertz. I get about 40 frames running with OpenGL.
stodge
Posts: 216
Joined: Fri Dec 05, 2003 5:57 pm

Post by stodge »

Sounds good except 40fps doesn't leave you with a lot of CPU time for AI, or any other functionality. Oops, forgot to check your CPU. A demo of this would be interesting, especially to compare performance on different systems.
What does the debugger tell you? You did use the debugger, didn't you?
Earl
Posts: 14
Joined: Tue Jan 23, 2007 10:33 pm
Location: San Angelo, Tx

Post by Earl »

Yeah, I suppose you're right there. I'm not trying to make an FPS or anything though so it could even drift down to 20 without my crying.
I'm building a VR application which is (hopefully... still learning to program) going to implement a P5 glove and allow you to pick things up :D
My machine is a wee bit behind the times, besides. :D My little brother blew all his scholarship money on one of those newfangled dual core jobbies and it runs at 160 :D
I'm planning a setup, after I model all my terrain, to create a series of scene nodes that load depending on player location, and reduce the geometry on the terrain as the distance increases from the player manually per scene node in my models. So... you think you're walking on the same grass.... but you're NOT haha!
I think that'll take some of the load off :D
Vsk
Posts: 343
Joined: Thu Sep 27, 2007 4:43 pm

Post by Vsk »

Hey Earl, How do you load you huge terrain?
Did you loaded as a Iscene::node + mesh or did you use hight maps with the create terrain function of irrlicht?.
I have to use huge terrains too and I need to know it.
Any recomendation?
Thanks since now.
Vsk
Umbra
Posts: 19
Joined: Sun Aug 26, 2007 12:54 pm

Post by Umbra »

You could use use a mesh for the terrain thats what we use in our project.
divide your terrain up in many smaller meshes and then load them in a matrix (you can read about it in another post in the forum that i made)

And a premade terrain mesh dont have to have alot of polys thats up to you.

And no i cant give the code for the terrain matrix loading at this time maybe later when its tested.
Vsk
Posts: 343
Joined: Thu Sep 27, 2007 4:43 pm

Post by Vsk »

Thanks for your answer.
So if undertood, every part of the terrain are you loading it in this way?:

scene::IMesh* world_mesh = smgr->getMesh("media/TerrenoParte1.3DS")->getMesh(0);

And then adding it to an octree.

scene::ISceneNode* world_node= smgr->addOctTreeSceneNode(world_mesh);

Is this correct?, Did you use another way.
I insist in this because I have to manage 20kx 20k terrains too and may there is a better way to load.
Thank since now for your advices.
Vsk.
Post Reply