Page MenuHome

Bevel weight: unable to set exact parameter
Closed, ResolvedPublic


Linux Xubuntu 13.10, x64, kernel 3.11.0-15-generic
AMD Radeon HD6850 1Gb

Blender Version
Broken: 2.69.11 77290fc

Short description of error
When you input a number in the bevel weight field, Blender changes this number to something else. From my understanding it happens because internally bevel weight parameter has 8 bit precision or 0-255 range, but bevel weight number field shows it as 0.000 to 1.000 range. So for example when you set it as 0.5, Blender first accept this number, but later when you quit edit mode, it convert it to 0.498. Such behavior is inconsistent and very confusing for a user. Also it makes precise beveling difficult. Blender should either use exactly inputed number or not accept invalid input. The solution here I believe would be to change internal precision to 0.000-1.000 range or change bevel weight number field field to 0-255 value slider. This problem also appear when you use Edge Bevel Weight through Ctrl+E menu.



Event Timeline

Sergei Smyslov (Luarvik) set Type to Bug.
Sergei Smyslov (Luarvik) created this task.
Sergei Smyslov (Luarvik) raised the priority of this task from to Needs Triage by Developer.

Committed change to hide this odd rounding rB6c32192850357be2df171fd384c06678c0f57121

This is just a side effect of having bevel stored as unsigned byte - but using a float for storage isn't really justified just to resolve this UI glitch,

@Campbell Barton (campbellbarton)
Thanks for a quick fix!
But doesn't it mean that now display precision of bevel weight number field is unnecessary lowered more than twice from 0-255 range to 100 units range (0.00-1.00)? Wouldn't it be much better to rather switch it to 0-255 value slider? Please, if you don't want to increase internal precision, then at least don't lower the display precision in number field. I am saying this, because this amount of precision is really important in my work.

OK, after making some research on this topic I realize that value slider was a bad idea as it doesn't have arrow widgets to change parameter incrementally. I still think though that reducing the precision in already low range of ubyte bevel weight parameter was not a good solution either. I agree that a float storage would be an overkill, but would it possible to change it at least to double byte precision?

@Campbell Barton (campbellbarton)
Hey, I know you're probably very busy with bug fixing for 2.70 release now, but are there any chances to get your feedback about my last question?

It's been almost two months since my last comment...
2.70 is long released already. And still not a single word of reply to my questions/suggestions.
Campbell, I must say the lesson for me here is that with constructive and friendly approach I only get zero response. I'm sorry to say this, but it seems to me you rather respond to those who blame developers with having too big ego... Such attitude is quite discouraging for any efforts to help with bug reporting and other things.