Hard Light Productions Forums
Off-Topic Discussion => General Discussion => Topic started by: Fury on January 22, 2010, 05:13:12 am
-
Ptex is a texture mapping system developed by Walt Disney Animation Studios for production-quality rendering:
- No UV assignment is required! Ptex applies a separate texture to each face of a subdivision or polygon mesh.
- The Ptex file format can efficiently store hundreds of thousands of texture images in a single file.
- The Ptex API provides cached file I/O and high-quality filtering - everything that is needed to easily add Ptex support to a production-quality renderer or texture authoring application.
http://ptex.us
And a video about it: http://www.youtube.com/watch?v=GxNlAlOuQQQ
I wonder if this could be useful for FS modeling?
-
i cant imagine a rpoduction rendering meathod being compatable for modeling requiring real time rendering.
-
Wait.... I don't think I get the full implications of this. I mean not having to UV map is nice, but now you've got thousands or millions of textures, right? Wouldn't that be a problem somehow?
-
There is no way you can use this in real-time rendering. You'd crash the graphics card.
-
I thought the FSOpen engine was optimized so that it was better to have as few large textures as possible. :p
This is quite interesting, but it seems to be the exact opposite of where we're at.
-
the idea of a non-square bitmap format would be pretty cool though. the idea is that squarness is a totally arbitrary shape which we fill in with pixels, only because its the simplest geometry to use. gpu's with their vecctor capabilities could handle more complex shaped textures without much trouble. a 2d triangle really isnt that complex though, and could easily be derived from a polygon, and could be represented by only 6 floats. once the bounds are established you provide a list of pixels that can fill that triangle (essentially the inverse of what happens when a polygon is rendered), line by line, skipping any pixel slots that are out of the polygon bounds. you can combine multiple triangles filled with pixels in one file format. the format would start with a header with offsets to polygon definitions and pixels, every triangle would have offsets and number of pixels allocated for that triangle.
the pixel data could also be compressed using the same algorithm you would use for dxt. most compressed formats compress 4x4 blocks of pixels, so rather than store single pixels in the pixel areas of the format, you store pixel blocks, essentially squaring the resolution of the format for the same file size.
perhaps such a texture format could be embedded directly into the model format. since pixels in the triangle are stored in the same order they are rendered, the rendering of that triangle can be accelerated further. of course this idea would cause some issues with creating models, for example if you model the object and begin texturing, but decide you want to add more geometry, you may end having to toss pixel data on any polygon that is changed, or some how deform it. of course theese issues could be worked around. also how to deal with materials, normal maps and the like. perhaps with a multichannel pixel format (i for one would like to see compressed texture formats that work well for a larger, possibly dynamic, number of channels).
this setup would do a number of things, the first of which is completely eliminate pixel wastage, freeing up vital graphics memory. the extra vector data needed would most likely be less than what would otherwise go to storing unused pixels. texture bake operations would look better and be more efficient. and most importantly this should fall well within the capability of the existing video hardware (though im not sure if the support is available at the api level).
-
I wonder if this could be useful for FS modeling?
http://ptex.us/samples.html
Are these an indicator? :confused: They look a bit :ick:
-
Lots of stuff
An automatic UV mapping system that deconstructs the model into triangles and then packs them into a texture would be simpler and far more effective while achieving nearly the same end result.
-
Lots of stuff
An automatic UV mapping system that deconstructs the model into triangles and then packs them into a texture would be simpler and far more effective while achieving nearly the same end result.
yes but an automatic uv mapping system wouldnt be nearly as efficient, you will have pixel wastage over 50%