Initial Atlas Terrain Checkin (Pretty Pictures In Here!)
by Ben Garney · in Torque Game Engine Advanced · 05/27/2005 (6:36 pm) · 249 replies
Hey guys,
I just committed the first public version of the new TSE terrain, codenamed Atlas. This is a fully modern, scalable terrain engine. Check the docs (updated with a whole new chapter :) for details.
This is a private release to our beloved TSE licensees. Congrats, guys, you get first shot at this new toy. :) We'll be rolling out a full launch of Milestone 2 - this was the last piece - next week when we all get back from Memorial Day of Weekend. I'd appreciate it ever so much if you'd keep on the quiet side about this until then!
The toolchain is currently a bit on the basic side. A fuller toolchain will be rolled out as part of MS3.
Please take a moment to give it a try. Feedback is welcome - post it here, in a new thread on this forum, or mail it to me. There's a lot more work to be done, but this represents a basic usable point for people to work from. :)
You can get this release by doing a CVS update, of course.
And finally... A rundown on the features:
Lightweight CPU Usage
Atlas uses less than 10% of CPU time per frame to update and render. Compare this with approximately 30% for legacy terrain.
Massive Landscapes
Supports landscapes of arbitrary size, bounded only by disk space. The current system supports approximately 10 quinquagintillion (or ten thousand quintillion vigintillion for those Brits in the audience, or 10154 chunks on the base level).
Vast View Distances
Can quickly render unlimited view distances, bounded only by the working range of the video card's Z-Buffer. Atlas can achieve 100+ fps on a midrange Radeon, with a view distance of approximately 4,000 meters. The legacy terrain is not even capable of rendering this view distance by default!
Unique Textures
Atlas supports a single massive texture for your entire terrain! Every texel is unique. Support for extremely large textures (in excess of 32,768 by 32,768 pixels) on all hardware. Of course, all this is streamed, so you only pay memory cost for the texture detail near you. A future release will support on-the-fly texture blending like the legacy terrain.
Streaming Data
Data is streamed from the disc as needed, so you can have very large terrains without exceeding your memory. Both geometry and texture data are loaded on the fly.
Accurate Collision
What is rendered is what is collided against, so you get full interaction support for anything Atlas can render - overhangs, gaps, ditches, and so on. As the toolset for this engine matures, it will be possible to actually create such terrains. But the runtime as of now supports this sort of topology.
Compressed Textures
Atlas fully supports industry-standard DXT texture compression. It compresses offline for maximum quality, pregenerates mipmaps for minimal CPU usage at runtime, then streams it directly into GPU memory.
Ok, I'm going to a party. I'll be back online later tonight to check up on things, and will be around during the weekend as well. Thanks for being so patient with me! :)
#162
05/31/2005 (1:20 pm)
Yeah John it says so in the docs, but for now we need something to test it out.
#163
Similarly, John and I are working on a texturing tool, an offline generation tool with capabilities similar to Torque's terraformer. We're a good ways into the project, and as soon as it's ready we'll be putting it into CVS so others can use it. Probably shortly after MS2 is "done." This, along with one other small change, will alow people to generate really stupendously big terrain textures. The tool seems to be running something like ten times faster than Terragen, so it'll be a bit less unwieldy.
@Tom: Yes, Atlas is based on Ulrich's paper. Fantastic work on his part - gave me a great foundation to build off of. As for skirts/ribbons, what are you suggesting... providing texels for the skirts? There's another change I might be doing that would mesh neatly with that... (no pun intended :P)
@Phil: Hey, you got it working? Cool!
To everyone: Thank you so much for taking a look at this! There are a few issues I need to take care of, but I'm pretty confident now that the tech is ready for us to pimp a bit this week. :)
05/31/2005 (3:46 pm)
@Stefan: Hmm... Pretty mysterious why it wouldn't be. There are a LOT of scripting resources out there for Terragen, so I imagine SOMEONE out there knows... Who, I've no clue. :)Similarly, John and I are working on a texturing tool, an offline generation tool with capabilities similar to Torque's terraformer. We're a good ways into the project, and as soon as it's ready we'll be putting it into CVS so others can use it. Probably shortly after MS2 is "done." This, along with one other small change, will alow people to generate really stupendously big terrain textures. The tool seems to be running something like ten times faster than Terragen, so it'll be a bit less unwieldy.
@Tom: Yes, Atlas is based on Ulrich's paper. Fantastic work on his part - gave me a great foundation to build off of. As for skirts/ribbons, what are you suggesting... providing texels for the skirts? There's another change I might be doing that would mesh neatly with that... (no pun intended :P)
@Phil: Hey, you got it working? Cool!
To everyone: Thank you so much for taking a look at this! There are a few issues I need to take care of, but I'm pretty confident now that the tech is ready for us to pimp a bit this week. :)
#164
05/31/2005 (3:47 pm)
As i already mentioned, you can do some stuff with photoshop to make a quick and minor test of a texture.
#165
Really looking forward to the terrain texturing tool, then it's only the actual terraformer left so we can modify the terrains.
TSE is gonna be so lovely :)
05/31/2005 (4:30 pm)
Ben, Terragen is quite formidable when it comes to making textures.. as you can get so much detail from the procedural textures it generates. On the other hand, the price tag.. Edit: haha, and the long rendering times.Really looking forward to the terrain texturing tool, then it's only the actual terraformer left so we can modify the terrains.
TSE is gonna be so lovely :)
#166
Check it..

