Age | Commit message (Collapse) | Author |
|
|
|
Auto-merge caused all edges between selected vertices to be selected.
This only makes sense in vertex-select-mode.
Correct edge-flag merging code, which now merges flags from multiple edges.
|
|
Short story: draw_lamp would add itself to delayed transp drawing list from 'xray' drawing step.
This was broken, since delayed transp drawing list is always handled **before** delayed xray one.
After undo it lead to segfault crash, v3d->afterdraw_transp still having reference to old freed scene's base.
Also added asserts that those afterdraw list are empty at end of drawing step, should help
avoiding that kind of issue in future.
|
|
D1988 by @wisaac, with own edits and improvements.
This improves on existing tangent calculation functions too.
- BM_face_calc_tangent_auto: Chooses method based on number of sides, used by manipulator (not exposed to Python).
- BM_face_calc_tangent_edge: from longest edge.
- BM_face_calc_tangent_edge_pair: from longest edge-pair (most useful with quads).
- BM_face_calc_tangent_edge_diagonal: edge farthest from any vertex.
- BM_face_calc_tangent_vert_diagonal: vert farthest from any vertex.
Also optimize BM_vert_tri_calc_tangent_edge* functions to avoid sqrt.
|
|
sense when no preview is available...
|
|
|
|
|
|
Stipple isnt left on during object drawing
|
|
Also add utility functions: GPU_basic_shader_bind_enable/disable
so we don't have to get the previous state every time and manipulate it
|
|
The purpose of the patch is to replace deprecated glShadeModel.
To decrease glShadeModel calls I've set GL_SMOOTH by default
Reviewers: merwin, brecht
Reviewed By: brecht
Subscribers: blueprintrandom, Evgeny_Rodygin, AlexKowel, yurikovelenov
Differential Revision: https://developer.blender.org/D1958
|
|
Drawing a single stick bone set the alignment to 1, applying this setting to the rest of Blender.
|
|
|
|
|
|
It's still not completely working - there are still some glitches - but far better than before.
To make buttons of the uiList work, you have to add a 'check' callback to the operator that invokes the menu. Only if it returns True, the uiList gets refreshed. To avoid this we have to make the region refresh tagging in the entire button handling a bit smarter.
Changes I had to do:
* Call uiList handling from menu/popup handling if needed.
* Make uiList handling use special popup refresh tag if placed in menu.
* Allow popups invoked from py operator to tag for refresh by using operator 'check' callback.
* Tag popup for refresh when resizing uiList.
Mostly fixes T48612.
|
|
|
|
|
|
|
|
Don't store maximum length of text per undo step,
or attempt to pack all data in a single array.
Was storing 32766 characters per undo step, irrespective of actual text length.
|
|
|
|
|
|
Looks like a line was forgotten in the 'BOTH' case in code...
|
|
The basic shader needs to be temporarily disabled in this case.
Add macros for temp store/restoring the state.
|
|
The Shift key can be held while adjusting profile to make finer changes
to the profile (just as it already does when adjusting offset).
|
|
Being granular means we need to re-build depsgraph a bit more often..
The issue was caused by rigidbody requiring some special nodes to
handle physics which were not created with just tagging object for
update.
|
|
|
|
|
|
FCurve evaluation depended on FCurve.curval, which isn't threadsafe.
Now only use this value for debug display,
and pass the value instead of storing in the FCurve for all but debug-display.
|
|
This covers the following workflow. Animator will disable Update All 3D views
in order to get quick playback in a particular 3D editor. However, it also
handy to see playback in all editors and image editors to see comparison of
animation and reference footage.
So the idea here is to refresh reasonable editors when playback is invoked
from animation editors.
Commit to make Hjalti happy.
|
|
- the name of the enumerator `SNAP_NOT_OBEDIT` was changed to `SNAP_NOT_ACTIVE`.
- the parameter `snap_to_flag` was moved to outside `SnapObjectParams`.
- the member `use_object_edit` was renamed to `use_object_edit_cage`.
- added the arg `params` in `ED_transform_snap_object_project_ray`.
- simplifications in the loop of the function `snapObjectsRay`.
|
|
Introduced in 0b5a0d84, thanks to Brecht for spotting.
|
|
Using double pixel size prevented 1px brushes
D2044 by @jeske
|
|
Moving ownership of the string to the button's 'rename_orig'
leaked when the button didn't have a uiAfterFunc.
|
|
|
|
|
|
Set the maximum soft-max to 1.0 when its left at FLT_MAX.
Since this causes problems using the slider.
|
|
Use center of selection when using absolute grid snapping and cursor pivot.
|
|
|
|
Previously a whole mesh was stored between undo steps,
This commit uses BLI_array_store to de-duplicate memory use between undo steps.
Memory saving depends entirely on kinds of edits performed,
in own tests 5x-15x less memory use is common.
Compacting the memory does give some overhead however its done in a background thread
so its not blocking in most cases.
New behavior and threading can be ifdef'd out to check for regressions.
See D2026 for details.
|
|
|
|
flags have been set incorrectly
Sometimes the autokeying flags don't get set correctly (i.e. the "mode" flags
used for 'Add + Replace' vs 'Replace Only' aren't set), meaning that the old logic
would always fall through to the "replace only" case. When this happens, the resulting
behaviour can be quite strange and hard to debug. This fix prevents problems like
this from continuing to be an issue...
|
|
Not sure why, but ANIM_animdata_update() totally ignored NLAStrip type of bAnimListElem.
For now only added support for ANIM_UPDATE_DEPS type of update, don't know whether
others are needed in this case or not... time will say.
|
|
Fix suggested by Daniel Rivera.
|
|
improved: add support for bone tail export/import using Blender Collada profile
Differential Revision: https://developer.blender.org/D2031
|
|
|
|
New code using loop/finalize model is about 45% faster (from 4.4ms tp 2.4ms per frame,
overall playback of single shot in sequencer in this preview mode goes from 40 to 45fps).
|
|
This way we can have border rendered part in the viewport and have
everything else material/texture shaded.
|
|
This way it is now possible to toggle between material and rendered shading
while previously rendered viewport will always go back to solid shading.
|
|
|
|
Nothing was shown in UI during pre-bake step, while it can take several minutes
to complete with heavy geometry.
|
|
Usage:
* D+X - Works anytime, anywhere
* Shift-X - Works in EditMode only
* Via Delete Menu - EditMode only
Often doing video tutorials or perhaps during dailies/shot review you want to
quickly get rid of a quick scribble you made for making a point, without having
to undo (i.e. maybe you edited some objects in between) and/or without having
to use the eraser (i.e. it'd take too long to cover the entire area).
|