Jump to content
3DCoat Forums

Ptex format for 3DCoat?


stevecullum
 Share

Recommended Posts

  • Applink Developer

I'm under NDA and can't discuss other upcoming renderers that will have this support but at least one more major renderer will support this very soon.

I really hope it's Vray...well anyway, this is a feature to must have in any renderer.

Link to comment
Share on other sites

Oh I see it exports the model with the tiny squares as a UV map. It didn't export any textures though (I did have the boxes checked)

It works perfect here. Tested it with the diffuse map, and have perfect results. Rendered in softimage then. No problems. But it works only in a resolution of 2048x2048 pixels. Unfortunately no higher resolution can be exported.

Best wishes

Chris

Link to comment
Share on other sites

Just wanted it to be clear, Ptex in 3DC handles triangles just fine. I purposely made a bunch of oddly shaped triangles on this mesh and it painted just the same as quads.

2010-02-04_0114.png2010-02-04_0116.png

Yes, but 3D-Coat subdivides all at least once to leave only quads. So there are actually no problems with triangles if you are not against subdivision.

Link to comment
Share on other sites

  • Advanced Member

Hey People.

I am trying to get a voxel sculpt which I have retopo'd (with perfect quad's by the way) to work in ptex but I am having issues.

I have tried all of the options in the retopo room "merge model into scene with ptex", "merge hull with ptex", "merge patch with ptex" but they all hate me. :rolleyes::)

The model appears in the paint room as it should with its normal map but when I paint it, it's ugly. I opened up the UV room and I noticed a massive chunk of squares diddn't exist.

The same process works great with the per pixel painting method.

Ptext works amazingly if i import a mesh on its own.

Any ideas comrades?

Link to comment
Share on other sites

I mentioned on the official Ptex message board how we'd love to hear some feedback from Disney about the 3DC implementation of this. I got a response from Brent Burley at Disney:

People on the 3D-Coat forum have brought up that it would be really cool to hear what the folks at Disney think of the way Ptex was implemented.

It's great to see how fast the implementation in 3D-Coat is

progressing and how positively it has been received.

One of the questions that seems to come up is whether the Ptex file

format is needed or not. You can certainly pack the faces into

traditional UV textures. That's how we work internally in our paint

tool (though the packing is dynamic to allow face resizing and is

never exposed to the user). We tried sending these packed textures

directly to Renderman at one point (before Ptex) but it didn't give us

the performance or filter quality that we wanted. For us, the Ptex

file format and rendering performance is critical.

Our version of Ptex can paint on layers just like Photoshop but including color, specularity, and depth.

We have not had much call for implementing 3d layers in our paint tool

(apart from being able to display one read-only reference layer). Due

to the large number of layers and the arbitrary ways that they can be

used in the shaders it's not practical for us to visualize the final

image in GL. Artists here also seem more interested in using

available memory to load extremely large textures and/or lots of

geometry rather than having many texture layers loaded at once.

Having layers could be useful in some cases, but it hasn't been a

priority.

Link to comment
Share on other sites

  • Advanced Member

We have not had much call for implementing 3d layers in our paint tool....

Having layers could be useful in some cases, but it hasn't been a

priority.

Totally agree with this. I find the visualization of spec in particular is largely useless as it does not interact with the surface attributes in any kind of meaningful way. I might paint depth maps at the same time as color maps, but since you can't effectively control the options for depth in a single brush it's rarely useful to me - plus I find the screen representation of depth is very crude/rough.

My .02 would be to disable that stuff and ramp up the texture size or mesh size that 3DC can move around

b

Link to comment
Share on other sites

  • Advanced Member

I'm really blown away by people not wanting layers to texture with. It's like someone saying Avatar was horrible movie.

As for the depth the screen representation looks fine to me:

2010-02-09_1608.png

Maybe I misunderstood or mis-wrote: layers is great, but for single textures. What I don't need is spec/bump/color at the same time.

Your screen cap kinda highlights exactly what I"m talking about: you see it as fine, but to me it's all to coarse and there are artifacts everywhere. I don't know if that's just the screen smoothing of 3DC (which always seems poor on my models) or if that is how coarse the depth would actually be. I tend to just paint bumps etc as a black and white color texture and just use it as a bump later - can't get anywhere close to the same level of detail when using depth.

b

Link to comment
Share on other sites

Way back in the day I requested that layers have the option of showing just spec, color, or depth. I mainly asked because at the time that's how I was used to doing my textures in Photoshop, however I still find it useful to turn to turn the layers on or off at will. You don't have to use that feature if you don't want to.

