GSoC 2018 - Bevel Improvements

I guess we need a “remove doubles” modifier for non-destructive verticles merging, because it could be useful to apply it after other modifiers as well, and there is five years old task
For some reason it has low priority.


We absolutly need it !

1 Like

Apologies if this has already been discussed…


Merging verts that bump into each other is something I’ve been putting off, since it is surprisingly hard to do in C code in the general case (the remove doubles code goes through some contortions). And I hesitate to always run removed doubles afterwards because it might merge some unintended things in the rest of the model. So I’m leaving this to my planned (but not imminent) work on generally handling the case where geometry bumps into other geometry during bevel.

We talked some about the non-uniform scale problem among the devs. It is less straightforward than it seems that we should do it, so in the end we decided not to, at least for now.


maybe I miss something about your video but if you do ctrl shift B with merge option activated you have the same result?

1 Like

Non-destructive > modifier !

Ok Howard, thx for the answer :wink:

this would provide and elegant and fast way to solve many normals issues


It would be possible to add such an option. Not right now, as we are in feature freeze for 2.80 and anyway I’m working on another part of Blender. Maybe could be done as part of this year’s GSoC if the proposed project gets done early.


Ah, that sounds awesome that there are peripheral solutions to some modeling instances such as this planar surface inset case. Very handy for quick cleanup of the kind of geometry that the text creates once converted from text to mesh. :slight_smile:


there were more refinements to the 3ds max Chamfer (Bevel) with the yesterday incremental update of Max

it builds on the previous chmafer updates from 2020 release

Seeing these I thinking more and more that this has to be some of the most intricate part to work at, it seems such a complex task and one cannot ever say that there are enough improvements done to the bevel.

I think inseting was already discussed here but what about others improvements. Can Blender come with something similar ?


Thanks for posting these. Interesting to see what other people want/provide in terms of Bevel (Chamfer).

I was just playing around with the custom profiles widget and realized I could manually make support loops with a profile like this:
It should be easier when I add the ability to sample along curves. But it’s pretty fun how flexible it is already.


If you end up with extra time in your GSoC project, you might provide a bunch of preset curves that users could choose from, to save them from drawing them. And providing one like this would likely be very popular. Though of course another way would be to have a checkbox for “support edges” that behind the scenes generated a curve like this for the user, rather than making it seem like a custom profile.

It might be fun to solicit profiles that people would like as presets on your GSoC 2019 thread (without promising anything). We should try to get what people really would use rather than just “here are the presets that application X has”, for several reasons.


The fulll of joy ! can you show us some image results

I agree, it would be great to collect profiles for presets. And I think presets would really make the feature so much more useful! Ideally we could do this after the drawing widget is working better, because it’s a little frustrating to edit curves right now.


Could it be possible to not have a bevel on the edge when we come on the line?

Unwanted result

Wanted result

Tell me if it’s possible, please :wink:

A video for explanations.


oh man, it would be so cool and would put behind so much headache with those issues!

1 Like

I’m getting back to basics here. Could anyone give me a reason why there has always been this issue with beveling sharp corners (oblique angles) in blender? The only workaround to the non-round looking bevels that occur with sharp corners is to change the profile amount to something between 0.35 and 0.45 but is a bit annoying because it means I have to bevel the sharp corners separately.

The circles are for reference, and they show what to me an ideal bevel would look like.


This is a choice I made at the beginning about how to handle bevels between faces that do not meet at 90 degrees. The way Blender does this is to always make a profile that is a quarter of a circle (or quarter of a superellipse, if the profile parameter is not 0.5). Then if the faces don’t meet at a 90 degree angle, a transformation is applied that takes the 90 degree angle into the actual angle. This gives the effect you note in your diagram.

The alternative you show looks easy but is actually not so easy. What you are doing is inscribing a circle in the angle and noting where the circle is tangent to the two enclosing edges, and then using an arc that is that percentage of a circle rather than a quarter circle. The problem is: what if the tangent points don’t match where the bevel wdith parameter says they should be? With circular profile and a non-percentage width type, it will work out ok. Admittedly this is a very common case, but what to do in other cases?

I suppose we could add an option to try that way. Do other users feel this is an important option to have?


With this option bevel would definitely be much closer to some common real world use cases, like using router bits of a certain size or rounding edges of different shapes to the same radius.

I’ve actually run into a similar situation a few times before and I didn’t even think to try with the bevel tool!

The trouble seems to be with each new option it makes all the other options harder to access for people who aren’t familiar with the tool.

I wonder if there could be presets for the bevel operator options, that would be pretty cool!

1 Like