Jump to content
3DCoat Forums

Question for Andrew


Cube
 Share

Recommended Posts

  • Member

Hi Andrew, i sent you an e-mail a while back about the possibility of changing the rendering method in the Voxel room to improve fine details. Obviously you know a lot more about this stuff than i do, but i wondered if you can clear up some questions for me and perhaps we might be able to discuss some future options to improve things. Everyone else is welcome to add their own ideas/opinions of course!

Firstly i want to illustrate the current situation, and i tried to set up a test to directly compare the fine surface detailing abilities between 3D-Coat and ZBrush (since i have the trials of both software installed).

Here is the 'control' object. A very basic sphere mesh:

sherebase.png

Next i scaled the object until one segment filled the viewport (i never moved the camera after this):

sherezoomed.png

Next i subdivided the mesh to ~25,000,000 polygons and made a few marks at very small brush sizes:

sphere25mdetail.png

Next i opened up 3D-Coat and loaded the same mesh (merge>select mesh) and once again scaled it so one face filled most of the view (again i never moved the camera after this):

3dcspherebase.png

Then i subdivided the mesh 4-5 times until the faces were no longer visible to give a closer approximation to the subdivided ZBrush sphere. (poly count reduced slightly due to the volume change):

3dcspheresub.png

After the volume had completed the merge operation i tried to make a few marks with increasingly smaller brush sizes:

3dc24mdetail.png

Now we can see immediately that the difference in surface detail between the two approaches is huge. I know that this is not a direct comparison because of the way polygons are being used is fundamentally different in the two applications, but i think it's still something worth discussing since total usable geometry seems to be what is holding 3DCoat back.

Here are my Questions for you:

1: Would switching to a pure voxel render solution be more efficient (in terms of performance) and allow us to scale object density up further than the current polygon skin render? I know this would result in discrete 'steps' between each voxel, but if we could get the density high enough i think it could work very well.

2: If voxel rendering is not a valid option could the existing 'polygon skin' method be optimized to allow us to work on 60-80m+ poly objects to achieve the same detail level as ZBrush does at ~25m?

Please don't take this thread as an attack on 3D-Coat, i think the program is incredible! I prefer 3D-Coat to ZBrush in every respect except for this issue of very fine details. I'd just be really interested to hear your thoughts on these questions - and possible ideas you might have for improving the fine detailing in 3D-Coat in the future.

Thanks very much for your time!

Link to comment
Share on other sites

  • Member

1: Would switching to a pure voxel render solution be more efficient (in terms of performance) and allow us to scale object density up further than the current polygon skin render? I know this would result in discrete 'steps' between each voxel, but if we could get the density high enough i think it could work very well.

2: If voxel rendering is not a valid option could the existing 'polygon skin' method be optimized to allow us to work on 60-80m+ poly objects to achieve the same detail level as ZBrush does at ~25m?

It's not the render that is the issue, it's the data structure. Voxels (level set) cannot be compared to polygons, ESPECIALLY when you have something like a sphere, which is a pretty ideal case for polygons, but a huge waste for voxels. With voxels, all the voxels distance from the surface still have to be stored in memory (unless there is a hierarchical data structure) and you aren't using them. Consider, you could create dozens or even hundreds of concentric spherical shells and not use any more memory with voxels, but if you used polygons would have dozens or hundreds of times more polygons to store/process.

Polygons do better on objects where the ratio of surface to volume is small. Spheres, cubes, etc. Voxels do better when the ratio of surface to volume is high. Sponges, trees, etc. Polygons also do better when there is a high variance of frequencies. Voxels do better when there is even frequencies.

Try making a sponge with voxels and polygons and see how the change in data structure makes the voxels so much faster and lighter in memory consumption.

- Chad

Link to comment
Share on other sites

  • Advanced Member

Well I've mentioned this a few times already, but the difference in detail is caused by the hardware phong shading in 3D Coat. ZBrush doesn't use any form of shading on its models. This is why ZBrush models look faceted when low poly and yet smooth when high poly.

