Virtual texturing?


(10chankc2) #1

Wat does it mean?


(Nail) #2

http://ftp.freenet.de/pub/4players/hosted/et/Nail/05-JP_id_Tech_5_Challenges.pdf


(Smooth) #3

It means that we can do away with texture tiling and have unique, high-quality textures on every surface.


(acidrain) #4

Why does that one railing with the low res texture keep showing up then? :wink:

Exhibit A
Exhibit B


(Floris) #5

[QUOTE=acidrain;195697]Why does that one railing with the low res texture keep showing up then? :wink:

Exhibit A
Exhibit B[/QUOTE]

Just because they can doesn’t mean they have :stuck_out_tongue:


(Rahdo) #6

It means we can do. It’s still up to the artists to do do, and they’re only human. :slight_smile: But right now they’re more concerned about the big picture stuff to avoid repetition (walls, floors, etc.). Good eye though!


(kamikazee) #7

[QUOTE=acidrain;195697]Why does that one railing with the low res texture keep showing up then? :wink:

Exhibit A
Exhibit B[/QUOTE]Somebody get this guy in your bug report team - spotting a flawed texture which was hiding in plain sight…

Anyhow, it can be fixed.


(10chankc2) #8

So how is it different from other games?


(Bezzy) #9

Most games have to load all their textures at once for whatever level and assets they’re displaying (unless it’s a streaming engine). This means that even if something’s not visible, it’s still in memory.

What megatexturing does is create a “fake parse” of the scene at hand, checking which textures are needed, and then loads in the textures to memory on the fly if they’re not in there already.

As a result, you’re only using memory for what you can see, and so you can use up far more memory for extra texture detail in that scene, without worrying about what’s off in another room.


(10chankc2) #10

[QUOTE=Bezzy;195735]Most games have to load all their textures at once for whatever level and assets they’re displaying (unless it’s a streaming engine). This means that even if something’s not visible, it’s still in memory.

What megatexturing does is create a “fake parse” of the scene at hand, checking which textures are needed, and then loads in the textures to memory on the fly if they’re not in there already.

As a result, you’re only using memory for what you can see, and so you can use up far more memory for extra texture detail in that scene, without worrying about what’s off in another room.[/QUOTE]

So how does this differ from streaming textures? and does this mean u can hav even higher resolution textures than crysis but better performance?


(Bezzy) #11

ARNoooUUUUTT!


(RR2DO2) #12

There are different types of streaming texture engines, most modern ones do some calculation based on which model surfaces are visible in a current view or which world areas will potentially be visible and load the textures or texture mip maps required for this.

Virtual texturing approaches the problem more in a similar way to virtual memory. It basically creates one big texture memory space which is not always resident. Based on feedback from the rendered scene a number of texture pages are requested - these are either a cache hit or a cache miss. A cache miss requires a load from disk, a cache hit just means you can render the texels right there and then at the right resolution.

Basically it is a smarter and more precise way to only load the texture data in memory that you need at this point; it is less conservative than other algorithms. If you want to know more, there was a presentation at GDC SF last year that covered some of the basics. Have a look here: http://silverspaceship.com/src/svt/ .