Hey all -
Been testing Zbrush 3.5 and also 3dCoat, and now the Mudbox 2010 demo, as well as Xnormal, to work out some kinks in the sculpting/texture painting to Vray workflow. Thought I'd share the first image result and my current workflow. Thanks to all who helped me figure this stuff out (Morbid, Vlado, Rivoli et al.)
Here are a couple of images. The main ring is rendered geometry using the full-res Zbrush mesh via a VrayProxy. The smaller broken pieces were done with displacement and normal maps on lower res geometry. For this set of parts it was pretty much Zbrush for the sculpting:
Overall shot and a detail of the hi-res. Original res is 5K:


The hi-res mesh is fully as detailed as the small bits done with normals/displacement, but its all geometry, and vastly simpler than trying to get decent maps out of any of these programs, and far simpler than trying to figure out the correct displacement settings and values etc.
For those curious, here is the workflow we are using:
1 - lo-res build (Max or modo)
2 - Export to sculpting package (could be any of them, but for now we're using Zbrush)
3 - Subdivide and sculpt to required level.
4 - Export highest sub-d level as a .obj (this can be slow obviously)
5 - Export lowest, or at least fairly low sub-d level as a .obj.
6 - Use the ply2vrmesh.exe file that ships with Vray and convert the high-res .obj to a .vrmesh file.
7 - Go to Max and create a Vrayproxy object and load the high-res mesh .vrmesh file.
** For some reason the ply2vrmesh.exe rotates the objects 90 degrees so it will likely need to be rotated back to match your original orientation, and that of the low-res .obj you also exported.
8 - Import the lo-res mesh as a .obj. This will act as a 'placeholder' or 'preview' version of the VrayProxy hi-res. Align the VrayProxy hi-res an this object and link them so they move together. ** You may want/need to add a Turbosmooth to the lo-res mesh to get the silhouttes to be a closer match - this can help with positioning and also getting a closer feel for lighting - but it really depends on how different your high-res mesh really is.
That's pretty much it.
The VrayProxy is the one you will want to use for rendering, but the lo-res object can be used as a visual guide for positioning the object and for materials and lighting previews, primarily because it works in RT, but also I just find it easier to see and use in the viewports. (I use VrayRT constantly, so having this lo-res mesh allows me to use that for all the setup work. When RT supports proxies then using the lores mesh will likely not be needed anymore.)
When you are setting up you hide the VrayProxy and when ready to render just hide the low-res mesh and unhide the Vrayproxy and you are good to go - best of both worlds.
You can also use the lo-res exported .obj to do any texture painting you might want to do outside of your sculpting package. I prefer 3D Coat for texture painting (way more options and control than Zbrush IMO). In the case of the ring I painted a spec map using the lo-res mesh and just applied it to the VrayProxy. Works like a charm.
The only issue with this workflow is that the lo-res and hi-res mesh can vary quite a bit in terms of silhouette so accurate positioning can be problematic - so I can see needing to output higher res versions to use as the placeholder, but probably not that often. That said, you'd have the same problem with a low-res mesh and displacement mapping because you can't see that in viewport well either. The only real way around that is to work with the actual geometry (or maybe use Decimation Master to create a lo-res that is even closer to your high-res silhouette - haven't tried that yet)
Anyway, this seems to work very well for us so far and is by far the simplest solution we have tried, so thought I'd share it in case others find it handy.
b
Been testing Zbrush 3.5 and also 3dCoat, and now the Mudbox 2010 demo, as well as Xnormal, to work out some kinks in the sculpting/texture painting to Vray workflow. Thought I'd share the first image result and my current workflow. Thanks to all who helped me figure this stuff out (Morbid, Vlado, Rivoli et al.)
Here are a couple of images. The main ring is rendered geometry using the full-res Zbrush mesh via a VrayProxy. The smaller broken pieces were done with displacement and normal maps on lower res geometry. For this set of parts it was pretty much Zbrush for the sculpting:
Overall shot and a detail of the hi-res. Original res is 5K:


The hi-res mesh is fully as detailed as the small bits done with normals/displacement, but its all geometry, and vastly simpler than trying to get decent maps out of any of these programs, and far simpler than trying to figure out the correct displacement settings and values etc.
For those curious, here is the workflow we are using:
1 - lo-res build (Max or modo)
2 - Export to sculpting package (could be any of them, but for now we're using Zbrush)
3 - Subdivide and sculpt to required level.
4 - Export highest sub-d level as a .obj (this can be slow obviously)
5 - Export lowest, or at least fairly low sub-d level as a .obj.
6 - Use the ply2vrmesh.exe file that ships with Vray and convert the high-res .obj to a .vrmesh file.
7 - Go to Max and create a Vrayproxy object and load the high-res mesh .vrmesh file.
** For some reason the ply2vrmesh.exe rotates the objects 90 degrees so it will likely need to be rotated back to match your original orientation, and that of the low-res .obj you also exported.
8 - Import the lo-res mesh as a .obj. This will act as a 'placeholder' or 'preview' version of the VrayProxy hi-res. Align the VrayProxy hi-res an this object and link them so they move together. ** You may want/need to add a Turbosmooth to the lo-res mesh to get the silhouttes to be a closer match - this can help with positioning and also getting a closer feel for lighting - but it really depends on how different your high-res mesh really is.
That's pretty much it.
The VrayProxy is the one you will want to use for rendering, but the lo-res object can be used as a visual guide for positioning the object and for materials and lighting previews, primarily because it works in RT, but also I just find it easier to see and use in the viewports. (I use VrayRT constantly, so having this lo-res mesh allows me to use that for all the setup work. When RT supports proxies then using the lores mesh will likely not be needed anymore.)
When you are setting up you hide the VrayProxy and when ready to render just hide the low-res mesh and unhide the Vrayproxy and you are good to go - best of both worlds.
You can also use the lo-res exported .obj to do any texture painting you might want to do outside of your sculpting package. I prefer 3D Coat for texture painting (way more options and control than Zbrush IMO). In the case of the ring I painted a spec map using the lo-res mesh and just applied it to the VrayProxy. Works like a charm.
The only issue with this workflow is that the lo-res and hi-res mesh can vary quite a bit in terms of silhouette so accurate positioning can be problematic - so I can see needing to output higher res versions to use as the placeholder, but probably not that often. That said, you'd have the same problem with a low-res mesh and displacement mapping because you can't see that in viewport well either. The only real way around that is to work with the actual geometry (or maybe use Decimation Master to create a lo-res that is even closer to your high-res silhouette - haven't tried that yet)
Anyway, this seems to work very well for us so far and is by far the simplest solution we have tried, so thought I'd share it in case others find it handy.
b
Comment