Jump to content

How can they solve the massive texture problems?


Recommended Posts

In the latest update Josh mentioned issues with having high resolution maps in a game this size.

Something like BG at 1080p would take multiple blu-ray's of capacity which is crazy.

 

Now considering how PE is going to be 2560x1440 instead of 1920 x 1080 with hand crafted and pre-rendered maps resulting in pretty much unique textures most of the time it'll be even harder to manage.

 

About the only thing they can do is find the best lossless texture compression tools available and see how much space they can save. Maybe something like openEXR can help (www.openEXR.com) I've heard they are an excellent lossless compression used by Industrial Light and Magic and is also supported by nvidia Cg.

 

I think since the game wouldn't be too graphically demanding I think they are better off using CPU/GPU power doing compression/decompression streaming of high quality textures to both reduce the data size while staying high resolution.

Edited by Rokku
Link to comment
Share on other sites

To answer: A lot of games have this, and much, MUCH larger problems.

 

Fortunately texture compression has gotten really good in answer. RAGE (an id game) was hundreds of gigs before compression. They'll just need to select the best method/application for texture compression they can get. Some combination of high texture compression, low, if any "loss" (as in the stuff doesn't change from the compression) and fast to read and decompress from the hard drive (doesn't take a lot of CPU effort).

Link to comment
Share on other sites

I did some quick calculations, based on wild guesses about the size and number of areas, overhead required for animated objects and so on. What I came up with was an estimate of 6-10GB for the backgrounds.

 

For animated objects (characters, monsters and such) you need the usual textures and such, but they would be smaller. Still, overall we might be looking at a total game size of 15GB or so.

 

That's still a reasonable size to fit on a set of DVDs.

Link to comment
Share on other sites

As long as PE doesn't have textures popping up/loading slow all the time.

 

There was no texture popping in RAGE on the consoles, even though they are not as fast as modern computers. Why? Because you don't have the graphics driver + Windows overhead. Plus, the Unreal 3 engine has a similar texture problem on some configurations and it doesn't even use megatextures.

 

Since the backgrounds are 2D and the maps are loaded completely (I assume) before being displayed, there shouldn't be a problem here.

Link to comment
Share on other sites

I think the difference here is that if they are going for super high res unique backgrounds for every area of the game then the file size can't be compared to most other games.

 

If you look at your typical FPS, even the latest ones like crysis, they are all made up of prebuilt assets and textures that are duplicated all over the place.

This drastically reduces the size of the game as every tree is the same tree, every brick wall is the same texture, etc.

 

Now if you think about PE then you realise that every screen will be a giant pre-rendered scene that is not a duplicate of another texture that can be reused and combine it with 2560x1440 resolution then the file size will be way more then most games out there.

 

Now RAGE is the only other game I know that also uses alot unique textures of the most part but you still see duplicate doors, building walls, ground textures etc. The "unique" part of RAGE is that they can stamp additional details over the base texture to make it more unique, not the whole texture.

 

But still RAGE is the closest so thats why I linked the texture tech they use earlier as it might be worth considering by Obsidian if they haven't already.

Link to comment
Share on other sites

I actually have a solution for this which I'm currently writing up and hope to detail in this thread at some point over the next few days.

 

Needless to say, it's not that hard of a problem, it's also worth mentioning that Unreal Engine 3, and ID Tech are dealing with entirely separate issues. DXT compression is also entirely unsuitable for a game like this, and one risks in a cursory manner either massive texture footprints for levels, or potential pop-up on low performance machines.

 

Texture streaming for a 3D game is an entirely different problem, as one has to bare in mind that textures exist at different mip-levels.

 

Also Frisk, your numbers are well out.

 

I'll detail more in the solution later in regards to footprint, and area sizes etc...

I came up with Crate 3.0 technology. 

Crate 4.0 - we shall just have to wait and see.

Down and out on the Solomani Rim
Now the Spinward Marches don't look so GRIM!


 

Link to comment
Share on other sites

I actually have a solution for this which I'm currently writing up and hope to detail in this thread at some point over the next few days.

 

Needless to say, it's not that hard of a problem, it's also worth mentioning that Unreal Engine 3, and ID Tech are dealing with entirely separate issues. DXT compression is also entirely unsuitable for a game like this, and one risks in a cursory manner either massive texture footprints for levels, or potential pop-up on low performance machines.

 

Texture streaming for a 3D game is an entirely different problem, as one has to bare in mind that textures exist at different mip-levels.

 

Also Frisk, your numbers are well out.

 

I'll detail more in the solution later in regards to footprint, and area sizes etc...

 

Cool I look forward to seeing what you come up with :)

Link to comment
Share on other sites

Also Frisk, your numbers are well out.

 

Well, I am probably underestimating things a bit - I revised my calculations somewhat, and here is what I came up with.

 

Let's start with a typical area - something like this (which was posted in a different thread by D3xter:

 

icewind-dale-wyrms-tooth.jpg

 

