Jump to content
3DCoat Forums
Andrew Shpagin

Brushing improvements

Recommended Posts

Version 3.7.11B win 32 non-cuda

I am restating these two problems as I have not seen any statement about them, though they could be in the process of being worked on.

The inflateClay brush does not stamp the alpha clearly with the new brush routine and you lose detail as the brush gets smaller. This brush was a major brush for stamping small details into your model. Picture is again shown.

Second is the LC brushes have a pulling negative effect on thinner parts of your surface mesh. Shown in video, third post from the top on this page. This problem makes it very hard to use the LC brushes in thinner areas of your mesh.

Some LC brushes are effected more some less... The general brush seems the most effected by this problem.

post-518-0-92688200-1338314306_thumb.jpg

Share this post


Link to post
Share on other sites

Hey guys,

I am trying to sculpt a flat surface but I am met with brush issues. First off most of the LC brushes sometimes will have a bumpy "dirty" trail after a stroke and the smoothing still seems to have a hard time with small bumps. I am also met with an issue I cant really explain so I am going to post some screen shots of it. Its almost as if the brushes are treating my flat surface as a round surface. I also noticed (you may notice it in the shots) that the radius of what the brush is affecting seems to be muuch wider then what I am seeing from the display. In the shots I am using the Flatten Clay brush. I am also seeing on the bottom of my screen "NonUniform". Not sure what that means or how to fix. I have tried cleaning memory and a few other options but nothing seems to make that go away. The model I am working on is made from 3D coat primitives.

I am using v3.7.13 GL NON CUDA 64 bit (DX did the same thing)

post-3521-0-05987300-1340688586_thumb.jp

post-3521-0-53964100-1340688591_thumb.jp

Share this post


Link to post
Share on other sites

Non-uniform is no good, its a warning, the reason for the red color...

What causes it is that you have scaled a model along just one axis, This is fine too do but under the vox tree you must select "To Global Space" once you complete your transformation.

Share this post


Link to post
Share on other sites

Hey thanks for telling me about that as that fixed a lot of the issues I was dealing with. I figured since it was red it probably wasn't good but I had no idea just how bad it really was. Out of curiosity, do you know what it means when an object is uniform/ non-uniform?

Share this post


Link to post
Share on other sites

Voxels are based upon a marching cube order. Voxels are closer to pixels than polygons as they are a 2d repersentation of a 3D object.

A photo pixel is square so is a voxel cube. If you stretch a voxel cube along one axis it is no longer a square cube. (non-uniform space)

That is the reason when your importing a model for voxels, you want to increase the resolution for more details.

A 4000 x 3000 pixel photo is going to have much more detail / color information than a 640 x 480 pixel photo. Same with voxels...

Now since surface mode is polygons, I do not know the reason it effects it there. A guess would be since voxels need unifom space and we are jumping back and forth between them, we need it to stay uniform... Part of the internal workings of 3DCoat...

Share this post


Link to post
Share on other sites

Aethyr,

BeatKitano has just posted a reply to a topic that you have subscribed to titled "Stroke over Cavity/Hole - Advanced Off Axis Controls - Advanced Interpolate Options".

----------------------------------------------------------------------

