Commit Graph

56574 Commits

Author SHA1 Message Date
Campbell Barton
497a26665c Knife: double clicking now closes the loop 2014-11-16 12:59:47 +01:00
Joshua Leung
f0a2e714b3 Fix T40372: Slow Graph Editor drawing
For FCurves where all the keyframes use the "simple" interpolation types
(i.e. Constant, Linear, and Bezier), we now use the old FCurve drawing
code that was used prior to the Easing Equations changes. This should
be generally faster in general.
2014-11-16 23:32:56 +13:00
Joshua Leung
63ec900af9 [T40792] Optimisations for FCurve Drawing - Lower sampling precision when "High Quality" drawing disabled
When the "High Quality Line Drawing" option (View menu) is disabled,
the sampling rate (i.e. the size of timesteps to use when sampling
the FCurve for drawing it in most cases now) is set to be quite low
(i.e. at 0.1 frame increments). This amounts to at most 10 sub-steps.

In one test file (with a wide window), this had the effect of improving
the performance by over 3x. It's still not as good as a sampling-free
approach, but for this functionality is still needed for FModifiers,
so it's better that we can optimise this.
2014-11-16 23:32:55 +13:00
Joshua Leung
38f2f4c564 [T40372] FCurve Eval/Drawing Optimisation: Skip Bezier handle eval when all handles are flat
Small optimisation (which shouldn't have much of an effect) where we skip
complex handle calculations if all the handles/verts for a Bezier curve
segment are all flat.

Patch by Campbell (T40372 -> F91346)
2014-11-16 23:32:54 +13:00
Joshua Leung
a39100cf1d Code cleanup - Typos and separating out assignment from for-loop header 2014-11-16 23:32:54 +13:00
Bastien Montagne
fbfdbaf2eb Own cleanup, sorry for the noise :/ 2014-11-16 11:16:56 +01:00
Bastien Montagne
f36785c26c Cleanup: Replace WM_operator_name_call by WM_operator_name_call_ptr where possible.
This avoids one lookup in optypes list...
2014-11-16 11:11:05 +01:00
Bastien Montagne
10813996e8 Fix T42613: Sculpt dyntopo's 'Set Detail Size' (Shift-D) was only always affecting relative size. 2014-11-16 11:11:05 +01:00
Bastien Montagne
e5ad6348b9 Add PROP_PERCENTAGE to subtypes handled by WM_OT_radial_control operator. 2014-11-16 11:11:05 +01:00
Joshua Leung
5148a4d7b5 Uninitialised var warning 2014-11-16 20:24:58 +13:00
Joshua Leung
2625dc5348 Bugfix T41525: Button keyframe indicators don't work correctly when editing NLA Strips
When the active action is a NLA strip, the keyframe indicator colors for buttons
and the 3D view indicator (i.e. the current frame indicator changes color) didn't
work correctly. This was because they were still checking for keyframes in
"global" time space, whereas they needed to be applying NLA corrections to
"look inside" the remapped action.
2014-11-16 20:24:38 +13:00
Joshua Leung
65d771dcaf Bugfix T42253: End frame for armature ghosting "in range" is not displayed 2014-11-16 18:12:35 +13:00
Campbell Barton
c6ab67bffc Fix T42611: Knife fails from an edge to a vertex 2014-11-15 22:17:37 +01:00
Sergey Sharybin
f7371dca82 Code cleanup: Spelling 2014-11-16 02:11:41 +05:00
Bastien Montagne
32c9146a09 Cleanup (mostly 0/1 -> false/true). 2014-11-15 21:30:05 +01:00
Martijn Berger
a28c763b44 Cmake windows. Make sure we install blender player.
Add blenderplayer component so you can speicfy to install this in the
installer
2014-11-15 20:52:10 +01:00
Campbell Barton
bfa75dc990 Knife: freehand drawing while LMB held 2014-11-15 20:50:15 +01:00
Bastien Montagne
d3b0a4a525 Fix broken auto-leyframing for 'Vector' button. 2014-11-15 18:19:23 +01:00
Bastien Montagne
141064d7ae Fix T42567: Color Wheel Buttons do not autokey correctly.
In fact, any button controlling a whole array of values were broken
because they always only keyed the index of the single fcurve returned
by `ui_but_get_fcurve()`, now pass button's rna_index value instead.
2014-11-15 18:07:43 +01:00
Campbell Barton
eb515f4dc8 CMake: cleanup, use find_package for pthreads 2014-11-15 16:46:30 +01:00
Campbell Barton
c1e48c0ff0 UI: cleanup next/prev order in menu code
Recent flag re-order broke it since bits overlap, but logic here was far too complicated & fragile,
Checked the type of each button when testing which direction to handle events as well as block direction.

Now store the block-flipped state as a flag.
2014-11-15 14:40:10 +01:00
Campbell Barton
694f15dee3 Cleanup: remove unused redraw flag 2014-11-15 14:40:10 +01:00
Martijn Berger
3da0ee287c cmake / windows cleanup 2014-11-15 14:36:25 +01:00
Martijn Berger
9ce9725211 Cmake windows, removing more redundant things 2014-11-15 12:42:21 +01:00
Martijn Berger
237bd11bc5 Cmake windows/msvc minor cleanup 2014-11-15 12:12:19 +01:00
Sergey Sharybin
61e1e9adb8 Cycles: Revert changes to inline flags enabled for release only
It appears it's not really needed for convenient debugging when
using proper flags passed to the compiler. Basically, it is -g3
and set breakpoint to a function as if it's not in the namespace.

Not as if a code was any wrong, just it's possible to have more
clear solution for the issue i've tried to solve in the past.
2014-11-15 04:50:34 +05:00
Sergey Sharybin
fa6c45b092 Cycles: Fix compilation error with enabled looging but disabled libmv 2014-11-15 04:01:31 +05:00
Jonathan Williamson
64ac46126b Add Make Edge/Face to mesh Edit Mode toolbar.
The Mesh Tools have quite few crucial tools that're missing from the toolbar. This is the main one.

The tools that're here should also be reorganized a bit to introduce actual orgnization, as it's quite sporadic at the moment. Will do that later.
2014-11-14 15:48:18 -06:00
Bastien Montagne
5bcda29658 Replace tooltips of copy vgroups to ... operators.
Those ops actually replace vgroups in destination, tooltips were really misleading.

Issue raised by zanqdo (Daniel Salazar), thanks.
2014-11-14 19:52:34 +01:00
Campbell Barton
04c3f6e53e View3d: border would jitter on panning 2014-11-14 17:58:53 +01:00
Campbell Barton
89d20990e5 Sequencer: handles drew outside of small strips 2014-11-14 16:52:08 +01:00
Bastien Montagne
6e17fb8fe3 Fix T42593: Rigify crash when I press "Generate" - corrupted IDGroup's listbase of children
Nothing related to rigify actually, recent hack in py handling of IDProp (rB3346ab03)
was breaking integrity of IDGroup's listbase of children IDProps...

Took me hours to nail this down, should have bisected for once. :/
2014-11-14 16:42:49 +01:00
Antony Riakiotakis
5a893d09d2 Add missing notifiers for slip operator 2014-11-14 15:05:07 +01:00
Campbell Barton
22754cf687 skip scene_armature_depsgraph_workaround when theres no armatures 2014-11-14 14:55:45 +01:00
Antony Riakiotakis
8d5d6de761 Reuse local view for UVs for previous commit, thanks to Campbell for the
suggestion.

Also minor compile fix after viewport patch
2014-11-14 14:06:39 +01:00
Sergey Sharybin
bed0995976 Depsgraph: Workaround for missing pose update when changing visible layers
That's like really a bummer, because currently animation data for armatures
might want to use pose, and pose might be missing on the object.
This happens when changing visible layers, which leads to situations when
pose is missing or marked for recalc, animation will change it and then
object update will restore the pose.

This could be solved by the new dependency graph, but for until then we'll
do an extra pass on the objects to ensure it's all fine.

It's done in the scene_update_for_newframe() to solve possible issues with
the render engines as well.

This finally solves issues we had with Caminandes team, where Koro would be
at the scene origin instead of being properly posed.
2014-11-14 14:05:31 +01:00
Antony Riakiotakis
fcadf47a91 Fix T42561 (semi feature request/comeback) UVs in image editor can get
too crowded.

UVs in the same layer can be used for many images. It used to be
possible to filter UV faces based on the image, but this is impossible
now due to the way the system works, so I added an option to allow
filtering UVs based on active material index.

Rationale on using option and not being smart here (options are bad tm)
is that for some workflows, such as preserving image space by using the
same image for many materials, people might want to turn this off.
2014-11-14 13:50:21 +01:00
Campbell Barton
08974c22e4 Fix X11/GLX failing with multi-sample
Caused by D643, in fact we need to get the visualInfo before creating the window.
2014-11-14 13:43:22 +01:00
Campbell Barton
2c3a503731 UI: Rename Addons -> Add-ons
D812 by @thefallenweeble

internally variable names & paths remain the same, this is for labels & tips only.
2014-11-14 12:19:14 +01:00
Antony Riakiotakis
f9adf3616c Fix vertex colors being displayed wrong in GLSL in edit mode. Looks like
swapping the colors is no longer needed.
2014-11-14 12:15:36 +01:00
Antony Riakiotakis
4b7fc26bae Don't assign wrong datalayers to gpuattribs in edit mode.
layer index was being obtained for loop data types but we referenced
Tessface data types

NULLing those out since only the data offsets are used in edit mode and
address sanitizer complains about freed memory access.

Also minor comment in texpainting
2014-11-14 12:08:57 +01:00
Campbell Barton
60ffc08547 Cleanup: use BLI_hash_ prefix for md5 api 2014-11-14 11:53:27 +01:00
Campbell Barton
14795baf21 Cleanup: headers 2014-11-14 11:49:45 +01:00
Bastien Montagne
64c0c13e6e Add Murmur2A hashing feature to BLI
Murmur2a is a very fast hashing function generation int32 hashes.
It also features a very good distribution of generated hashes.

However, it is not endianness-agnostic, meaning it will usually generate
different hashes for a same key on big- and little-endian architectures.
Consequently, **it shall not be used to generate persistent hashes**
(never store them in .blend file e.g.).

This implementation supports incremental hashing, and is a direct
adaptation of reference implementation (in c++):
https://smhasher.googlecode.com/svn-history/r130/trunk/MurmurHash2.cpp

That cpp code was also used to generate reference values in gtests file.

Reviewers: sergey, campbellbarton

Reviewed By: campbellbarton

Projects: #bf_blender

Differential Revision: https://developer.blender.org/D892
2014-11-14 11:00:26 +01:00
Martijn Berger
c8a9764987 Cmake add installation of redistributables for msvc 2013 2014-11-14 10:49:01 +01:00
Campbell Barton
d35d9e6452 update dna exporter for API changes
also print html name.
2014-11-14 00:55:40 +01:00
Campbell Barton
4e4ef13734 CMake: add 'full' to 'make help' 2014-11-14 00:19:53 +01:00
Campbell Barton
bf63e348a2 CMake: disable some build option defaults T42569
This commit disables some lesser used dependencies
for Linux/Unix systems by default.

Run: `make full` to enabled options used in release build.
2014-11-14 00:10:24 +01:00
Campbell Barton
3967d1caba CMake: remove deprecated mudflap option 2014-11-13 19:43:15 +01:00
Campbell Barton
4b106ac1c9 Add 'help_features' make target (prints WITH_*** options) 2014-11-13 19:41:33 +01:00