If you take your 3D Coat model into another program that allows you to disable shading then you'll see that it looks as good as the ZBrush version.

It would be very easy for Andrew to allow us to disable shading, but because a non shaded model might look great in 3D Coat or ZBrush it doesn't mean it's going to look great when in a game engine or an external renderer when shading is enabled again, or when you drop a normal map onto your model.

So for me I personally prefer the WYSIWYG approach. The only people that would really benefit from disabling shading are the folks that plan to export a multi million poly model from 3D Coat and display it in a renderer with shading disabled. It also might be good for people that just want to render their model in 3D Coat and publish an image of it.

Link to comment
Share on other sites

  • Member

It's not the render that is the issue, it's the data structure. Voxels (level set) cannot be compared to polygons, ESPECIALLY when you have something like a sphere, which is a pretty ideal case for polygons, but a huge waste for voxels. With voxels, all the voxels distance from the surface still have to be stored in memory (unless there is a hierarchical data structure) and you aren't using them. Consider, you could create dozens or even hundreds of concentric spherical shells and not use any more memory with voxels, but if you used polygons would have dozens or hundreds of times more polygons to store/process.

Polygons do better on objects where the ratio of surface to volume is small. Spheres, cubes, etc. Voxels do better when the ratio of surface to volume is high. Sponges, trees, etc. Polygons also do better when there is a high variance of frequencies. Voxels do better when there is even frequencies.

Try making a sponge with voxels and polygons and see how the change in data structure makes the voxels so much faster and lighter in memory consumption.

- Chad

Sorry maybe i should have been clearer in my post, i'm aware of the differences between voxels and polygons (but dont forget 3D-Coat uses a polygonal skin to display the volume, so poly count directly affects performance). The only reason i used a sphere for the example is because i could quickly and easily allign one quad to the screen size, so that i knew i was looking at the same small surface area (realtively) between the 2 apps. I don't see how the overall shape of the object has any bearing in a test like this that's purely for looking at fine surface detail though. Because 3D-Coat essentially becomes unusable beyond ~20 million poly's for most people, that's as far as i took it (ZBrush still runs very smooth at this res). I wasn't intending to say that polygons are the same in both apps, this is just as close to an accurate comparison of surface detailing that i can make.

My question is whether we will ever be able to get the same level of detail on surfaces in 3D-Coat that are possiple is ZBrush. Whether that be by optimizing the current polygonal skin method to allow for much higher resolution, or using true voxel rendering at a super high density or whatever. If it's not possible that's fine, but i'd still like to hear what Andrew might be able do to increase efficiency down the line.

I fully understand the benefits of using voxels, but i just want to know if we will be able to get the same resolution for fine detail work eventually that other apps have.

Does that make sense?

Link to comment
Share on other sites

  • Member

If you take your 3D Coat model into another program that allows you to disable shading then you'll see that it looks as good as the ZBrush version.

Hmm, i can't see how that's possible. In my test 3D-Coat simply failed to even create the detail at smaller brush sizes, the resolution is just not there. Surely to get the same detail as the ZBrush model, you would have to double the poly count or more to compensate for the (relatively) inefficient use of tri's on the Voxel 'skin'. I'm sure shading would make a difference, but you'd still need the geometry there to pick up the details in the first place.

Link to comment
Share on other sites

  • Advanced Member

Hmm, i can't see how that's possible. In my test 3D-Coat simply failed to even create the detail at smaller brush sizes, the resolution is just not there. Surely to get the same detail as the ZBrush model, you would have to double the poly count or more to compensate for the (relatively) inefficient use of tri's on the Voxel 'skin'. I'm sure shading would make a difference, but you'd still need the geometry there to pick up the details in the first place.

Your test didn't just demonstrate the difference between shading models but it also demonstrated the difference between two totally different brushes. :)