This is a 3840x2880 full area from IWD. Now, PE will have higher resolution areas .... so lets say that a comparable area in PE would be 10860x8140, which means around 8 times more pixels. Fair enough? Now, this would mean 88,400,400 pixels. with 24-bit colours+alpha channel , the uncompressed size would be 336MB. It should be possible to compress that fairly easily down to 100MB or so ... and with lossy compression down to 45MB or so.

 

Let's stick with 100MB for the (static) background per area for now. (Actually, to handle occlusions and such, it might actually be implemented in layers, but I'm ignoring that for now.) The background is not entirely static - they have at least promised moving water and such, so, let's add 50% for that.

 

So, the background for an average area might be 150MB.

 

Now, if you want to do fancy things with dynamic lighting and shadows, my numbers will be way off, but again - let's ignore that for now.

 

So, how many areas will the game have? Here I can only make wild guesses, but let's assume the "big cities" will each consist of 9 areas like my example, the megadungeon will have 15 areas, and there will be 40 other areas, for a total of 73 maps - and at 150 MB per map, that turns out as 11GB.

 

Unreasonable? I don't think so.

Link to comment
Share on other sites

Example image aside. Everything is speculation. Your math isn't wrong, it's just that you're only factoring in, by your own admission, static images.

 

The largest size one could expect on DX 11 hardware, at least in terms of a single image is 16,384 x 16,384, then you have 4 bytes for RGBA. That's the largest static image you could expect to see.

 

Yeah... work it out, It's pretty damn high. It's also an issue in regards to memory footprint.

 

There are in fact two issues, compression ratio - which is unknown, but you certainly don't use lossy compression in a game like this.

 

We'll obviously see smaller images also, but I'm looking at the worst case.

 

It's also likely that the compression ratio isn't uniform, you'll not get 50% lossless compression across all images, it'll specifically depend on the image itself, the demonstration image would actually compress really well, but that's because of common colours. One of the advantages to DXT compression which is lossy is that it's always predictable in terms of size.

 

What I can say is that between memory footprint at runtime for a level, and disk space, in regards to all assets, Josh is correct to say they'd likely need multiple blu-rays.

 

I'm actually concerned about end user Specs, along with general storage needs. I don't think the main issue is directly with storage of compressed data, but more in regards to decompression, and storage at runtime.

I came up with Crate 3.0 technology. 

Crate 4.0 - we shall just have to wait and see.

Down and out on the Solomani Rim
Now the Spinward Marches don't look so GRIM!


 

Link to comment
Share on other sites

Since this is a background bitmap, not a texture, there is no need to keep the whole area in the graphic card memory, only the visible part needs to be copied to the screen, the rest can be stored in system memory. An issue are loading times, though, especially when the area-bitmaps are compressed. So we'll have either a huge installation, or loading times that are considerably longer than BG (on the same PC).

 

As for transportation: It would be realistic to expect 5 DVDs or 1 Blue Ray, similar to BG (5 CDs or one DVDs) a 25 GB download also is quite a bit, many internet providers cap your bandwith after a certain number of GB per month, and it will also be a heavy load on the servers.

"You are going to have to learn to think before you act, but never to regret your decisions, right or wrong. Otherwise, you will slowly begin to not make decisions at all."

Link to comment
Share on other sites

I was fine with sprite reuse in Fallout, you wouldn't go the same extremes of reuse because technology has advanced, but having a tile system where you can reuse a heck of a lot of content and layer it was what I was assuming they'd be doing anyway. Animating water in a style that matches the prerendered backgrounds on the other hand is going to be a problem.

Link to comment
Share on other sites

now I'm a bit concerned on how big this game on disk will be? and how big a download it will be, I don't have unlimited bandwidth, but it has grown a bit, still, if the game is a big size, I probably might be kicking myself by not getting a physical reward instead, still, I hope the download size won't be too big, I can download up to 50gig a month, I really hope it doesn't take all that bandwidth to download this game once its out

Link to comment
Share on other sites

Yep, since we're talking huge bitmaps (that could also be streamed dynamically and can be compressed lossless to a certain point) and not textures with some animation and changing parts overhead I'm not sure I quite get the problem as detailed. On their side before pre-rendering they might have huge chunks of data, but it shouldn't be that much of a problem client-side. The only elements that have been confirmed as "3D" and requiring textures to fit the overall look of the world would be the player characters, NPCs and monsters and basically everything that moves around a lot and requires different layers of animation.

 

As for the size, Project: Eternity mainly being a PC game and (presumably) largely Digital. Speaking from personal experience I don't see much of a problem. A lot of people got used to platforms like Steam and games like Max Payne 3 (which had a lot of very different and high quality assets, but was a rather mediocre game) already have a download size of 35GB: http://www.1up.com/d...try?bId=9107322

 