Do you mind reposting this in the brush improvement (http://3d-coat.com/f...opic=9792&st=60) thread ?

Useful comment.

----------------------------------------------------------------------

The Original topic can be found here: http://3d-coat.com/f...view=getnewpost

---------------------------------------------------------------------------------------------------------------

Stroke over Cavity/Hole - Advanced Off Axis Controls - Advanced Interpolate Options

This would provide an option to tell 3dcoat in it's various modes that I don't want the brush/vertex to "Jump" from a near surface to a far surface and would save me from breaking my undo button if implemented. An example is a hair voxel sculpted object (see attached movie) where the hair is volumetric. I draw hair follicles with the muscle tool. When painting on the outside front and then passing over a "cavity/hole" it will draw a line from the front to the inside back.

I've messed around with the paint on a plane option and it simply does not offer enough "tolerance along the off axis" to allow my stroke to still move in and out and behave as it should. Let's say for example I want to allow the stroke to move inward/outward when it hits the slope or a cavity/gap but only by a small margin or strictly adhere to the existing nearby surfaces sloping. This would greatly enhance the control over the off-axis (3rd axis not available with a 2D input device). This could be achieved as an advanced interpolate option by using an sampled average of the nearby vertices/voxels surface causing the brush to maintain an average location along the surface.

Here's how I think it could work:

Beside the Interpolate settings put a small icon button that opens a rollout. (This rollout will allow you to customize the options for this feature.)

The possible options on this rollout include:

  • Auto-Averaging (Samples nearby vertices/voxels inside the AoS for "off axis" values. [Checkbox which enables the AoS options and disables Custom Tolerance options.])
    • AoS "Area of Sampling" (This would be a sphere, not a circle, in terms of what is sampled. The sampler when in automatic mode would test nearby vertices/voxels within the AoS and adjusts the "off axis", to match the average of the sampled nearby surfaces. This would allow for the off axis of the stroke to match the curvature of the nearby hair follicles but ignore the far side since it would not be inside of the sphere sampler area. [Brush Radius Sphere Preview in work area at last strokes location and slider with numeric input on menu the same as a normal 2D brush but an independent value from the actual brush allowing for a larger sample area than size of the brush.])
    • Fall-Off Slope (A setting to allow the AoS to have custom fall off values for controlling whether samples from the center or from the outer edge have a greater impact in determining the final slope of the brush stroke. [A bezier curve with numeric input much like Photoshop or standard fall off curve.])
    • Offset (A setting to allow a positive or negative value to determine how far in or out the stroke should be from the absolute center/middle of the averaged surfaces. This would allow to paint on, outside or inside more when sampling a thicker or thinner object such as in my hair example below. I may want the follicle to follow the closest surface and sit on top of it or below it rather than at the absolute center of the nearby surfaces.) [-100%/+100% slider with numeric input.])
    • X-Squash/Y-Squash/Z-Squash (Changes the size and essentially the shape of the AoS to sample across a wider area, deeper area or taller area. [Sphere icon with arrows pointing along each axis with 3 input fields with a range of 0-100%.])

    [*]Custom Tolerance (Value from 0-100% where 0 means no movement along the "off axis" much like how Draw over a plane works currently and 100 means no limit to the movement along the "off axis" or the way it behaves currently by default as shown in the video. [Slider with numeric input on menu.])

    [*]Sensitivity (Sampling rate adjustment for a performance/quality enhancing option. [Slider from Course to Fine using what ever values are deemed appropriate.])

    [*]Smoothing (Smoothes the sampled values to provide a cleaner curve to the stroke this would be your basic interpolate value if you wanted to group it within the menu [Current Interpolate Option.])

The other feature would be to ignore backfaces in retopo mode when using the "add/split" tool. For example often I will be clicking out a face and have it actually put the vertex along the wrong side of the voxel surface when doing double sided objects that already have one side of faces and the other side only the voxel work area. Essentially the same feature as above but customized just for vertex mode of retopology tab to keep the sampler from going crazy with what part of the surface it decides to sample.

There should be a video above this line. It has vanished twice from this thread I don't know why. If it is not here please refer to the above linked thread for the video example.

Share this post


Link to post
Share on other sites

Hey guys,

I am trying to sculpt a flat surface but I am met with brush issues. First off most of the LC brushes sometimes will have a bumpy "dirty" trail after a stroke and the smoothing still seems to have a hard time with small bumps.

If you are making hard surface objects in 3D-Coat, I recommend using other 3D-Coat tools instead of brushes. For example use Boolean type operations such as the Carve Tool with "Invert tool action" checked and then use the rectangular selection method in the E panel or the curves method. You can get very clean straight cuts on your model this way. I also recommend creating object shapes on one voxel layer and then right click on the layer and choose "Subtract from..." or "Merge to..." from the pop-up to get clean additions or subtractions from your model. Kitbashing techniques are also good for hard surface

