Commit Graph

43305 Commits

Author SHA1 Message Date
57dba73917 View3d: take pixelsize into account for selection distance 2014-03-11 15:34:19 +11:00
23fbc9f22f Fix T39083: speakers were evaluated multiple times when used in sets
also skip checking all objects for speakers when no speakers are in the
blend file.
2014-03-11 14:46:55 +11:00
2de9da6ee9 Fix T39034 brush always shown even after deactivating the show cursor
option after reentering a paint mode.

Solution by Bastien with modifications, thanks!
Show Brush flag need not be reenabled always, but make sure it is at
least enabled once on paint initialization.
2014-03-10 18:42:35 +02:00
658f37acd7 Minor cleanup: use rna_ prefix for path_resolve_* functions for
consistency.
2014-03-10 12:46:01 +01:00
fe094eaf20 Cleanup for RNA_path_resolve_full.
* Moved collection key parsing and array index parsing into their own
functions, to make the main path loop easier to follow.
* Unified boolean return values.
2014-03-10 12:26:50 +01:00
4d47e75223 Fix for proxy colorspace and prefetching 2014-03-10 16:46:05 +06:00
19935f0fc3 Fix for potential bug in copy-to-selected ui button operator: Return
value was mixing operator result with an int/boolean.
2014-03-10 09:51:59 +01:00
6fdbab4366 Minor code cleanup. 2014-03-09 22:25:37 +09:00
d219312d44 Fix T39018: Duplicate entries for material/shader in AnimEditors
In many BI shader setups, the material which owns the nodetree is often itself
included as a node in that nodetree (i.e. to provide the base colour for that
mesh). This would often result in the material (and its subtree) getting included
in the dopesheet results twice.
2014-03-09 19:23:32 +13:00
fa24ad1fd5 Graph Editor: add lasso select for fcurves 2014-03-09 16:20:04 +11:00
6a4567b9ab BLI Rect: utility function to transform a point using 2 rect's 2014-03-09 15:48:09 +11:00
bcb99b794d Text Editor: Remove key binding for text/object conversion
This can freeze Blender if you accidentally press ctrl+m on a large
script, conversion from text to 3d objects is fairly special case,
restricting access to the menu only.
2014-03-09 14:12:56 +11:00
25ad7b44a0 Fix for prevoius commit: accidentally changed a ifndef to ifdef. 2014-03-09 00:30:50 +01:00
5559302369 Cleanup some useless/unneeded #ifdefs for MSVC2013. 2014-03-09 00:25:08 +01:00
7461fead50 Fix T39035: Cycles F-Modifier truncates end/beginning frame values for repetition
When the keyframes at either end of the source curve don't lie on exact frame boundaries,
this casued problems with the Cycles F-Modifier, as part of the cycle would get chopped
off.

This was caused by float -> integer truncation that was occurring, since one variable
was of the wrong type. The problem here wasn't discovered until now (thanks to gcc's
invalid-type warnings on printf's) as in standard usage, we can safely assume that all
keyframes are strictly on frame boundaries.
2014-03-08 17:57:31 +13:00
9e881d0d5b Drivers UI: Add explicit warnings about use of bpy.data and bpy.context in expressions
In order to combat the problem of users frequently trying to use inlined
bpy.data/bpy.context paths for data access in their driver expressions
and then finding/complaining that these don't update correctly, the UI
now flags these as the error conditions that they are (with suggestions
on how to fix this).

Also tweaked the "Add Variable" button to have more descriptive text about
what exactly variables are and why to use these, along with some other
visual tweaks (icons!).
2014-03-08 12:32:56 +13:00
36279afbd3 Cycles: Compile fix and some cleanup for the Image interpolation commit. 2014-03-08 00:23:45 +01:00
dd2dca2f7e Add support for multiple interpolation modes on cycles image textures
All textures are sampled bi-linear currently with the exception of OSL there texture sampling is fixed and set to smart bi-cubic.

This patch adds user control to this setting.

