MegaTexture???!!

Miscellaneous Forums/General Discussion/MegaTexture???!!

..hmm..well...I would like to be able to do this within Blitz..but anyway, what is this and where it is used anyway?? There is no much details except its one huge texture, but where stored???

http://en.wikipedia.org/wiki/MegaTexture

If you follow the link to the interview with Carmack, he explains a bit more. It uses a fragment shader, so forget about doing it in B3D.

but where stored
On the HD

Must be fun to write the code that reads only specific portions of the texture for whichever sector required.........else games that use that are going to need nice 2gb vid cards. >.>

I'm tackling a similar, albeit simpler problem, with my dynamic region loader for my coordinate based MUD. Full world data will be something on the order of 100GB, (well, I'd like to be able to support such sizes at least - it may take a while to create that much of the world with content, though :P). Obviously having all of that in RAM at once will be a bit of an issue :P.

edit - er, this is solely in response to the post above mine. My problem set only resembles the megatexture in regards to the dynamic loading issue.

Basically nice idea and then you can paint craters and such fx where and when they appear directly onto the map instead of using decals... but it would be a nightmare to actually paint the MegaTexture I think... especially if you have several PS layers - just think how big the .PSD would be! And I don't think that anyone can paint (time/money etc) every grass pixel unique - and more you use the clone tool, the more the idea of having non-repeatable texture fades. Technology is cool for sure but content creation might still be a problem IMO.

seems like a waste when you consider the artist probably repeats a massive amount of image throughout the entire texutre.

yeh megatextures are a bit retarded really

Yeah cause Carmack hasn't really got a clue about next-gen graphics, has he?

Perhaps it would be better to argue with logic rather than blind faith in Carmack's abilites?

Personally I'm at a loss to see why this should be one big texture - other than as a way to ensure there were no repeated textures (no idea why that would be desirable).

Doesn't even Blitz load textures from Ram to VRAM when needed? Why do we need any more caching than that?

Carmack:
I do think unique texturing is the key for the coming generation


I have to disagree, I think the procedural techniques in Will Wrights 'Spore' are the way forward.

To me megatextures seem to be the opposite of procedural content generation. I have read quite a few articles by industry experts saying that we need to reduce game making costs desperately.

This unique texturing is not cost effective to companies.

Its impressive technology but its effects are small compared to how much money and hard work it will take to make these megatextures.

Landscapes rely more on objects like trees and grass placed on top of the terrain than the terrain texture itself anyway.

MegaTexture encompasses many combined solutions to many methods - it is specific to the engine and is deemed efficient based on the combined methods that it was required to fullfill.

It's not meant to be the norm as a way forward in gaming - unless you also want to combine multiple solutions and also have an engine/requirement that would benefit from this solution.

What?

It's not just about texturing.

See... It is line like THAT from puki that make me WANT to believe.

whats the largest texture that blitz or max can handle at the moment ? and carmack must have found a way around having to load the full texture at one time, possibly via index's reading so many bytes before you actually start dumping stuff to memory ?

I am interested in this as it may help me with something iv wanted to do for a while but been unable to .. ??

Puki got smart...

See.. IF Puki really is who he says he is. What he said here makes a lot of contextual sense...

I think they can be pretty useful with satelite images.

I wonder how much is the max size for a texture in blitz when you use AnimTextures. And how many gigabytes of ram supports vista? I think the max for XP is 64.

blind faith in Carmack's abilites


It's not blind faith, it's based on experiencing every engine he has ever written. He is always pushing the boudaries and has consistently produced the best engines in the world. Who would have thought that the DOOM3 engine could produce expansive outdoor scenes of such quality - but look at the new Quake Wars game - the environments are awesome. The engine is obviously well-designed enough that it can be easily modified to produce stunning results in an entirely different area.

How does the 'megatexture' concept interfere with procedural generation? As far as I can tell the two will compliment each other rather well.

during the interview Carmack hinted at the megatexture engine being better for artists to go in there and add touches to the landscape.
I suppose it could be used with procedural techniques but the mindset behind the engine seems to be using artists

How does the 'megatexture' concept interfere with procedural generation? As far as I can tell the two will complement each other rather well.
No actually. If you're using a procedural texture, there no reason to have a MegaTexture (because a procedurally generated texture is effectively an InfiniteTexture).

hmm... I think FlameDuck would be right, a good procedural could be infinite. But if Carmack is building megatextures for artists to add details to certain locations, then not every part of the megatexture could be generated. I think that, if the artists only had certain areas of the megatexture they modified, a system like this would be fairly easy to manage. Just use a procedural texture for most of the map, and replace portions with a small texture, where-ever the modifications are.

About June of last year I was working on an infinitely scrolling terrain engine. It was designed to mimick a planet, in that the terrain would loop after a while. My plan was to allow extremely huge terrains with this as well, but one would be able to see only a small portion of the entire world at a time. I also wanted to allow custom terrains, which goes along the same ideas as this Megatexture. It could certainly be done, if one were to split the textures up into manageable-sized files. But since Blitz3D loads an image all at once, trying to load images while scrolling over the world would make some very noticeable delays. I've been wanting to take a swing at the project in another language, like OpenGL or something. But I'm always busy with other more important (maybe) projects... and life too.

I always figured the end result of a megatexture would just be a lot of repeating texture with some details here and there, the same results you can get with tiling layered terrains.

Just use a procedural texture for most of the map, and replace portions with a small texture, where-ever the modifications are.
No. There is no point in having a megatexture that is 80% blank. It would be more cost effective to have smaller textures where needed.

Anyone ever had a look at TGEAs Atlas2?
Its hard to find enough cons to massive size terrrain which are cached etc :-)

Massive in this term is not as small as B3D or with such performance break ins as the one of 3DWS when used in some usefull sizes.
I'm talking of 32k x 32k ++ heightmaps and the like, which take hours to days when the terrain map and lightmap is generated side a side to them.
Such terrains run at the same speed as if you used a 256x256 heightmap.


For such terrain and caching technology, I think a mega texture make sense, as it would be a far larger work to make data files to hold all the stuff (especially foliage, light, shadow and detail map as well as potential material declarations) and working usefully with the streamed caching technics.