Another way to demonstrate the shading issue would be to export the above ZBrush model into another program with phong shading and you'll see the super fine detail vanish.

Still, I'm not denying that both surfaces in either programs are different. All I'm saying is that the biggest difference is caused by the shading in 3D Coat and not the poly count.

Link to comment
Share on other sites

  • Member

Your test didn't just demonstrate the difference between shading models but it also demonstrated the difference between two totally different brushes. :)

Another way to demonstrate the shading issue would be to export the above ZBrush model into another program with phong shading and you'll see the super fine detail vanish.

Still, I'm not denying that both surfaces in either programs are different. All I'm saying is that the biggest difference is caused by the shading in 3D Coat and not the poly count.

I used the standard brush in ZBrush and the Clay brush in 3D-Coat with the solid circular alpha. I can't see how that would make any difference when clearly once you go to a small brush size in 3D-Coat you are at or below the size of an individual voxel. It seems to me that for every voxel in 3D-Coat, ZBrush has about 4 polygons (this is to be expected since a huge number of polygons in 3D-Coat are used up around the edges of each voxel for smoothing - so the voxel 'grid' is much less dense compared to the polygon 'grid' in ZBrush), so i think you would need another subdivision in 3D-Coat to get the same detail. That would mean approximately 100m poly's.

This is why i'm wondering if a pure voxel rendering approach could be made efficient enough to allow for another subdivision level or two than is possible at the moment. That way we mght be able to have the best of both worlds, total freedom from topology concerns and super high detail surfaces as well.

Link to comment
Share on other sites

  • Advanced Member

And one more thing - 3D Coat's poly count is in triangles while ZBrush's poly count is quads. So perhaps it might be best to double ZBrush's poly count before comparing it with 3D Coat.

So 20 million quads in ZBrush is the equivalent to 40 million triangles in 3D Coat.

Link to comment
Share on other sites

  • Advanced Member

This is why i'm wondering if a pure voxel rendering approach could be made efficient enough to allow for another subdivision level or two than is possible at the moment. That way we mght be able to have the best of both worlds, total freedom from topology concerns and super high detail surfaces as well.

Further subdivision levels will be possible when Andrew adds the planned subdivision/multi-res support in Surface mode. I suspect voxels are a little too memory hungry and wasteful for super high detail.

Link to comment
Share on other sites

  • Member

And one more thing - 3D Coat's poly count is in triangles while ZBrush's poly count is quads. So perhaps it might be best to double ZBrush's poly count before comparing it with 3D Coat.

So 20 million quads in ZBrush is the equivalent to 40 million triangles in 3D Coat.

Further subdivision levels will be possible when Andrew adds the planned subdivision/multi-res support in Surface mode. I suspect voxels are a little too memory hungry and wasteful for super high detail.

Aye that's a good point about ZBrush using quads. So differences in technology aside ZBrush probably has an effective geometry advantage of something like 4:1 over 3DC in super fine details at the moment (that's best case scenario, obviously it depends on topology). That's just going by what is possible on my machine, 20 million triangles and above is unusable for me in 3DC, and about 30-40 million quads is as high as i can go in ZBrush.

Like i said in my first post this is not in any way meant as an attack on 3DCoat, i think the app is simply amazing to use and the very high surface details are literally my only 'problem' with it. I'm just interested in how much room for improvement there is in this one area down the line and thought it might be interesting to have a thread where we could get Andrews opinion as he has the perspective of someone with huge knowledge about this stuff.

If voxels and super high geometry just don't go together on the hardware we have available today then that's fine - i'm just curious about what is possible :)

I'm certainly looking forward to Multi-Res in surface mode if this will go some way to helping!

Link to comment
Share on other sites

  • Advanced Member

such a great thread!

+1 to Splodge on the point of adding a FLAT shade mode to the vox room. Has anyone posted a feature request for that one yet...wont looks quite the same for tris... but still, would be a nice addition that Andrew could likely code in a few minutes.

************************************************************

