Hello, I have been doing some research on making assets for VR but I have a few questions. I am not 100% confident I have the concepts down so please correct me if I am wrong on something.
Normal maps fake depth and bumps in an object by modifying the lighting on a flat surface. by using this technique, You can get what appears to be a large amount of detail out of a low polygon object. Unfortunately, due to stereoscopic vision, normal maps appear flat and do not work very well (According to the VR best practices guide).
Tessellation adds actual geometry to a low poly object using a displacement map. Because it adds actual geometry, it does not appear flat in VR but costs much more.
What exactly would using tessellation over just a high polygon model get me? If the geometry is just going to be put back, wouldn’t it be cheaper to just have that geometry from the beginning? Obviously I can’t have a six million polygon model in VR, but there has got to be a way to fake geometry. According to Unreal (It was during a live stream that I can’t find the link to), Parallax occlusion mapping is very expensive and should be used sparingly. Is it more expensive than Tessellation?
How should I be building my assets to ensure they don’t chew through my framerate?
If the geometry is just going to be put back, wouldn’t it be cheaper to just have that geometry from the beginning?
Storing a model that dense is very expensive in terms of disk space, then VRAM. Tessellation can be adaptive - you subdivide the model more as it gets closer to the camera.
Parallax occlusion mapping is very expensive and should be used sparingly. Is it more expensive than Tessellation?
Hard to tell, but you can easily measure their performance.
Press [~], then “stat Unit” and press Enter. It shows you how long it takes to render a frame. Put the camera close enough to the model (could be a plane) so that it covers the whole screen. Write down the number, do the same for other materials (including a basic material), compare.
If I had to guess, I’d say that tessallation is cheaper. In VR, you’re very limited by amount of pixels you have to process (so heavy materials are bad, as they operate on each pixel). Polygon limit, though, is insane on modern GPUs - they’re cheap. The problem with tessellation is rather it’s limited use (organic stuff) than performance.
From my experience: the normal maps are only bad when view from close distance. For farther LODs they’re completely OK in VR Even slight detail, like paint bumps, look good. People panic too much about them.