In general I feel the brushes are just not very good for hard surface stuff (although they are improving as time goes on).

Share this post


Link to post
Share on other sites

Stupid question but is there any need for so many brushes? I mean in the voxel menu is there a need for the build and airbrush. I dont really know what the difference or why you would use one over the other. Its the same with some other brushes in the other menus.

Share this post


Link to post
Share on other sites

Maybe we should look at this a little differently then. If we break the tools down into there most basic forms, Brush, Move, Muscle, etc, etc. We could then have several diffrent options for how these tool will behave that can be saved as presets. Exp: the Brush tool would have several modes, airbrush, build, clay, mud, etc etc. There would have to be a base set of presets available by default but it would condense functionality and would lean more on the preset system to organize the different tool functions. Not sure this would make a huge improvement but it would be a nice step toward modularizing the different functions that make up the current brushes.

Share this post


Link to post
Share on other sites

If you are making hard surface objects in 3D-Coat, I recommend using other 3D-Coat tools instead of brushes. For example use Boolean type operations such as the Carve Tool with "Invert tool action" checked and then use the rectangular selection method in the E panel or the curves method. You can get very clean straight cuts on your model this way. I also recommend creating object shapes on one voxel layer and then right click on the layer and choose "Subtract from..." or "Merge to..." from the pop-up to get clean additions or subtractions from your model. Kitbashing techniques are also good for hard surface

In general I feel the brushes are just not very good for hard surface stuff (although they are improving as time goes on).

Hey thanks for the tip! I recently have been getting more comfortable with the carve and various curve options. I do agree that for the most part the brushes are not very good with hard surfaces. However, the flatten clay brush seems to be pretty good at times.

Wouldn't it be cool if we had a sort of "revolve" option for some of the curves for the carve tool? I noticed you can save and edit curve points on the "closed spline" option. A revolve option would be cool if someone wanted to create lets say a scope for a gun or an hour glass.

Share this post


Link to post
Share on other sites

Well IMO, there's too many brushes.

But I honestly can't say which one should be removed. The two you mentioned are radicaly different for instance, you may not see the practical use but build extrude continuously as airbrush just build surface by increment with a limited cap per stroke.

You see that's why I'm not sure removing tools is the right way to go as some user may not see an use for some of them but they still hold value to others.

What I do believe though is that some brushes could be merged with others with options. And some could be made invisible by default for clarity(reminder: you can do it manualy right now).

That way the user can choose, which is not possible with complete removal.

I also believe that at some point Andrew will have to choose how he wants the brush toolset to be used. We could definitely go with a fewer set of brushes and offer premade preset to fill the gaps. I think in the end the current tool tray could be some kind of tool repository and the preset panel be the user tray for weapon of choice :)

I used to use the build quite a lot when I did use this, but it doesnt seem to behave the way it used to. When I use build now it shoots off miles above the model. Cant see how that is very useful.

I mostly use Sculptris now though because I prefer its behaviour and simplicity. The move tool doesnt behave as good as in sculptris, you have to pick the right alpha. Thats another thing I think the brush's should all work without the alphas.

Giving people tons of options doesnt help new people to learn the software. I dont know though Zbrush has tons of brush's. Maybe the names could be more descriptive and tooltips explain better.

I want to use 3D Coat but its confusing, the behavours of brush's dont feel as good as sculptris.

Share this post


Link to post
Share on other sites

Hey thanks for the tip! I recently have been getting more comfortable with the carve and various curve options. I do agree that for the most part the brushes are not very good with hard surfaces. However, the flatten clay brush seems to be pretty good at times.

Wouldn't it be cool if we had a sort of "revolve" option for some of the curves for the carve tool? I noticed you can save and edit curve points on the "closed spline" option. A revolve option would be cool if someone wanted to create lets say a scope for a gun or an hour glass.