Thank you very much for the comparison images and text for the comparison. You've put into words what many 3DC users also recognize.

Another example of why IMO 3DC might want to consider an ADAPTIVE TESSELLATION method for creating/drawing the POLY skin for the voxels....

07_tessellation_04.jpg

http://http.developer.nvidia.com/GPUGems2/gpugems2_chapter07.html

For this dynamic tessellation, I would suggest USING ONE OF THE OTHER 7 CORES THAT 3DC REFUSES TO USE IN OSX AND WINDOWS!!!!, MULTITHREAD 3DC PLEASE!; in addition, perhaps use CUDA, or preferably OpenCL so all us Ati users can benefit too.. as now there is an automatic OPEN SOURCE converter for CUDA to OpenCL. All the sudden 20 million turns into 10-15 mil, or less.

Link to comment
Share on other sites

  • Advanced Member

AbnRanger, your post brings to mind a possible feature request(that someone might want to make)...

should the new multi-res mode be turned into actually adding multi-res to the sculpt room so that you just leave the vox room and go into a robust sculpt room for multi-res work... thus we get the multires, but IMO it logically moves the multires mesh from the vox room to the sculpt room... AS LONG AS IT DOES NOT PREVENT THE FURTHER EDITING OF THE VOXELS.... just an idea...

**************

But for multi-res, using the current poly skinning method, wouldn't it need to be quads(or turned into quads) for proper subdividing(equation wise) anyway?

Wonder what Andrew is going to do there... Maybe quadrangulate then subdivide, but then I'm getting lots of snapping errors in the retopo room with quadrangulates meshes...

so hmmm.... Fix the snapping algorithm too(PLEASE!)

Link to comment
Share on other sites

  • Advanced Member

For this dynamic tessellation, I would suggest USING ONE OF THE OTHER 7 CORES THAT 3DC REFUSES TO USE IN OSX AND WINDOWS!!!!, MULTITHREAD 3DC PLEASE!; in addition, perhaps use CUDA, or preferably OpenCL so all us Ati users can benefit too.. as now there

Tessellation isn't the same as decimation. You couldn't apply that method to a voxel mesh. Doing so would result in 10x more polygons. It would be the total opposite of what you want.

Tessellation takes a low poly object and smooths it out by subdividing the geometry in real time. As you've shown, somebody has developed a smarter version that is a little more optimal, but it's still adding geometry to a low poly object. It doesn't reduce the geometry.

Link to comment
Share on other sites

  • Advanced Member

ADAPTIVE TESSELLATION!

use a less accurate world space measurement of a voxel region to generate a lower-res poly mesh(say 1X for example), then apply adaptive tessellation to the poly skin according to a calculation with more spatial accuracy to generate a more detailed poly-skin(say 2x or 4x) using that more accurate calculation for a given voxel region the user is sculpting on, gather areas with lower regional incidences of normal-angle differences(surfaces that are more flat than volatile) and use adaptive tessellation to calculate a MUCH MORE OPTIMIZED version of the poly-skin allowing for much higher detail while applying the detail intelligently, with low cpu usage, while making for a much faster workflow/redraw/memory use on GPU.

Or you could decimate if you wanted to waste cpu/gpgpu cycles... would still get mostly the same product, but have to work with an initially higher res poly skin, which IMO is unnecessary given the ability to use spatial calc references of the actual voxels(8x8 i think per voxel)

hope that quick description comes through semi-coherently, I'm busy sculpting in 3DC at the moment... :-)

Link to comment
Share on other sites

  • Advanced Member

hope that quick description comes through semi-coherently, I'm busy sculpting in 3DC at the moment... :-)

What you may be failing to understand is that the adaptive tessellated mesh will always have more polygons than the original mesh.

I thought that you wanted less polygons?

Link to comment
Share on other sites

  • Advanced Member

What you may be failing to understand is that the adaptive tessellated mesh will always have more polygons than the original mesh.

I thought that you wanted less polygons?

