Skip to main content
Up and Coming
August 14, 2014
Question

2k, 4k, 8k?? textures for OVR

I must say I am thrilled to be up and running. It was not easy (being on a mac might have been the cause) nonetheless I am running and I was able to do a quick OVR build. I do have a question and I was hoping it would be in the Best Practice Guide, but it is not.

Is it best to go with 4k vs 2k textures for VR content? WOuld 8k break it? The things that still blows my mind is when you peak over and can the see the underside of an object. That said - playes or explorers will get up close to surfaces. Low res ruins it for me personally. Would like to know if any has used anything over 4K textures.

Thanks

    11 replies

    Inspiring
    August 14, 2014
    A couple of my demos use 8K textures in certain spots. It does help a lot, but even 8K textures feel low-res as soon as you get close enough. I personally use repeating noise detail textures to make up for it.
    Titans of Space PLUS for Quest is now available on DrashVR.com
    Inspiring
    August 14, 2014
    "pixelboi" wrote:
    I must say I am thrilled to be up and running. It was not easy (being on a mac might have been the cause) nonetheless I am running and I was able to do a quick OVR build. I do have a question and I was hoping it would be in the Best Practice Guide, but it is not.

    Is it best to go with 4k vs 2k textures for VR content? WOuld 8k break it? The things that still blows my mind is when you peak over and can the see the underside of an object. That said - playes or explorers will get up close to surfaces. Low res ruins it for me personally. Would like to know if any has used anything over 4K textures.

    Thanks


    You'll want to research 'detail' maps.
    "In the future we will be designing dreams, worlds & experiences rather than games."
    Up and Coming
    August 15, 2014
    "drash" wrote:
    A couple of my demos use 8K textures in certain spots. It does help a lot, but even 8K textures feel low-res as soon as you get close enough. I personally use repeating noise detail textures to make up for it.


    I thought Unity only does up to 4k?
    or are you using a virtualized texture plugin?
    Ambient Flight Eagle Flight Experience Dinosaur Voyage Running from Dinosaurs
    Inspiring
    August 15, 2014
    "basedeltazero" wrote:
    "drash" wrote:
    A couple of my demos use 8K textures in certain spots. It does help a lot, but even 8K textures feel low-res as soon as you get close enough. I personally use repeating noise detail textures to make up for it.


    I thought Unity only does up to 4k?
    or are you using a virtualized texture plugin?


    On Windows, you can actually force it to 8K via import script. It'll show up as a blank selection for "max texture size" but it works. Just have to remember to bring it back down to 4K for Mac exports etc. I think Unity's working on a way to raise this limit for all platforms soon so that'll be nice.
    Titans of Space PLUS for Quest is now available on DrashVR.com
    kojack
    Honored Contributor
    August 16, 2014
    8k textures in 32 bit colour with mipmaps will take roughly 333MB of graphics memory each.
    Using DXT1 you can get that down to 42MB, but your colour quality is now 16bit (which could look worse than having low res textures).

    I've included a debug texture I made that can show you what resolution you are really using for a texture.
    It's a dds texture with manual mipmaps.
    Visible colour and it's resolution:
    - red = 8192x8192
    - green = 4096x4096
    - blue = 2048x2048
    - yellow = 1024x1024
    - cyan = 512x512
    - magenta = 256x256
    - white = 128x128
    - black = 64x64
    - orange = 32x32
    - pink = 16x16
    (It's a 7KB 7zip file that expands to 42MB)

    Add that texture to a model in any game engine (that supports 8192x8192. Ogre definitely does, no idea about others) and the colours you see indicate which mipmap level is used to render that pixel. If in standard camera placements you never see red (or only a little bit), that means 8192x8192 is a waste.
    Author: Oculus Monitor , Auto Oculus Touch , Forum Dark Mode , Phantom Touch Remover , X-Plane Fixer Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2, Quest 3
    Inspiring
    August 16, 2014
    Interesting stuff, kojack. I tried pulling this texture into Unity but it says it expected 14 mipmaps, only found 10. The resulting texture looks like yellow vertical stripes at every mipmap level (which means it's probably not importing correctly).

    I'll have to find another way to try this out. You can get pretty close to things in VR, but I'm really curious if my 8K textures are useless or not. :)
    Titans of Space PLUS for Quest is now available on DrashVR.com
    kojack
    Honored Contributor
    August 16, 2014
    I got bored of picking colours around mipmap 10 (16x16), so I didn't bother going lower. :)
    I guess unity doesn't like that.
    I'll add a couple more.

    Here's a new debug texture. It's added:
    - olive = 8x8
    - purple - 4x4
    - dark grey = 2x2
    - pale sky blue = 1x1

    Hopefully that works better. :)

    Here's an example (model from MakeHuman):


    The tshirt texture is normally 1024x1024. Changing it to the debug texture shows that at this distance most of it is cyan, which is 512x512, so if the model is never closer than this to the camera, 512x512 would be enough.
    (Screen res also affects this, if I ran the demo in higher res then the shirt would need higher res textures for the same distance)

    Or course in VR it's harder to tell the minimum distance to the camera (lean in close enough and even 8192x8192 is insufficient).
    A combination of detail textures (as mentioned by others above) and procedural generation can make up for texture resolution.
    Author: Oculus Monitor , Auto Oculus Touch , Forum Dark Mode , Phantom Touch Remover , X-Plane Fixer Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2, Quest 3
    Inspiring
    August 16, 2014
    Using your newest debug texture, I found one 8K texture that wasn't worth it at all. I figured players would be able to appreciate the finer details of this 8K texture when zooming in but that doesn't seem to be the case after all. Just shaved 16MB off my build size.

    Thanks kojack!
    Titans of Space PLUS for Quest is now available on DrashVR.com
    kojack
    Honored Contributor
    August 16, 2014
    No prob. :)

    For people using Ogre, you can add a material scheme listener that intercepts materials and replaces them on the fly. This means that by changing the viewport's scheme to something like "MipDebug" you can instantly replace every texture in your game with the debug one, then restore them again. (Same thing can be done to replace all materials with uv coord or normal debug shaders, etc).
    Author: Oculus Monitor , Auto Oculus Touch , Forum Dark Mode , Phantom Touch Remover , X-Plane Fixer Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2, Quest 3
    pixelboiAuthor
    Up and Coming
    August 16, 2014
    Looks like 2k or 4k will suffice. I was only curious. I was playing around with MayaLT and only did a 2k texture. From straight on it looked convincing and at an angle well normal maps will handle the rest. Thanks for the input and suggestions all.