05/31/2005 (4:40 pm)
Hey Ben, yeah, there is a fair way to go to make it idiot proof, but it sure as hell makes a BIG difference to my game!!Check it..

#167
05/31/2005 (4:43 pm)
@Ben - I would make my skirt length some factor of the LOD level... so that lower detail LODs would get longer skirts. Then the UVs on the bottoms of the skirts to be set to index into the texture space of the adjoining tile. I found this looks better in most cases than just the single texel row repeat.
#168
05/31/2005 (4:55 pm)
@Phil - is that terrain from a game?
#169
05/31/2005 (4:56 pm)
Whoah, nice looking Spitfires.
#170
What you see there, is the terrain from battlefield 1942 level called "aberdeen" sunken under a bit of your water..
You guys really make my life easy! :)
Apart from physics for the planes, everything else is pretty much sorted now.. On course for showing at IGC! :)
05/31/2005 (4:59 pm)
Brian: thats just me testing out some idea's for generating terrain textures...What you see there, is the terrain from battlefield 1942 level called "aberdeen" sunken under a bit of your water..
You guys really make my life easy! :)
Apart from physics for the planes, everything else is pretty much sorted now.. On course for showing at IGC! :)
#171
05/31/2005 (5:21 pm)
I checked in a fix for the VC6 builds re: the TORQUE_MULTITHREAD preprocess define.
#172
EDIT: The terrain is a fine piece of work Ben. Pat yourself on the back twice for me. please.
05/31/2005 (6:38 pm)
Damn Phil, that looks awesome!!! Those spitfires needed TSE. :-)EDIT: The terrain is a fine piece of work Ben. Pat yourself on the back twice for me. please.
#173
As of my last test I just finished.. We can currently process, light, shadow, and output an 8192x8192 texture with 6 composite layers based on a 4096x0496 heightfield in right around 30 minutes on my machine which is I think around a 1.8ghz processor and 1gb ram. It'd take about 12 hours for the same in Terragen.
05/31/2005 (7:16 pm)
@StefanQuote:Ben, Terragen is quite formidable when it comes to making textures.. as you can get so much detail from the procedural textures it generates. On the other hand, the price tag.. Edit: haha, and the long rendering times.
As of my last test I just finished.. We can currently process, light, shadow, and output an 8192x8192 texture with 6 composite layers based on a 4096x0496 heightfield in right around 30 minutes on my machine which is I think around a 1.8ghz processor and 1gb ram. It'd take about 12 hours for the same in Terragen.
#174
@Gonzo: Done, and done! :P
As for a terraformer, I'm looking at libnoise at the moment. Or maybe I'll just port over the old stuff. We'll see. :)
05/31/2005 (8:44 pm)
Damn, Phil, those planes look AWESOME. Feel like I'm looking at a prerended cut scene from five years ago, not a game... It's a little too perfect to be a modern cut scene. ;)@Gonzo: Done, and done! :P
As for a terraformer, I'm looking at libnoise at the moment. Or maybe I'll just port over the old stuff. We'll see. :)
#175
05/31/2005 (8:53 pm)
@Phil - Now you gotta implement the Old Film Shader. That would be a cool little unlockable easter egg thing or use it as an effect under your menus or during parts of cut scenes. =)
#176
Sorry, i should have posted this under the water topic.
As it turns out water was rendering fine it just wasn't rendering where i thought it was. the waterblock was out in the middle of nowhere. I am guessing the old drivers where rendering the water outside of it's bounds cause i saw it there yesterday. I feel so foolish.
06/01/2005 (12:22 am)
@Ben Garney Sorry, i should have posted this under the water topic.
As it turns out water was rendering fine it just wasn't rendering where i thought it was. the waterblock was out in the middle of nowhere. I am guessing the old drivers where rendering the water outside of it's bounds cause i saw it there yesterday. I feel so foolish.
#177
06/01/2005 (1:42 am)
@ Phil, great example, how did you convert bf42 terrain to tse atlas ???
#178
06/01/2005 (3:28 am)
Well, that multithread thing for VC6 fixed me up, no more crashes. Wish someone mentioned that one earlier. ;) Now to get to work. I wanna try to make a beach.
#179
Phil, that's a gorgeous screenshot, Matt and I decided we want to play now. Everytime you post a air ace screeny we go play bf1942. :-)
06/01/2005 (4:52 am)
Holy shit that should be an IOTD easilyPhil, that's a gorgeous screenshot, Matt and I decided we want to play now. Everytime you post a air ace screeny we go play bf1942. :-)
#180
He's using RFA Tools to open up the archives and convert the RAW file that BF42 uses into a heightmap, or maybe he's converting it directly from the RAW into TSE. I can't remember if it was 16bit already.
Edit: Jacob D. it was mentioned earlier in the thread.
06/01/2005 (5:13 am)
Berndt,He's using RFA Tools to open up the archives and convert the RAW file that BF42 uses into a heightmap, or maybe he's converting it directly from the RAW into TSE. I can't remember if it was 16bit already.
Edit: Jacob D. it was mentioned earlier in the thread.
Torque Owner Martin Schultz