which mesh has more polys in your opinion? Left or Right? Guess which one is adaptive?

07_tessellation_04.jpg

Link to comment
Share on other sites

  • Advanced Member

which mesh has more polys in your opinion? Left or Right? Guess which one is adaptive?

The original low poly mesh isn't being shown. The image is showing the difference between standard tessellation and adaptive tessellation. The image is assuming that the viewer understands that a low poly object was the source object.

Link to comment
Share on other sites

  • Advanced Member

The original low poly mesh isn't being shown. The image is showing the difference between standard tessellation and adaptive tessellation. The image is assuming that the viewer understands that a low poly object was the source object.

a voxel calculation of lower accuracy could easily generate a low-poly skin to a highly detail voxel object. You could also average out the voxel calculation to a specified degree to generate a spatially "blurred/smoothed" object for low poly vox skin generation.

Link to comment
Share on other sites

  • Member

Sorry maybe i should have been clearer in my post, i'm aware of the differences between voxels and polygons (but dont forget 3D-Coat uses a polygonal skin to display the volume, so poly count directly affects performance).

No, voxel count + polygon count affects performance. In Zbrush, you are only worried about polygon count. If you want to compare apples to apples, don't add the voxel overhead, compare teh two when using only polygons. The mesh shown is only a proxy of the underlying levelset surface. The SDK allows you to export this array to your rendering software so you can render the levelset directly. Zero polygons.

- Chad

Link to comment
Share on other sites

  • Member

No, voxel count + polygon count affects performance. In Zbrush, you are only worried about polygon count. If you want to compare apples to apples, don't add the voxel overhead, compare teh two when using only polygons. The mesh shown is only a proxy of the underlying levelset surface. The SDK allows you to export this array to your rendering software so you can render the levelset directly. Zero polygons.

- Chad

So using voxels will always be vastly less efficient vs regular polygonal methods in terms of overall geometry achievable on current hardware?