Create the profile of the scope or object you want to create (using Splines, for example and hitting ENTER to make a voxel object from it) and use the Warp tool to to make it wrap around a center pivot. It works just like a LATHE tool/modifier would in a typical 3D App. Great for creating tires with tread, too.
  • Like 3

Share this post


Link to post
Share on other sites

Create the profile of the scope or object you want to create (using Splines, for example and hitting ENTER to make a voxel object from it) and use the Warp tool to to make it wrap around a center pivot. It works just like a LATHE tool/modifier would in a typical 3D App. Great for creating tires with tread, too.

Genius idea!

Share this post


Link to post
Share on other sites

I also noticed the zig-zag behavior of some of the LC brushes Michalis talked about. In fact it effects all brushes, voxel, surface and LC.

You will not really notice the behavior till you have a large falloff set and a slower brush speed. It is like the stroke is flip - flopping direction. Faster strokes seem not to be effected by it.

Video coming in the next week..

It could be tablet related hand jitters in that at a slower brush speed an input is sent from your tablet that you are changing stroke direction and 3DCoat starts to flip the stroke to follow what it thinks is a change in direction and then flips back as you continue the straight slower stroke. Some improvement if possible in how the inputs from the tablet are handled at slower speed strokes so the flip-flopping is minimized.

Now we have a form of Lazy Mouse (Zbrush) with the Interpolate feature to help with hand jitters and It does help your slower brush speed work but maybe some refine improvement to the interpolate routine could be made for you slower speed fine detailed brush work also...

Share this post


Link to post
Share on other sites

Hello...

sorry to use that thread... but for the paint room, when using the clone tool, no matter what brush or the falloff value, I always get hard edges... is there something I am missing.. or is it mandatory to use a pen and tablet...?

Just curious..

h/

Share this post


Link to post
Share on other sites

UI improvements tempted me to give 3D-coat another spin. May as wel post some of my findings.

I am finding the surface brushes themselves like draw and rapid2 to be very fast and smooth (no remove stretching enabled obviously) even on heavy subdivided geometry.

I am liking rapid2 quite a bit although tweakable parameters are lacking. I am surprised there are four hardcoded brushes that all seem to be based on the same principle. Rapid, rapid2 (smooth version), mud (rapid with inbuild noise?), mud2 (smooth verison). Why not create a brush Type instead and have these variations as presets. The differences between these brushes are presumably in settings anyway.

Did notice the "flatten" curve and it being different for the rough and smooth versions respectively. Could use a bit of explanation on that one since its not completely clear to me how it functions.

I feel like rapid2 is very close to the clay in zbrush but it probably needs a tweak on brush embed which currently is not exposed. Currently it looks like its exactly in the middle and this means it sticks out alot when used on sharp edges. This is counter to the clay brush idea which should give you the ability to easily "refine" and "clean" surfaces (while building them). Look up imbed value in Zbrush. Rimmason actually drew it out for you back in the v3.0 days (2008):

http://3d-coat.com/f...findpost&p=9088

Do these brushing improvements apply only to the surface brushes or do they also extend to liveclay? Even when I set the detail value to zero (which toggles liveclay off as far as i can see) and turn of a few other settings I cant seem to match the speed of pure surfacetools. Is the liveclay general brush profiting from these improvements? Also I hope to see a rapid2 equivalent for lc in the near future. The liveclay brush itself does not cut it.

Regarding liveclay in general. I hope you are not leaving the development of liveclay up to Raul with no internet in Cuba. It has been months since any serious additions have been made to it and its nowhere near finished. Please dont let this sculpting tech remain unfinished and unpolished. Please...

3dioot

Share this post


Link to post
Share on other sites

