Thanks to Thomas Raab (fando) for this patch.
This patch fixes the arrow showing whether nodes are expanded or not, and includes a fix for the other icons getting scaled twice.
* no longer a modal operator now, that was useful when it was part of
the loopcut macro but is no longer the case, and should have not
affected regular edge ring selection.
* don't fall through to loop select in face mode, that is bad 2.4
behavior, just use alt+rmb if you want to loop select.
* fix error number of cuts error print, missing select mode flush, and
use more accurate notifier.
- IK-Solver interfaces were still converting units from degrees to radians. Made these all use radians now.
- Tried to fix the DOF limits drawing. This is still not totally functional again yet, but at least there are visible lines now.
- near clipping is not used to clamp minimum zoom level in ortho mode.
- view selected applied to a single point (no bound-box volume) just moves the view rather then zooming in.
for sintels face view selected didnt work well for eg: selecting a face at the mouth and zooming in.
If you have some bones selected, and then hide their layer, they would stay selected + visible even when you make another selection. Now, they are hidden and are no longer visible when they aren't on visible layers.
Currently, this is only done if the channels are being filtered by visibility, but this could easily be changed to do without this check. Will see how this goes after some production testing. :)
- Number of multicuts can now be set (only usable for multicut mode)
- Midpoint cutting is now done using shift-k + drag hotkey mapping
These were just minor properties changes, which shouldn't be too much of a hassle for BMesh merging.
Only recalculate changes when absolutely necessary (mouse move triggers a soft recalc that will only happen before the next redraw other events trigger hard recalcs). The problem was that mouse moves are reported as lots of events (with small dx,dy) between each redraw which would trigger often heavy recalculations every time while only the last one was really important (the one before the redraw).
This makes snap project (retopo) much more manageable but induces a very small lag equal to one refresh cycle. Confirming transform does a hard refresh, so the final result is always consistent with mouse position.
This commit adds a check that should prevent crashes of the kind that were occurring in the report description from happening.
However, I couldn't verify yet whether this really works, since it appears the bug has temporarily disappeared in recent svn. Just in case, I've committed this fix, and we can revert/improve if the bug returns.
Thanks to a great doc from Bassam (slikdigit) on the different types of handles (which should probably become/be part of future 2.5 docs), I've revised the code again so that this works well again.
The doc:
http://docs.google.com/View?id=dvgkxj6_1d8cpfw79
Todo for Campbell:
- Make menu context sensitive
- Make menu automatically run the operator if there is only one option
Note: Saved configurations and keymaps with references to "Extrude and Move" operator needs to be updated to either call the menu or one of the new extrude macros.
The problem was that wmPushMatrix/wmOrtho/.. and similar functions did not
work well for offscreen rendering. It would have been possible to make a
fake subwindow for this, but I decided to just remove this extra layer as
it does not seem to have much purpose and has been quite confusing when
trying to fix other bugs. The relevant matrices are already stored in
RegionView3D so there will be no increase in calls to glGetFloat, which may
have been a performance reason to use this system in the past.
Fixed the operators for DopeSheet/Graph Editors responsible for setting the "auto-clamped". This option is actually per F-Curve instead of per handle, and the code here should function like it did in 2.4x
However, despite this, it still appears to work oddly IMO. Any comments Bassam or animators familiar with the intentions of this?
were cached once at the start, but these can change when modifiers are
executed, now it simply doesn't cache them anymore, that was only really
a performance bottleneck when it was caching individual vertices.