Like my suggestion of an option to remove the polygonal skin from the voxel room and work directly on the levelset (as i understand it there are several alternative methods of smoothing a voxel volume that don't use a polygonal skin), would this be more resource friendly and allow us to work at an additional subdivision level than is currently possible?

This is exactly the stuff i am trying to find out, i realise voxels have many advantages but if we won't be able to get much finer control over surface details at some point i think it's important to know this in advance so people don't get their hopes up too much. If voxels will be limited to mid-high frequency details, with the final touches being done in Paint room or another application then i can live with that, i just want to know one way or the other what's going to be possible in near future with the voxel room.

For me the idea of working on a model from start to finish (including painting when Andrew implements this) entirely in voxels is very exciting, but the overall geometry needed for fine detailing is just not possible at the moment.

Link to comment
Share on other sites

  • Member

So using voxels will always be vastly less efficient vs regular polygonal methods in terms of overall geometry achievable on current hardware?

No, it depends on the ratio of surface area to volume, and the range of frequencies.

Like my suggestion of an option to remove the polygonal skin from the voxel room and work directly on the levelset (as i understand it there are several alternative methods of smoothing a voxel volume that don't use a polygonal skin), would this be more resource friendly and allow us to work at an additional subdivision level than is currently possible?

You would still need SOME way to rendering the levelset. A raymarcher would work, but it may be slower than polygon skinning. It would be more memory efficient, but slower. Especially if the levelset is not being updated, but the view is changing. So if you are rotating or zooming or whatever, the polygon skin is very fast, since the conversion to polygons from voxels is cached, and the polygon rendering is done in hardware.

This is exactly the stuff i am trying to find out, i realise voxels have many advantages but if we won't be able to get much finer control over surface details at some point i think it's important to know this in advance so people don't get their hopes up too much. If voxels will be limited to mid-high frequency details, with the final touches being done in Paint room or another application then i can live with that, i just want to know one way or the other what's going to be possible in near future with the voxel room.

For me the idea of working on a model from start to finish (including painting when Andrew implements this) entirely in voxels is very exciting, but the overall geometry needed for fine detailing is just not possible at the moment.

There's two options, really. Either break up the voxel array into a hierarchy of some sort or do only low frequency work in voxels and do high frequency work in polygons or displacements. What's the problem with shifting over to polygon surface modeling for the high-frequency detailing?

- Chad

Link to comment
Share on other sites

  • Member

No, it depends on the ratio of surface area to volume, and the range of frequencies.

You would still need SOME way to rendering the levelset. A raymarcher would work, but it may be slower than polygon skinning. It would be more memory efficient, but slower. Especially if the levelset is not being updated, but the view is changing. So if you are rotating or zooming or whatever, the polygon skin is very fast, since the conversion to polygons from voxels is cached, and the polygon rendering is done in hardware.

There's two options, really. Either break up the voxel array into a hierarchy of some sort or do only low frequency work in voxels and do high frequency work in polygons or displacements. What's the problem with shifting over to polygon surface modeling for the high-frequency detailing?

- Chad

I think i understand what you are talking about re: surface to volume, where certain forms will definately benefit voxels, but lets say for example modeling a humanoid figure (probably the most common modeling task in sculpting apps). It seems to me that using a polygonal modeling approach like ZBrush or Mudbox allows for much higher detail levels than we can get with the 'marching cubes' representation of voxels.

Yes i understand that the actual voxel data set still needs to be rendered, i was assuming some kind of cube or spherical primitives for each individual voxel. If you go to the Wikipedia page on Voxels, there is an image on the left hand side of the page which shows what i'm talking about:

http://en.wikipedia.org/wiki/Voxel

Does that type of representation require raycasting? I know that voxels and raycasting apparently work well together (at least much faster than using polygons) but maybe there are other methods that could be used?

There's no problem with using a polygonal modeling app for the fine surface detailing (other than having to invest in more expensive software). That's what i was saying before, if that's the way the workflow has to be for the time being i totally understand, i'm just curious if 3DCoat could really become a one-stop-shop for modeling with some improvements to the voxel room :)

Perhaps i have come across the wrong way in this thread, but i'd just like to repeat that i'm not attacking 3DCoat in any way - it's awesome software! I'm not accusing Andrews way of working with voxels of being inefficient, he clearly knows a hell of a lot more than i do about any of this! - i'm just wondering if there can be alterations made down the line that will allow for that extra level of final detailing within 3DCoat.

One more thing, there is the possibility of game engines using super high detail voxel volumes for world assets etc.. within the next few years or so (proabably when the next console generation arrives). I know that you could do the lions share of the work in polygons then convert that mesh to a voxel volume (exactly as we can do now in 3DCoat) but there will still be the need to finish of the fine details in voxels before you export to whatever format the engines will be using (SVO seems to be the best bet from what i have read). If that kind of technology takes off then we'll have to get around this fine detail issue one way or another.

I think polygonal modeling tools seem to be at the point of diminishing returns to some extent (ie: when you get to a certain level of detail, the work involved in going much higher does not pay off in terms of what the viewer would actually notice). Maybe it will just be a case of waiting for computer hardware to become powerful enough to allow us to work with larger voxel data sets, so we can match what is being done in ZBrush/Mudbox at the moment, i'd just like to know if there is any room for improvement before that time.

Link to comment
Share on other sites

  • Member

I'm still very new to this whole process of doing virtual sculpting, so forgive me if my question is not quite right.

If 3D-Coat uses voxels & it appears that there's a problem getting sharp details...

...then what's the difference with the voxels being used by Sensable's FreeForm & ClayTools? (aside from their cost difference to 3DC!!)

Looking at the examples of the models made with FreeForm, it would appear they have no problem getting sharp details...

http://www.sensable.com/industries-design-model.htm

When I bought 3D-Coat, I was really hoping that it's use of voxels would give me a "poor man's" version of ClayTools or FreeForm without the Haptic device.

So now I'm kind of left slightly confused as to why one program with voxels can do this & the other with voxels can't??

Curious to know what the answer might be?

regards Colin

Link to comment
Share on other sites

  • Member

I'm still very new to this whole process of doing virtual sculpting, so forgive me if my question is not quite right.

If 3D-Coat uses voxels & it appears that there's a problem getting sharp details...

...then what's the difference with the voxels being used by Sensable's FreeForm & ClayTools? (aside from their cost difference to 3DC!!)

Looking at the examples of the models made with FreeForm, it would appear they have no problem getting sharp details...

http://www.sensable.com/industries-design-model.htm

When I bought 3D-Coat, I was really hoping that it's use of voxels would give me a "poor man's" version of ClayTools or FreeForm without the Haptic device.

So now I'm kind of left slightly confused as to why one program with voxels can do this & the other with voxels can't??

Curious to know what the answer might be?

regards Colin

Hey don't worry at all, you have made a very good purchase decision with 3DCoat, i've taken a look through the gallery images on the sensable site and 3DCoat can EASILY match that level of detail. I think we just have a different definition of high details.

Just to be clear what i'm talking about in this thread is ULTRA-FINE detailing, the likes of which you can find if you go to the ZBrush website and look through their 'featured' gallery. I'm talking skin pore level of detail here. 3DCoat has really good mid-high detail, there is no issue there at all.

Link to comment
Share on other sites

  • Contributor

Looking at the examples of the models made with FreeForm, it would appear they have no problem getting sharp details...

http://www.sensable.com/industries-design-model.htm

There is not a single model displayed on Sensable gallery that have real highfrequency details.

The detailing capacities displayed on the 3DCoat gallery is of the exact same level.

Of course this level of detail depends on sculpting skill and understanding of resolution vs brush size.

Look at some of Tree321 work or Juan Carlos take on the Invincible character ;those were all made with very early builds of 3DC :) .

