terra detail + diffuse texture size

Discussion area about developing with Ogre-Next (2.1, 2.2 and beyond)


Nickak2003
Goblin
Posts: 272
Joined: Thu Jun 10, 2004 4:19 am
x 26

terra detail + diffuse texture size

Post by Nickak2003 »

I am learning a lot of stuff about terra lately and how to get the most out of it, thanks for this addon, ogre-team. I am wondering, how large, (realistically, on a modernish-gpu), can I make detail and diffuse textures? Right now, they are 1000x1000 px. How much larger could they realistically get in a game setting?

I figure, If the diffuse and detail textures are large enough, I could do super-cool stuff. Here is my current status:

User avatar
dark_sylinc
OGRE Team Member
OGRE Team Member
Posts: 5477
Joined: Sat Jul 21, 2007 4:55 pm
Location: Buenos Aires, Argentina
x 1359

Re: terra detail + diffuse texture size

Post by dark_sylinc »

Most desktop GPUs support up to 16384x16384 but bare in mind VRAM consumption.

RGBA8_UNORM 16384x16384 consumes 16384x16384x4 = 1GB of VRAM.
If you use BC1 compression, you can reduce it to 128MB

Add a 33% if the texture has mipmaps.

But for example PowerVR GE 8350 (Vulkan capable, present in many Android phones as of today) only supports up to 4096x4096 (the PVR seems to be an exception as everyone else seems to support 8192x8192 or higher, but with mobile specs that would run super slow anyway or get terminated for lack of RAM).

Ultimately it boils down to performance and how much VRAM you want to consume. Realistically speaking if you keep <= 4096x4096 it should run well & fast on a very broad number of desktop systems (i.e. cheap iGPU systems).

If you make it bigger, you may start seeing performance problems (depends on a lot of factors)

Nickak2003
Goblin
Posts: 272
Joined: Thu Jun 10, 2004 4:19 am
x 26

Re: terra detail + diffuse texture size

Post by Nickak2003 »

what is this BC1 compression? Right now, I create an Ogre::Image2, manipulate it, then create a texture and assign it to the terra data block.

User avatar
dark_sylinc
OGRE Team Member
OGRE Team Member
Posts: 5477
Joined: Sat Jul 21, 2007 4:55 pm
Location: Buenos Aires, Argentina
x 1359

Re: terra detail + diffuse texture size

Post by dark_sylinc »

BC1 compression.

To use it you need a compressor like texconv and export it to a format like DDS or KTX. There are many tools and plugins and their quality differ (i.e. BC1 is a lossy compression format).

You can in theory integrate code like stb_dxt and compress it at runtime but stb_dxt is optimized for speed rather than quality.