Another example is RAGE, which is already 25GB by itself, but has extremely blurry low-resolution megatexture data because of compression. Since we aren't talking about consoles here I'd personally be fine with a ~100-150GB download of High Res Textures (Carmack was talking about) as long as it is optional (heck I'd likely even pay extra for it), and apparently I wouldn't be alone: http://forums.steamp...d.php?t=2158540

Steam/Valve certainly has the proper infrastructure for something like that: http://store.steampowered.com/stats/content/

 

Further, realistically this game is still 2 years out, by that time Digital Distribution will likely be even more ingrained, with the "Next Generation Consoles" hopefully already out with it as a basic feature and bandwidth/size will be even less of a problem it is today, so I'm all for it even if they need a larger-than-usual install size, Baldur's Gate was also kind of a pioneer at its time:

 

bg-saga1.jpg

 

They certainly don't need to compromise quality for a size-tradeoff as a lot of console games do, and if they do at least offer options for the people that want them :p

Edited by D3xter
Link to comment
Share on other sites

As for transportation: It would be realistic to expect 5 DVDs or 1 Blue Ray, similar to BG (5 CDs or one DVDs) a 25 GB download also is quite a bit, many internet providers cap your bandwith after a certain number of GB per month, and it will also be a heavy load on the servers.

 

I live in Australia where the internet is bloody expensive and even we have pretty good download plans available now. 5 years ago I was on 20GB a month, now I'm on 300 - same price

Link to comment
Share on other sites

Since this is a background bitmap, not a texture, there is no need to keep the whole area in the graphic card memory, only the visible part needs to be copied to the screen, the rest can be stored in system memory. An issue are loading times, though, especially when the area-bitmaps are compressed. So we'll have either a huge installation, or loading times that are considerably longer than BG (on the same PC).

 

As for transportation: It would be realistic to expect 5 DVDs or 1 Blue Ray, similar to BG (5 CDs or one DVDs) a 25 GB download also is quite a bit, many internet providers cap your bandwith after a certain number of GB per month, and it will also be a heavy load on the servers.

 

Technically you should be able to stream bitmap data provided that it's organised correctly. This brings down the image footprint massively.

I came up with Crate 3.0 technology. 

Crate 4.0 - we shall just have to wait and see.

Down and out on the Solomani Rim
Now the Spinward Marches don't look so GRIM!


 

Link to comment
Share on other sites

Personally, given the workload they have in front of them I would be okay with seamless tiled textures that ended up being the same resolution. Before you trip, remember that most 3D environments are made from tile sets now. Diablo 2 had a seamless 2D tile set and I thought it looked great at the time. And, just as was done in D2... They could make static multi-tile overlays for the areas where they just can't get the exact look with tiles. Let's face it, 6 different 640x480 squares of... you know... grass would be all the grass they'd need to draw. If they allowed tiles to overlap with transparency, the way tiled 3D environments can be done, then you're looking at limitless detail achieved with fewer actual drawings.

 

Edit: Yea, I can really see this working with things like rocks, shrubs, walls, etc. that essentially can be placed anywhere on an existing tile and occluding only what's beneath the actual art.

Edited by Luridis
  • Like 1

Fere libenter homines id quod volunt credunt. - Julius Caesar

 

:facepalm: #define TRUE (!FALSE)

I ran across an article where the above statement was found in a release tarball. LOL! Who does something like this? Predictably, this oddity was found when the article's author tried to build said tarball and the compiler promptly went into cardiac arrest. If you're not a developer, imagine telling someone the literal meaning of up is "not down". Such nonsense makes computers, and developers... angry.

Link to comment
Share on other sites

Personally, given the workload they have in front of them I would be okay with seamless tiled textures that ended up being the same resolution. Before you trip, remember that most 3D environments are made from tile sets now. Diablo 2 had a seamless 2D tile set and I thought it looked great at the time. And, just as was done in D2... They could make static multi-tile overlays for the areas where they just can't get the exact look with tiles. Let's face it, 6 different 640x480 squares of... you know... grass would be all the grass they'd need to draw. If they allowed tiles to overlap with transparency, the way tiled 3D environments can be done, then you're looking at limitless detail achieved with fewer actual drawings.

 

That wouldn't hit the visual target. They'd be selling themselves short entirely.

I came up with Crate 3.0 technology. 

Crate 4.0 - we shall just have to wait and see.

Down and out on the Solomani Rim
Now the Spinward Marches don't look so GRIM!


 

Link to comment
Share on other sites

That wouldn't hit the visual target. They'd be selling themselves short entirely.

 

I think that really depends on the variety of tiles they decided to use. Not enough and you end up seeing the duplication everywhere. Too much and you might as well draw the whole picture as one unit. There must be a happy median in there somewhere.

Fere libenter homines id quod volunt credunt. - Julius Caesar

 

:facepalm: #define TRUE (!FALSE)

I ran across an article where the above statement was found in a release tarball. LOL! Who does something like this? Predictably, this oddity was found when the article's author tried to build said tarball and the compiler promptly went into cardiac arrest. If you're not a developer, imagine telling someone the literal meaning of up is "not down". Such nonsense makes computers, and developers... angry.

Link to comment
Share on other sites

I see some people mentioned about ensuring the game would stand the test of time, which is a great point. Games like Baldur's Gate shows us that if its great, people will still want to play it many years later. Only problem is that it didn't scale well with certain technology such as the text are hard to read with today's display standard.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...