Those guys truly mastered voxel sculpting.

Of course if you increase a sphere to 3mil polys and start goofing around with big brushes you will find it clunky and sluggish.

But if you take a full week to understand how brush size/resolution relation works and you have drawing/sculpting talent you can achieve this level of detail easily

and for less than 300$..

I have a pretty ordinary machine and I get 60fps brush speed with appropriate brushsize on 20 million polys layers,and I can handle 4-5 of those layers (which means approx a 100 mil polys compositions) + I can add a countless amount of smaller res layers (ex: for accessories).

I dont feel any performance lag when I work but again its all a matter of understanding that brushsize/res relation,

because if I want i can also make 3DCoat choke for 3 hours in 20 seconds..

Link to comment
Share on other sites

  • Contributor

Brush size is the least of my concerns when I hit ENTER while in Surface mode, and then when you switch back from Surface to Voxels...maybe you can show a demonstration for everyone to see how we are all missing it but you, because everyone else...including Andrew himself, is aware of the lengthy merge times.

Brush size have DIRECT impact on surface-voxel conversion.

Brush size is what determine the time conversion its gonna take.

First,look at the demon Im working on at page 9 of the 3.2 update thread.

I work ONLY in surface mode.

The torso is 17 million polys.

I switch between Surface mode and Voxel mode every 20 minutes to refresh the topology.

This way I can keep on stretching the mesh forever.

(I dont use Enter thing I use the conversion cube icon...I need all Surface mode brushes :Chisel,Absolute brush ect..)

Conversion time from voxel to surface is ALWAYS below 1 minute.

I switch from vox-to-surf all the time.

It is because I use brush size that I've put as an example in the pic Im taking about

that my conversion time take below 1 minute instead of 3 friggin hours.

(I draw a dot showing the accurate brush size in the pic)

It is accurate brushsize to do detail on a 17 million layer.

If I use a bigger brush size and do even only 5 strokes the conversion time increase exponentially.

But I dont need to because I've efficently used the resolution I had before increasing up to 17 mil...