Added:
- bits to DNA / RNA in the form of an enum for supporting multiple interpolations types
- changes to the image texture node drawing code ( add enum)
- to ImageManager (this needs to know to allocate second texture when interpolation type is different)
- to node compiler (pass on interpolation type)
- to device tex_alloc this also needs to get the concept of multiple interpolation types
- implementation for doing non interpolated lookup for cuda and cpu
- implementation where we pass this along to osl ( this makes OSL also do linear untill I add smartcubic to the interface / DNA/ RNA)

Reviewers: brecht, dingto

Reviewed By: brecht

CC: dingto, venomgfx

Differential Revision: https://developer.blender.org/D317
2014-03-07 23:16:33 +01:00
ef51b69009 Fix for displace node regression (reported on IRC by Sebastian Koenig):
Was adding a (0.5, 0.5) offset, even for zero displacement.
2014-03-07 18:32:20 +01:00
f03df4f024 Fix crash when changing and using between layer and other brushes in
dyntopo

Layer brush would not invalidate the layer_disp arrays in dyntopo mode,
checking only for the existence of the array. This means that if a tool
resized the node due to topology changes, the layer brush code could
index (and write!) out of bounds in the array. Solution is to invalidate
the layer data prior to each stroke in dyntopo.
2014-03-07 16:58:56 +02:00
20f7a34abe Fix hard crash when using persistent base on layer brush on multires and
dyntopo.
2014-03-07 15:58:20 +02:00
84bed52ac3 Some initial tooltips for FModifiers
These are quite rough and could use some more attention to read better
2014-03-08 02:16:03 +13:00
bea5ad517c Added tooltips for various F-Curve RNA defines 2014-03-08 02:16:02 +13:00
3e26a7a594 Fix T38774: Changing extrapolation type via RNA doesn't update FCurve
- Added update callback to perform on-update validation when changing the
  extrapolation mode on F-Curves
- There was a patch in the tracker for adding an "update()" method to F-Curves
  which does a similar thing when manually called by scripts. Since we've added
  a function for this in RNA anyways, we might as well add this too while we're
  at it. (NOTE: upon closer inspection, the original patch by Tom Edwards had a
  number of issues, so I ended up reimplementing here)
2014-03-08 02:16:01 +13:00
6e7ce9770f Fix T38774: Added missing notifier flags for updating F-Curve after changing extrapolation from RNA 2014-03-08 02:16:00 +13:00
5e18eea02c Code cleanup - Extra comments + Reshuffling a few methods 2014-03-08 02:16:00 +13:00
f16a6e3016 Comment fixes 2014-03-08 02:15:59 +13:00
e097c987a8 Maintenance: Start of 2.71 release cycle, BCon1, Alpha. 2014-03-07 13:43:59 +01:00
43b5f0af2d tweaks to buildinfo
We wouldn't really have release branches, building will happen
from annotated tags.

Made it so building tag revision equals to a master branch.
2014-03-07 18:27:16 +06:00
c05896eb35 Fix for own commit: particle rng arrays should be declared extern in the
header.
2014-03-07 13:18:15 +01:00
08444518e6 Removing ParticleSystem->frand arrays to avoid memory corruption issues
in threaded depgraph updates and effector list construction.

Gathering effectors during depgraph updates will call the
psys_check_enabled function. This in turn contained a DNA alloc call
for the psys->frand RNG arrays, which is really bad because data must be
immutable during these effector constructions.

To avoid such allocs the frand array is now global for all particle
systems. To avoid correlation of pseudo-random numbers the psys->seed
value is complemented with random offset and multiplier for the actual
float array. This is not ideal, but work sufficiently well (given that
random numbers were already really limited and show repetition quite
easily for particle counts > PSYS_FRAND_COUNT).
2014-03-07 11:20:45 +01:00
98abc80dcf Correction to previous commit 2014-03-07 21:17:26 +11:00
7a9838b5d3 Fix action-editor crash transforming gpencil and masks
There were 3 bugs with both data types
- using freed memory while sorting.
- sorting failed in some situations.
- scaling allowed multiple items to be on the same frame.