Dam, I never saw those I think. This small graphic just explain exactly what we need to make a complete flatten/raise brush (currently it eats the surface, you can't "cut below a certain level" or "raise to a certain level with invert". It's called inbed in zbrush and it's extremely useful.

Zbrush inbed in action on a flatten/raise brush. 3dcoat has an almost working of the primary function: flattening surface by eating surface. But you can't raise surface like here:

flattenraise.gif

Share this post


Link to post
Share on other sites

Dam, I never saw those I think. This small graphic just explain exactly what we need to make a complete flatten/raise brush (currently it eats the surface, you can't "cut below a certain level" or "raise to a certain level with invert". It's called inbed in zbrush and it's extremely useful.

Zbrush inbed in action on a flatten/raise brush. 3dcoat has an almost working of the primary function: flattening surface by eating surface. But you can't raise surface like here:

Yeah in Flattenclay it is called "pull faces",this brush is result of interaction between me and Raul..it works well but on some angles or if there is a bump on the surface sometimes it will create a V shaped dent that is impossible to flatten...

it also works by "massaging" the mesh instead of actual strokes,so its less intuitive

...also performance gets very bad at higher level,even at low details values.

Once he gets back I will try to get it improved.

But really with a low value MUD2,Fill and Tangent smooth any sort of Flattening can be acheive on any sort of surfaces...I will make tutorial on flattening once preset switching is fixed.

Share this post


Link to post
Share on other sites

Yeah in Flattenclay it is called "pull faces",this brush is result of interaction between me and Raul..it works well but on some angles or if there is a bump on the surface sometimes it will create a V shaped dent that is impossible to flatten...

it also works by "massaging" the mesh instead of actual strokes,so its less intuitive

...also performance gets very bad at higher level,even at low details values.

Once he gets back I will try to get it improved.

But really with a low value MUD2,Fill and Tangent smooth any sort of Flattening can be acheive on any sort of surfaces...I will make tutorial on flattening once preset switching is fixed.

Pull faces just doesn't cut it for me (and not because it's bad it just needs an imbed function in there). Here's a simple example in both zbrush and 3dcoat, look at the result:

FlattenClay (see the bumps):

flattenclay.gif

TrimDynamic (very mecanical but very uniform):

trimdynamic.gif

As for using the mud2, fill (which looks much more like trimdynamic with invert on) and all, yes I agree, but those are workaround. In zbrush I only need Trim Dynamic and smooothing for cases when the stroke is not clean enough. It's MUCH quicker.

[Edit] Lot of banding in the zbrush gif, the final result looks like that:

trimdyn.jpg

Share this post


Link to post
Share on other sites

yeah,its a "massaging" brush you need to make circular motions with it,not strokes.

I recon its not really convenient

.Also you must not set higher depth values...it works best at 10-20% otherwize it add/remove too much matter.

But as you can see I didn't put it in my presets :)

I still think Raul was going in the right direction tough,its hundred times better than previous LC flatten..

I really use Tangent smooth+Reduce to do all my flatten jobs Im starting to get really good at it,I will show tutorial once preset freezes are gone.

I pinch the borders then TS smooth again little inside the flattened area to get rid of Pinch stretches

To me actual SF Flatten and TrimDynamic are exactly the same...they are both really violent clipping brushes.

my dream is to get Polish D brush in 3Dcoat(especially in negative mode)

...it was what i was trying to do with Raul on the Flattenclay...but I think its gonna be a little harder.

Its better than before but it nothing like Polish D brush.

I'll wait once he gets back i will try to be more descriptive and send him a good "problem" file to flatten.

Share this post


Link to post
Share on other sites

Hi,

I feel that since 3d coat is so flexible, there is no reason why it can't be the go to program for hard surface sculpting. So, there is this program by sensable technologies, I'm sure you've heard of it, its called freeform, that appears to be a voxel based program, but oddly enough requires a haptic device. Because of this I'm sure most people have and never will try their software. 3d coat is a much more refined in almost every way, but there are some tools for hard surface, that I'd like 3d coat to emulate. They are curves that force the voxels to conform to their contours and can be seen in this video:

I'm not sure to what extent these tools can be emulated in 3d coat, but something to this effect would be great,

thanks,

-Josh

Share this post


Link to post
Share on other sites

×