Why do VR graphics look so pixelated compared to PC? It's almost 2022, and VR seems to be going backwards when it comes to graphics.
The short answer: VR requires greater Texel Density in order to maintain the same visual quality as PC or Console graphics.
In other words, because VR allows players to get closer to 3D objects, the texture quality of those objects needs to be greater. Basically, the closer you get to an object, the more image resolution you need. This is called Texel Density.
What is Texel Density?
Texel Density is the pixel resolution of a texture as displayed on a 3D object.
Basically, a texture (digital image) is wrapped onto a 3D object, much like wrapping paper covers a birthday present. However, unlike wrapping paper, a texture can stretch. So if you have a bigger box to wrap, you can just stretch the texture to fit.
Here's an example of a basic cube being wrapped with a checkered texture:
So what's the problem with Texel Density in VR?
In VR, as apposed to PC and Console gaming, players can get really close to objects.
The closer you get to a texture the more it scales, but the more it scales the worse it looks. It's a bit like stretching that wrapping paper over a really big present, eventually, it breaks. I know, the analogy doesn't work, textures don't break, but they do look pixelated and grainy when they're scaled up too much.
Example: On a PC or Console, the cube only takes up about 15% of the players screen. The checkered texture appears as it should.
In VR, however, a player can get really close to the cube and it fills more of their vision. Because of the player's proximity to the cube, the texture starts to look grainy and pixelated.
This is one of the reasons why VR games don't look as good as PC or Console games. Even with the same Texel Density, textures will appear more pixelated and grainy due to a player's proximity to the objects in their environment.
What's the solution?
(We're about to get technical)
There are a number of ways to get more Texel Density in VR without using really large image files as textures, which don't play well with mobile devices, such as the Meta Quest 2.
The two main ways of getting more Texel Density into 3D environments are Tiling Textures and Stacking UVs. Each has it's advantages and drawbacks.
Artists can tile textures to repeat a pattern on a 3D object. The more a texture is tiled, the higher the Texel Density. The trouble with tiling is that patterns look unnatural the more they are tiled, they can also become uncomfortable to look at. In VR this can lead to increased motion sickness. Tiling also causes a GPU (Graphics Processing Unit) to work harder, so tiling shouldn't be used on everything in a scene.
Example: The floor is tiled (literally) and has great Texel Density, but becomes uncomfortable to look at further away.
Another technique to get more Texel Density into a 3D environment involves stacking UVs.
What are UVs? The U and V coordinates of an object correspond to a 2D plane upon which a texture can be applied. Think of it like unfolding a cardboard box, laying it flat, and drawing on it. In 3D, however, a box can be both folded and unfolded at the same time. In other words, in 3D a box can be represented in three dimensions in the X,Y, and Z coordinates, while at the same time be laid flat in the U and V coordinates.
By stacking UVs, an artist can reuse the same part of a Texture over and over. The advantage of stacking UVs is that each side of a box can use the same texture. The drawback is that every box is going to look similar, and each side of each box will be identical.
I've developed some techniques that can maximize Texel Density and maintain asset uniqueness. I've got a number of tips and tricks that have helped me create the art for HAX. I'll be writing about those tips and tricks soon.
While VR continues to grow and as hardware starts to get better, developers will continue to struggle against the expectations of gamers who are used to PC and Console graphics. In the meantime, it is important for VR developers to strive for the highest Texel Density possible in order to combat the perception of having "poor graphics."
As a VR game developer and artist, I aim to raise the bar of VR graphics and how VR is perceived. The graphics don't have to be bad, Texel Density is a solvable issue in VR.
More to come...