Look at Tree321 scupts and Juan Carlos work,did they ever whine on this forum about performance?

I guess Im the only idiot around.I think Im gonna spent less time on this forum and more time sculpting.It is surely gonna be a relief to you..

Link to comment
Share on other sites

  • Applink Developer

If you have over 40mil triangles in one layer that is not good. You should split your body into smaller parts Head-Torso-Legs-Arms.

To me your body looks very nice. Ready for Ptex maybe? I don't know a lot about 3d-coat. I just try to help..

Link to comment
Share on other sites

  • Applink Developer

I'm not quite sure but It seems that merging time works exp. to triangles number. Sorry, my english but I hope this table helps:

1 mil = Mergetime * 1

5 mil = Mergetime * 2

10 mil = Mergetime * 5

15 mil = Mergetime * 12

20 mil = Mergetime * 25

Very bad table but I hope you get the point. It is important to keep it in 1-10 range because it's much faster there.

In my worflow I always try to work with 1-5 mil per layer. And when the scuplt is finished then I add them together and

fix the seams.

Sorry Cube, this is off topic...

Link to comment
Share on other sites

  • Contributor

Well...I was just following what both Javis and Andrew advised, regarding the tip to frequently hit ENTER. Are you talking 20 polys or Tri's? What you're reading at the bottom is tri's, no?...at least that's the case in my UI.

20 Tris...3dc indicate polycount as tris.

Whenever you use Enter or Cube Icon...Conversion time is the same.

What matters is 2 things.

-Brush size.

-Number of strokes.

You need to write yourself a chart.

Use a 300 000 voxel sphere in surface mode(clone the layer a few time,its gonna help for testing).

Draw 10 strokes with a small radius with any Sf brushes ...SF.Clay for example.

See how fast is conversion time.

Now increase res.

Do the same thing while gradually increasing brush radius until you see abnormal conversion time.

You will,this way find bottleneck points.

Once that chart is made,you need to live by it.

Here are the rules Ive discovered:

Rule 1#Move brush and big Pose tool operations need to be done at 100000-500000 range.

It's voxels we are talking about...that 500 000 range is your battlefield.

You can do a TREMENDOUS amount of work with it.

All body,muscles,hair mock up,small organic tremulations even wrinckle hinting can be acheived within that range.

Rule 2#Nearly all voxel brushes sucks! Increase and Build brush are by far the worst.

Increase being the worst 3DCoat brush,its only good for cylindrical shapes like fingers,ears rim and it gets slow...before all other brushes.

Airbrush with sharp pen is still pretty cool.

3#Surface mode brushes rocks...especially Sf.Clay ,its Andrew's best brush.

(those are not really RULES,i dont want to sound like I got the truth or something...btw the name artman is based on novel character it has nothing to do with art or anything...but really,its the truth,if you make yourself that chart you will discover that you can comfortably add small hires details to higres layers with small brush size without any problems.)

About your Hobbit:

The body is hires enough now.You need to split the head now...

Anyway that guy is not gonna be naked,right?

I feel the head is two much hires now....maybe its just an impression.

But if the head is more than 1 mil then I think you should start using other brushes than the one you are using..

Once you are really happy with all the the details in the head you can increase to the 8mil-15 mil range.

Once There you only use very small brushes (Sf.Clay,voxel extrude with sharp pen to do wrinckles,Sf pinch to tone winckles ect...)

If brush is small and you got a computer as puny as me Fps and Vox-surf conversion time should be still very cool.

Skin Pores with extrude brush are still gonnaa be possible at a 10-15 mil range but definetely not micropores....

You cannot keep head and torso all together that is for sure.

You are still gonna be able to move nose tip,ear tip ect...but not big changes of head and body with move brush.

All this must have been to your liking earlier...

Ayway,hope that helps you finishing that character..

(3DCoat is not like Zb/Mb...Its more like a special 3D version of Photoshop+Alchemy(Alchemy the soft not the occult art) .)

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...