Peregrine
-
This is really very exciting and promising. We all share great interest in terrains in computer games and simulations. Falcon, after all those years, sure deserves some revitalizing in Terrain department.
Having said this, we should also realize, that to pull off such an innovative (and yet being around for some years) approach to the problem of rendering the terrain in fast and performance always hungry flightsim requires practical solution to many technical and logistic problems. The volume of the graphics required to be handled, being perhaps just one of them.
Still, as long as your interest in improving Falcon terrain is serious, you should be having all deserving attention here and willingness to help. Keep this discussion going and thanks. :munch:
Thanks. Yeah, resource management is at the core of any game engine. Terrain Systems like quad tree’s and have their own textures per leaf and can be loaded @ runtime using multi-threading techniques, and unloaded when the leaf is. Things get a little more complicated from there like with Geometry Clipmapping. Basically, you need a running buffer that you can flush and populate at all the different LOD’s of the pyramid. Remembering from math class that f(x) = x + (y * stride) we can keep a running buffer of a rectangle indexer into the larger texture data. This is EXACTLY how tools like Peregrine can index into much larger images of data (3Mpx x 3Mpx resolution 300dpi). The math is known, it’s the data that needs catching up. Having high res tiles of the world takes up an EXTREME about of space. 2-3 TB there abouts. It’s all about resource management here too. Opening a file handle but NOT reading, only seeking to the desired rect helps, but keeping data centralized while delivering it on-demand is better. Peregrine itself streams tiles from all sorts of providers, both free and commercial (more about that later), and provides caching of those tiles so that additional lookups aren’t downloading data. However, data cache is finite and eventually “stale” data needs to be flushed to make room for “fresh” data. This all happens on a separate thread, along with the garbage collector. Essentially it is a garbage collector.
Let’s take, for example, a 64 size terrain. Standard size here. 16x16 tiles in a segment, 64*64 segments. 1024x1024 tiles. 512px textures RGBA (alpha being nightlight!).
let ImageSizeInBytes = 5125124 (4 byte color RGBA) 1048576 bytes or 1MB!
let TerrainSize = (1024*1024) 1048576 images required! interesting, the same size as our packed RGBA data for each tile.
let AmountOfStorageRequired = (ImageSizeInBytes * TerrainSize)1.0995116e+12 bytes = 1099511600000 bytes or 1TB.
Here’s where we cheat. a 64x64 segment terrain of 16x16 tiles won’t work. However, a 16x16 chunked grid w/ 1 texture on each chunk (with a finer mesh) does. Almost all hardware nowadays can load a 4096x4096 texture.
(409640164) * (16*16) = 16.844324864 GB. Large yes, but doable, those super large textures could be reduced further without compromising the mesh @ the expense of blurring of features on the texture.
(102410244) * (16*16) = 1.073741824 GB. A gigabyte is nothing nowadays.
But I digress…
-
F-word amazing work!!!:D
-
Without going too far with discussion what doable in this totally new concept of the terrain (with acceptable quality and performance), IMHO, the following would make a significant difference how the terrain renders and looks:
a. vector graphics for coastlines, inland waters, outlines of the cities and road network.
b. local height map patches for the elements of the terrain, which require finer than current L2 terraform: river/road beds and valleys, ridges, cliffs, peaks.
c. better/smarter (performance wise) visualization of man made infrastructure: any 3d structures, highways, power grid, pipelines, rails.There might be need for more, but that is for starter.
Generally: photo real (or procedural) representation of the terrain without balanced 3D is unfortunately not sufficient anymore……
-
This post is deleted! -
For the terrain engine should be like similar like this:
https://sites.google.com/site/raxterbaxter/projects/current-projects/streaming-osm-terrain-unity-package
Realistic height map and street map.Or this:
Real world buildigs
Sweet deams ! I hope , This will be true ever.
-
Let us not dilute this thread with impractical suggestions for a combat flight simulator. Perhaps, I ought to start by pleading guilty of that very same above.
Peregrine initiative is great and as long as this going to be something solid and not vapor like: go for it! :headb: -
The work you’re doing is incredible. We’re almost talking about a completely new simulator. There are so many things to change …
Is it possible to overcome all the obstacles of this project so vast? It is it possible for one person to tackle this project? Without help?
All right. For the same question I asked myself more than ten years ago, referring to the Theatre Pillars of Hercules. At first it was just an idea, a fantasy … But our stubborn indefatigability began to shape the project; POH became something workable, something credible, something inspired by the seriousness and enthusiasm … and gradually we received direct support of amazing people that made it possible for us to get this far.
It saddens me to think that your success in this project Peregrine; transform our current development Theatres in obsolete things. However this initial sadness is overcome by the illusion that infuses your enthusiasm and technical ability.
Good luck, patience and perseverance.
-
Between this tool and the presence of actual trees in the theatre now, an good Vietnam theatre is becoming possible!
I can also imagine a quality European theatre too… How big can the maps go (within current constraints) -
Between this tool and the presence of actual trees in the theatre now, an good Vietnam theatre is becoming possible!
I can also imagine a quality European theatre too… How big can the maps go (within current constraints)There’s still a limit on the number of textures used, 4096 or something like that. But… Results are promising…
Iraq Theater exported from Peregrine.
-
WTF….so fast done? Just great! Hope you can keep the momentum. I can see an European Theater appearing on the horizon and a late Cold War campaign with your tool.
As I told you PM, anything you need regarding DB, TE/CAM files etc just ask. -
There’s still a limit on the number of textures used, 4096 or something like that. But… Results are promising…
Iraq Theater exported from Peregrine.
Results are promising indeed.
Can’t wait to see how Peregrine will autotile roads, highways, huge rivers, small rivers, … etc.
… which was not working well with older tools, so many hours of handtiling was required.The limitation is still 256 texturesets max., where each textureset can hold 16 textures.
so tileslimit is 256 x 16 = 4096.Cheers,
LS -
What about the terrain mesh resolution?
As long as Falcon cannot handle more than one objective / 1x1km tile (?) and using larger and not pre defined objective creating a better general landsacape that current is quite hard. The sader generated trees are great but the objective density is just the same as was in 1998. -
-
My words exactly, my words!
I am not sure if I understood your tool correctly - is it “just” map-map of, in this case, Iraq Theater (I mean flat, 2D picture of Iraq Theatre for GUI) od map-world (3D, textured world ready-to-fly)?
3D world ready to fly. It’s not textured further than just some base tiles but elevation and l2/o2 export works along with capturing all the data necessary from a Lat/Long bounds.
-
:woohoo:
Can you please make some screenshot from 3D?:-) From north-east, mountainous terrain?
-
Wow… just wow! That’s fast. I will follow this thread closely.
-
Wow Prerring looks like a wet dream… (sorry for using slang and no disrespect at all but if you know what I am saying )
-
How do we get this wonderful tool, and would you be able to write up a guide on its usage (say, here’s what you need to do to build a small theatre)
-
Just when I think I’m out of the business they suck me back in!
Seriously, that looks way cool. There are some uber-smart people on this forum…glad we have you all around to make the world better for the rest of us!
-
There’s still a bit of work to do. Mainly on the tiling side of the house. Being limited to 4096 textures is proving to be quite the challenge. Marching squares algorithm is the only thing I can think of to auto tile the map at this point. I’ll have to do some kind of “satellite tile tool” to make it easy to add sat photo’s to a 9x9 grid to add to the textures.bin Who knows, I may make it so that they are brushes and you can “paint” 9x9 templates and things like that. Frankly the straight tile export of satellite photography isn’t going to happen unless the BMS dev team can come up with an alternative. I’m still hammering away at it though. Keep everyone posted.