So, when will we start seeing PTEX type texturing methods in realtime applications such as games? It is open source so I imagine its adoption would be quick, but is there any technical explanation why after 3+ years it is still not widespread? What are the pros and cons for PTEX?
Replies
In the case of scientific procedural applications, such as human anatomy 3D encyclopedia, I don't see why not.
Btw, in sure someone will say there is no support for 2d photo editing softwares, but what if you used a hybrid of PTEX and UVs for the parts that need some photoshopping?
some guy is gonna present Per-Face Texture Mapping for Real-Time Rendering during the next siggraph, so who knows what will happen. But the industry isn't really asking for a replacement for uvs. they're overall the most practical solution for texturing we have.
You also need to remember that many 3D painting tools are still minimalistic. The best thing we have currently is Mudbox, but even that lacks the more 'simple but effective' tools that Pior pointed out.
The only thing I can imagine is using PTex alongside Photoshop with a sorts of projections mapping method, but that will take simply too long for a single asset.
Also, while todays hardware is very capable of doing PTex in real-time, having a complex scene which weighs in 700K polies, with different light maps, normals and shaders codes, PTex will simply interfere with the pipeline. It's not feasible on such a scale. Besides, if your game is going on consoles, there is the life span to think about.
Fun-Fact: If you look closely in Pixar movies, you will see that they'll Ptex 'here and there' sparingly...
Don't PTex's adjacency tables eliminate seams entirely? I don't quite understand the part about padding, I was under the impression that PTex had NO PADDING and only stored the necessary texels because it doesn't need to blend pixels based on flattened UV islands, but rather adjacency tables. correct me if I am wrong please.
I dont see how the two are related, VT allows comletely unique textures, while PTex can remove the need for UVs, and some of the problems caused by UVs. VT is entirely independant from texel layout methods. How does PTex "give you the power of having high resolution textures with 100% uniqueness?" What aspects don't make sense for real time? Mudbox renders it in realtime, and there is that one siggraph talk coming soon that another polycounter mentioned.
But when would you change the vertex ID? for example adding/removing topology? Im sure that is a kink that can be worked out.
Earlier I proposed a hybrid system for texturing where certain objects could use uvs, and others use PTex. If you require the use of photoshop on a certain element of an object you could always temporarily unwrap just that element for 2d manipulation but it could still be stored as PTex so you could still have it's benefits.
It gets rid of unfolding uv's, yeah, but 3d painting is already used with UV.
But that thing in Rage, oh yeah !
Never thought about lods, that's a good point. I guess it also depends on the type of LODs you are doing since PTex does support subdivision as well as mip-mapping.
Either way it seems to me like this would be a next gen type of thing rather than ps360.
It's mostly been used in film where there isn't a demand for super detailed images. It works on Disney films because large sections of the material are flat color with sporadic detail. Sure you can push it harder but I just don't seeing it as being able to cover a lot of surfaces in games all that well.
It is not true that Ptex doesn't waste texture space. Unless when you unwrap every polygon in your model, it happens to all fit perfectly in a power of 2 texture. Which is very unlikely.
Since seams and stretching are largely unnoticeable in a properly uv'd/textured model, you're really weighing whether or not it is worth the performance drop and limiting your ability to edit the texture just so you don't have to unwrap anything and I think in most cases the answer is simply no.
Pointing to Mudbox isn't a very good example, I can get several million polygon models in 3ds max, fully editable in realtime. That doesn't mean I should start using them in game.
Maybe the next effort from developpers will be on this. Mudbox or Zbrush, with full support of .psd
Throwing Ptex-style tech in for standalone game assets can only mean less optimization, therefore less performance. I mean, it's so obvious once you have the experience of actually working with quality realtime assets. Controlling and adjusting things in 2D (AO layer blending, color corrections, and so on) is actually a big and important part of the job. 3D painting is very useful but you do need a regular UV-based texture pass, always.
A push for better UV tools is the way to go - in conjunction with Ptex texturing of the source assets, with as many fancy stamps/projections as needed.