Commit Graph

45433 Commits

Author SHA1 Message Date
Bastien Montagne
589a73a43f Fix to BLF_pgettext, which was returning "" when passed NULL msgid... Never noticed any problem, but it looks it could produce strange UI issues (like deactivated buttons), and it was not consistent anyway!
Thanks to S. Lockal for spotting the issue and providing a patch.
2013-03-08 15:34:23 +00:00
Campbell Barton
f9b50facd7 add ruler snapping vert/edge/face (Holding Ctrl) 2013-03-08 15:15:14 +00:00
Campbell Barton
f43153dd93 avoid floating point exceptions in snapObjects(), was attempting to scale up FLT_MAX. 2013-03-08 15:10:57 +00:00
Ton Roosendaal
616a00950e Feature request:
Blender's anim player (blender -a) now allows drop of image or movie file.
It then restarts itself completely (close window, open new).
2013-03-08 13:03:04 +00:00
Joshua Leung
181ac91d6d Applying similar optimisations as r.55092 for Animation Data 2013-03-08 10:59:43 +00:00
Ton Roosendaal
bee0af076f Adding include for NULL define in c++ 2013-03-08 09:09:48 +00:00
Michael Fox
b78d33dcf6 [#28352]3dsmax preset, patch by Nik Prodanov, this provides both an interaction preset and a keymap preset for those migrating from 3dsmax 2013-03-08 08:57:11 +00:00
Campbell Barton
6fd187e4df code cleanup: 0 --> NULL 2013-03-08 06:32:00 +00:00
Campbell Barton
1d5b7bc1f7 fix for typo in skin modifier that resulted in incorrect vertex weights. 2013-03-08 04:31:21 +00:00
Campbell Barton
c36f20a7d2 style cleanup 2013-03-08 04:00:06 +00:00
Joshua Leung
ff336aca02 Bugfix [#34560] Wrong angle for text in Horizontal mode of Properties space
Rotation angle for text was still in degrees not radians
2013-03-08 03:42:16 +00:00
Campbell Barton
b9554c86dc fix null pointer dereference in BM_edge_is_contiguous() (own code). 2013-03-08 03:07:32 +00:00
Joshua Leung
d9ec7e2354 [#34541] Sketching bones created bones with 0 radius for envelope
This commit is just a stopgap measure (i.e. it fixes the symptoms but not the
real underlying cause) of this bug. For some reason, iter->size is nearly always
an "effectively zero but not truly zero" value. Hence, the envelope sizes would
get adjusted, but would be scaled to an impossibly small value (taken from
iter->size).

From my investigations so far, iter->size is mostly either set to (or left as)
0, except in a rare case when dealing with volume snapping, when the values
somehow get propagated there from various intermediate data points. But, that
almost never works either.
2013-03-08 02:23:43 +00:00
Joshua Leung
bed8efb8e8 Improving warnings when keyframing fails for IKEY over a button
Now, instead of silently failing, an error message saying that the property
cannot be animated is displayed
2013-03-08 02:15:08 +00:00
Joshua Leung
7f7f32d768 Bugfixes: [#34394] and [#31843] Visual Keying not working for bones
Big thanks to Josef Meier (jomeier) for finding the fix!

It turns out that this was a case of variable shadowing that had been overlooked
and compilers were not warning about.
2013-03-07 23:28:23 +00:00
Jens Verwiebe
373de9e936 OSX/gcc-4.6: workaround a compilerbug, use apple-gcc instead 2013-03-07 22:12:23 +00:00
Sergej Reich
8db7a34167 math: Use len_v3() instead of normalize_v3() for area calculation
We only need the length, avoids unnecessary calculations.
2013-03-07 19:16:02 +00:00
Ton Roosendaal
8e474517db GPencil feature request:
Allow layers to be moved up and down, so you can control drawing order nicer.
2013-03-07 18:01:10 +00:00
Sergej Reich
643b0be4cb bullet: Update to current svn, r2636
Apply patches in patches directory, remove patches that were applied
upstream.
If you made changes without adding a patch, please check.

Fixes [#32233] exporting bullet format results in corrupt files.
2013-03-07 17:53:16 +00:00
Sergej Reich
46d32c89f6 Fix warnings in stubs.c 2013-03-07 17:52:51 +00:00
Sergej Reich
8e2a3e3863 Fix building with blenderplayer 2013-03-07 17:52:48 +00:00
Sergey Sharybin
557b893dfd Border for compositor viewer node feature
This adds border option to compositor, which affects on
a backdrop and viewer nodes, which is useful for faster
previews and tweaks.

Final compositing still happens for the whole frame, but
if it'll be needed it's not so difficult to support it
as well.

To use border there's Ctrl-B shortcut in the compositor
editor, which i used to define region you want to restrict
compositing to. There's also "Viewer Border" option in
the N-panel in case you'll want to disable border
compositing.

Some areas could be cleaned a bit, like ideally it shall
not be viewer image clearing in viewer_border_update RNA
callback, but currently it's not so much clear how to
make it the same fast as simple memset and glue it
somehow to compositor. Will think of nicer solution a
bit later.
2013-03-07 17:47:30 +00:00
Ton Roosendaal
a134d9ed51 Speedup for Grease Pencil animators.
Saving and loading gpencil was using different order for the individual list items.
On a 120 Mb gpencil project (yes, animators!) loading time went down from 1 minute 
to a second or two.

Note that this to have effect, you need to save once.

Developer note: check this commit, it uses a new writelist function. You can 
speedup stuff tremendously with keeping saved and read data in sync.
2013-03-07 16:57:53 +00:00
Campbell Barton
e93068ad78 ruler arc draw clamps to line length and simplify projection. 2013-03-07 16:12:36 +00:00
Antony Riakiotakis
41bf595c5f Texture paint refactoring commit
This is as close as I can get to keeping the old code intact. After this
commit, I will have to change existing code paths, making testing of
functionality harder.

Changes:

* Keep only projective texturing code in paint_image_proj.c
* Move 2D code to paint_image_2d.c. This needed the introduction of
allocation/cleanup functions for the relevant structures.
* Common code interface for both modes stays in paint_image.c (which
still includes all old code, system should work as it did with the
exception of non-projective 3D paint mode) and is made public. This is
not a lot of code, only rectangle invalidation and undo system.
* Changed the naming in the new code slightly: imapaint_ prefixed functions refer to
common functions used by both systems, paint_2d_ prefixed to 2d
painting. There will be an interface for the projection painting as
well. Probably there is some leftover naming conversions to do.

TODO:

* Move operator init/exec/modal to common interface file
* Get rid of old BKE_brush_painter_paint, now brush_painter_2d_paint.
All code uses stroke system for the stroke management
* Write space pressure management for the paint stroke system (for other
systems to access as well :) )
* Move texture paint tablet presssure exception code for old bugs to
stroke system (makes me wonder...aren't other systems also influenced by
these pressure issues?) or up in the function hierarchy inside texture
paint. This code is still not there so users with tablets may notice
some issues.
* possibly change other systems to pre-multiply pressure with the
relevant influenced attributes in the stroke function. This could get
tricky though and it's possible that it could backfire.
2013-03-07 12:11:38 +00:00
Campbell Barton
28b9abe3eb ruler/protractor for 3d viewport (apart of 3d printing features). work-in-progress.
- activate from spacebar search (3D Ruler) 
- ctrl-click adds new rulers
- clicking in the middle of a ruler, turns into protractor, dragging out of view snaps back to ruler.
2013-03-07 11:53:11 +00:00
Gaia Clary
172d624598 Collada fixed Collada ID name for exported animation curves 2013-03-07 10:26:04 +00:00
Campbell Barton
a816b0b3d2 avoid calling glGetFloatv() twice when UI_RB_ALPHA is enabled with uiRoundBox() 2013-03-07 06:46:50 +00:00
Campbell Barton
dfa8540cdf use bool for rna funcs. 2013-03-07 02:44:55 +00:00
Gaia Clary
8664d4b98b Collada: Added option for how rot,loc,trans data is exported (improves flexibility for support of other 3D tools) 2013-03-06 23:21:52 +00:00
Antony Riakiotakis
65869589b6 Support position jittering on new texpaint code using the stroke system. 2013-03-06 22:54:44 +00:00
Antony Riakiotakis
53b7bc8f1f Change !BLI_ghashIterator_isDone to BLI_ghashIterator_notDone. It is
always used in that context so we can at least avoid reverting it twice
:p.
2013-03-06 20:55:04 +00:00
Sv. Lockal
ee9def5105 Typo fix to fix global delete with Shift-X as it was before r43416 2013-03-06 20:26:28 +00:00
Antony Riakiotakis
8676530b7d Texture paint refactoring commit
Adding new file paint_image_proj.c which includes the projective texture painting part of texture
painting, using the stroke system. To access the new code path use Shift-LClick.
The new code path still is problematic with tablet pressure and I will be looking
into ways to unify this across paint systems next.

The old code is still present and can be accessed by regular Lclick as usual.

Also removed 3D (non-projective) painting from 3D viewport.

TODO:
* Add pressure influence code to stroke, remove from every other paint
system code, including texpaint.
* Put UnifiedPaintSettings update in PaintStroke code.
2013-03-06 19:54:43 +00:00
Sergey Sharybin
c75065136c Tracking dopesheet fixes:
- Dopesheet need to be updated when adding or switching
  between objects.
- After removing object it shall also be tagged for update,
  otherwise crash will likely happen.
2013-03-06 18:01:24 +00:00
Campbell Barton
70e1b8d1d2 fix for error building on big-endian. 2013-03-06 16:56:28 +00:00
Campbell Barton
84aa1dd31c fix for bug where array buttons would use -1 index, causing an out-of-bounds check on an array.
added assert so this wont happen again.
2013-03-06 16:32:05 +00:00
Campbell Barton
fd399fa242 add asserts for passing negative index values to RNA functions which don't support them. 2013-03-06 15:38:11 +00:00
Campbell Barton
74a9c1510a Alternate fix for bug [#34369], where invalid polygon normals could be saved in the mesh data and in the file.
This was from initial BMesh merge, but should not have been added in since face normals are calculated and stored in the DerivedMesh.

Toggling editmode would remove poly-normals so its unlikely anything relies on this custom-data.
2013-03-06 03:58:38 +00:00
Joshua Leung
bf5eccc728 Woops! Fix for previous F-Curve path fix commit
Trying to rename a valid F-Curve would crash as no RNA property was set, but
*prop still had an uninitialised value.
2013-03-06 03:53:56 +00:00
Campbell Barton
785c26a0c3 code cleanup: quiet warnings for recent weight paint theme addition. 2013-03-06 02:57:31 +00:00
Campbell Barton
28278427de code cleanup: quiet float/double conversion warnings. 2013-03-06 02:52:34 +00:00
Joshua Leung
c27010582e Bugfix [#32492] - Part 3: Error filter now includes drivers where there are
errors with the variables/targets, even if those errors are for variables which
aren't used (and are hence "harmless" errors)

This means that the filter can be truly useful for helping locate things that
need "cleaning up". For example, previously, there could still have been drivers
where there were some of these "harmless" errors would emit warnings, but would
otherwise appear perfectly functional.

The implementation here uses a slightly slower method of checking any errors in
these driver vars. However, it's no slower than what's done when these are
evaluated, and should be less error prone than introducing yet another type of
error tagging for this one case. The problem here is that the "driver invalid"
flag, which is usually set when a target has errors, gets cleared by the
pydrivers code if nothing went wrong when evaluating the expression. Removing
this clearing step will probably open a can of worms, so unless this method
proves to be far too slow, this simpler fix will do.
2013-03-06 01:59:09 +00:00
Joshua Leung
8ebd5ddd0e Experimental Feature: Ctrl-Click on the "name" of a broken F-Curve now allows
you to fix the RNA Path in-place

For F-Curves that are disabled or marked as having errors because their paths
are invalid (indicated with a red line underneath their names), it is now
possible to use the Ctrl-Click renaming functionality to bring up a textbox for
fixing the offending RNA Path "in place" (i.e. in the channels list) without
having to bring up the properties region first.

This makes it easier to fix the paths if you know what you're doing. However,
caution is still advised for most people. In particular, be aware that this uses
a separate "RNA Array Index" for indexing into array properties (i.e. location,
rotation, color) which will not be shown here, and can only be edited from the
panel (or datablocks editor/scripts).
2013-03-06 01:44:12 +00:00
Joshua Leung
11dbadb442 Feature Request: "Show Errors" Filter for Anim Editors now works for
F-Curves/Animation as well as Drivers

This is useful for tracking down invalid F-Curves which might need to have their
paths fixed, or perhaps to remove F-Curves for controls which no longer exist in
a new rig.
2013-03-06 00:56:58 +00:00
Antony Riakiotakis
0a83879538 The imperative per-few-days blenderplayer fix. 2013-03-05 23:21:10 +00:00
Daniel Genrich
15c524e416 Bugfix [#34519] deleted cache after duplicating an object with baked simulation 2013-03-05 22:58:13 +00:00
Gaia Clary
f840ac9801 Weight Painting: Added userpref for zero_weight color. 2013-03-05 20:30:38 +00:00
Antony Riakiotakis
f5e1cde8f4 Fix cursor display for anchored brushes due to own recent change of
paint coordinate system.
2013-03-05 20:25:08 +00:00
Bastien Montagne
dcbee8ef07 UI messages fix: no end point in tips! (from r55055). 2013-03-05 15:15:53 +00:00