You can't tell from my screenshot but I am actually zoomed in very close so those jaggies are barely noticeable while you're working. You can't expect to sculpt on a low to medium res. model and get visual feedback like it's billions of polys. The jaggies can be lessened by increasing the subpatching amount (View > Adjust Subpatching), but the exported textures model will look just as good either way.

Link to comment
Share on other sites

  • Advanced Member

You can't tell from my screenshot but I am actually zoomed in very close so those jaggies are barely noticeable while you're working. You can't expect to sculpt on a low to medium res. model and get visual feedback like it's billions of polys.

.... I kinda thought that I could: my understanding is that was what painting via a depth map would allow, versus sculpting actual geometry. However, I can do more with actual geometry in Zbrush than I can do with textures in 3DC - and not by using "billions" of polys, maybe more like 3-10 million. Still a lot mind you :). That is the part I still don't really get and I've never been able to find an explanation - it just doesn't seem to come up, which is surprising to me.

Anyway, I'm not sure how the zooming in of your reference impacts, because that is about as good as I can get out of 3DC at any zoom. If there is a way to get real tight detail I would love to know how.

b

Link to comment
Share on other sites

  • Advanced Member

Maybe this will help clarify and there will be an answer on this question :)

Attached are two screen caps of some detail I hacked into a current working object. At the moment this one is sub-d'd up to almost 18M points in Zbrush, so it is admittedly dense. However you can see how zoomed in that detail shot is by comparing it to the overall - it's quite micro detail.

Can I get that level of detail in 3DC? If so, how? I've tried voxels to no avail and sculpting can't get close, so painting a depth map seemed to be the way to go - but I've never gotten even close to this except to paint it as a texture map only, and then load that as a bump in Max/Vray.

Don't get me wrong - I know 3DC can paint that level of *texture* detail on a high enough res map (via Per Pixel anyway) but no way have I seen anything close in the depth channel in the viewport. Because I can actually *see* this detail in ZB it is much easier to create there.

b

post-1221-12657530523535_thumb.png

post-1221-12657530538813_thumb.png

Link to comment
Share on other sites

  • Advanced Member

Did you try the surface mode in voxels? This I understand works the same as Zbrush - using actual polys.

Tried it, but when you go back to Voxel mode and export it all just disappears. Maybe if you stay in surface mode only, but going back and forth does not seem possible. I didn't get too far with this workflow though, because exporting from Voxels to paint (quadrangulate and paint - didn't want to retopo) gave me a crazy blocky mesh and I more or less just gave up on that approach and went back to Zbrush.

Is it doable this way?

b

Link to comment
Share on other sites

  • Advanced Member
Maybe if you stay in surface mode only, but going back and forth does not seem possible

Its possible to return to voxels, but only at the same resolution eg high. ASFAIK, there is currently no way to step down res, make changes and step up again and have all the details preserved.

Link to comment
Share on other sites

  • Advanced Member

Think ths is quite close to yours...

Think ths is quite close to yours...

It's getting close for sure. I don't think it's quite as sharp and tight, but let's say it's tight enough though: how do you get it out of there in a way that can be rendered in Max/Vray and hold that detail?

Re: you other post:

If you can't step down from surface mode then you have to nail it in one - which is acceptable in my mind, but getting that detail out of the voxel room and onto a renderable and paintable mesh has proven tough for me too.

b

Link to comment
Share on other sites

The thing is, your zbrush model in the example will lose at least some of that detail when you bake it to textures. Unless of course you use multiple UV maps for the model. A single texture maps can only hold fine detail to a certain point before it starts getting blocky. If you use multiple UV maps for the 3DC model you will also get super fine details. Of course going back to Ptex this is a nice feature of being able to change texture resolution on a per-polygon basis. You can see this in my Ptex

(at about 2:35) where I've painted on some fine detail but when I zoom in you can see that detail starts to look blocky due to the texture size, so I increase the resolution in that spot and it looks finer.
Link to comment
Share on other sites

  • Advanced Member
It's getting close for sure. I don't think it's quite as sharp and tight, but let's say it's tight enough though: how do you get it out of there in a way that can be rendered in Max/Vray and hold that detail?

Well now Ptex has arrived, once finished in surface mode, I retopo and then merge to scene with Ptex. Then when exporting, just need to make sure you save with a high enough texture res to capture those fine details.

Link to comment
Share on other sites

  • Advanced Member

The thing is, your zbrush model in the example will lose at least some of that detail when you bake it to textures. Unless of course you use multiple UV maps for the model. A single texture maps can only hold fine detail to a certain point before it starts getting blocky. If you use multiple UV maps for the 3DC model you will also get super fine details. Of course going back to Ptex this is a nice feature of being able to change texture resolution on a per-polygon basis. You can see this in my Ptex