Replace this with a simple sort + de-duplicate, taking selection into account.
2014-03-07 21:09:51 +11:00
b839fb9bb7 Fix T38985: Setting endpoint_u property while creating spline in Python gives strange behavior 2014-03-07 14:05:38 +06:00
c31c8fa14e Fix T39015: NLA Clip Auto Blend In/Out Check Box Not Working
Fix for regression accidentally introduced in 5f18d863a9 (affecting current 2.70 rc-1)
which means that this setting wasn't working anymore at all.
2014-03-07 19:11:53 +13:00
6ddd54f5a5 Fix T38990: Crash in mask shape re-key 2014-03-07 14:37:14 +11:00
03af4cbf91 Code cleanup: style 2014-03-07 13:28:39 +11:00
276ef3b3b5 Editmesh: Toggle between all edge-loop boundaries when selecting
Now Alt+RMB,RMB will select all connected boundaries.

There are times when you just want to select an entire boundary loop
ignoring face topology, previously there was no way to do this.
2014-03-07 10:39:31 +11:00
a7a7a032a6 Mesh: loopselect return cancelled when no selection made
also un-indent main function body.
2014-03-07 10:39:30 +11:00
6aff80a9d1 BMesh: simple edge boundary walker 2014-03-07 10:39:30 +11:00
571f184d35 Fix T39000: Align Objects Axis button is not redraw.
We have to apply button *before* checking others in the ROW, else changes are not propagated to them yet.
2014-03-06 22:03:11 +01:00
03afa6f9e7 Experimental dyntopo feature:
Dyntopo detail in object space. This allows to set the detail in
percentage of blender units and sculpt in this detail constantly,
regardless of the distance to the mesh.

This commit just enables the functionality, which is really trivial.
There will be some more commits like detail flood fill and
detail sampling in the future.
2014-03-06 20:15:44 +02:00
2a167dafc2 Forgo one rect union function, partial rect is inferred from nodes that
are tagged for update anyway. The important part of the fix was updating
the previous rectangle in the draw function.
2014-03-06 19:54:44 +02:00
43486bbdb9 Final fix (I hope!) for partial redraw.
The problem here is that the redraw rectangle can be calculated many
times before actual redraw (for instance due to repetitive calls to the
paint step function for space strokes). Those redraw rectangles need to
be accumulated and finally flushed when the draw call is done.

Also, it is this accumulated rectangle that must account for the
previously drawn rectangle to avoid artifacts due to drawing.

Now all looks like it works correctly :)
2014-03-06 19:27:05 +02:00
19e74f1d4f Fix T37867: scroll bar in text editor shows the wrong mouse cursor.
Patch by chipgw.
2014-03-06 18:23:21 +01:00
d916cedb4f Better handling for previous fix: Make sure previous redraw rect stays
after the stroke so that it can be unioned with current rect correctly
during the draw update. For some reason dyntopo clipping misbehaved
before that.
2014-03-06 18:19:02 +02:00
c1be7e12ee Fix T37510 Knife missed cuts on small faces.
For very thin faces, knife sometimes missed cutting a few.
Problem was that a test for edges being totally inside a face
was being applied in inappropriate circumstances. An assumed
invariant about the knife hit structure is not true when
actually in the middle of making cuts.
Also make a 'big epsilon' a little smaller, though don't think
that was the problem in this bug.
2014-03-06 10:55:12 -05:00
d4ad050632 Fix error in previous commit. Included dubious fix for smooth brush by mistake 2014-03-06 16:39:30 +02:00
175a6b2fce Solve partial redraw issues in sculpting.
* Do union with previous partial redraw before overwriting with self and
store unmodified new rect to avoid rect getting bigger.
* Make rect one pixel wider instead of smaller so edges do not get left
outside. Overall this looks quite better.
2014-03-06 16:32:02 +02:00
3d2b530315 Hiding plane tracks was never implemented 2014-03-06 20:07:40 +06:00