(at about 2:35) where I've painted on some fine detail but when I zoom in you can see that detail starts to look blocky due to the texture size, so I increase the resolution in that spot and it looks finer.

I'm definitely interested in the Ptex possibilities - and I've watched your vid already for sure :)

The thing is: I can get damn close to that detail out of Zbrush using normal maps and reasonably hi-res meshes. I'm not trying to get super low poly models out. I'm working on a pipeline right now (with the help of Artman and a few other people) to get high res geometry out to use rather than resorting to maps. At current normal maps and *fairly* high geo seems to be the way, and I can dispose of the displacement map hassle (and loss of detail that may come with that). In that case I can definitely get this level of detail out of Zbrush.

I would be happy to see something close out of 3DC, at least to see something like it in the viewport so I can tell what my bump/normal maps look like as I create them.

Does that make sense?

b

Link to comment
Share on other sites

  • Advanced Member

It makes sense I just find it hard to believe. Pixels are pixels no matter what program they come out of. If you've got 1024 pixels in one image then same image exported from another program will still only have 1024 pixels.

Yep, but I export my normal map at 8K, not 1K. I get that there are limits, but I don't impose such strict ones myself ;)

Link to comment
Share on other sites

  • Advanced Member

1024 was an example, the same goes for 8k, it's still 8k pixels when exported from any program.

BTW that image above was only a 2k texture I'm having a little trouble loading an 8k right now, but 4k is also quite nice.

Definitely better - but it's still not really fine detail. There is a level at which 3DC matches ZB, but then it just falls short IMO. Here is an example. It's the same mesh as my example in ZB above, but exported to 3DC. I exported a 17K poly mesh and imported through MV. I chose mesh resolution of 20 Million, and texture is 8K. This crop is approximately the same size area as the ZB example. I exported the main alpha brush I used in ZB, so that would be the same too. I think the difference is quite apparent.

Don't get me wrong - I am not a 3DC witch-hunt. I *want* to be able to use it. Just can't seem to find a way to get what I need out of it.

b

post-1221-12657691243002_thumb.png

Link to comment
Share on other sites

  • Advanced Member

Definitely better - but it's still not really fine detail. There is a level at which 3DC matches ZB, but then it just falls short IMO. Here is an example. It's the same mesh as my example in ZB above, but exported to 3DC. I exported a 17K poly mesh and imported through MV. I chose mesh resolution of 20 Million, and texture is 8K. This crop is approximately the same size area as the ZB example. I exported the main alpha brush I used in ZB, so that would be the same too. I think the difference is quite apparent.

Don't get me wrong - I am not a 3DC witch-hunt. I *want* to be able to use it. Just can't seem to find a way to get what I need out of it.

b

Here is one imported for PP painting. This actually seems much better to me. I imported with the base mesh at 17K and the texture at 8K, and also opted to try subdividing on import so it was about a 70K mesh and 8K texture. I don't think there was really any difference in the detail though. Should the mesh res affect how much detail you get in PP painting? (I didn't think so, but not sure).

So this is better for sure, and I may have sort of stumbled onto another complicating factor that might be a source of a lot of my problems: when I scaled down a brush in 3DC it really gets super coarse looking. It almost seems that 3DC is interpolating the source image down very roughly. Is it possible that the interpolation algorithm used to scale down brushes for painting could use a tweak, or is that just me?

b

post-1221-12657699374192_thumb.png

Link to comment
Share on other sites

  • Advanced Member

And the last one: imported for Ptex. This for sure is the best.

I imported at a few resolutions, but in the end found starting high and not having to up the res later works best. This was imported at 60million polys, which gave me a starting point of 6-7 2K maps. I upped the res in a couple of places to see how that worked - it's pretty amazing.

post-1221-12657755950248_thumb.png

I can only seem to work with 2K maps though - using the "increase mesh and texture resolution" function totally screwed things up - gave me a semi invisible object that I couldn't paint on.

Now - the trick is (yet again) getting this detail out :)

Exporting the .obj or even trying to export texture maps gives me (for this model and after increasing re in a few places) about 12 texture maps, all at whatever size I wanted (in this case I chose 8K). It took a while to pump those out. I tossed those as I don't have a render engine that can use them. I guess the only way to export the results from a mulit-res Ptex paint is via Texture Baking?

I did try this and it worked pretty well (see second attachment - that is the map on the lo-res mesh rendered in Vray). I chose for the target the same lo-res that I painted on and it worked pretty well, although there is a loss of detail through this process, it's pretty good. Is this the only/best way to get a single usable map out of Ptex right now? Obviously the ideal solution is to have a render engine that supports Ptex - but until then....

post-1221-1265775800477_thumb.png

Thanks /b

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...