Commit Graph

37282 Commits

Author SHA1 Message Date
032923a9f5 Bug fix #34334
For 2.66a 

Soft shadow was drawing a complete rect, but it should skip the top edge.
That allows transparent menus to still have a shadow too.
2013-03-01 11:42:07 +00:00
2de9ce7940 keymap filter by keybindings in the userpreferences.
- optional, select between name/keybinding.
- when key input can't be parsed, alert red to give the user some feedback.
- key shortcut parsing could be improved or swapped out for button which grabs shortcut.
2013-03-01 06:17:59 +00:00
2de8dfd784 fix for drag-toggle, bit-buttons weren't handled which made drag toggle fail for buttons in the graph editor for eg. 2013-03-01 00:35:01 +00:00
3d63b2308a code cleanup: minor refactor of button pressed state checking, needed for drag toggle fix. 2013-03-01 00:19:32 +00:00
681b2ec49c Fix / Workaround for [#34474] "Record Composite" image op segfaults in compositor code
* These operators have never been ported to 2.5x and therefore should not come up inside the UI. (as they are not working).
2013-02-28 22:50:24 +00:00
402f2159fa Fix own regression in commit from today -- missing NULL check
Crash happened when sequence image failed to load.
2013-02-28 17:23:44 +00:00
28444a4831 UI/DPI: user preferences window size now takes into account DPI, otherwise the
buttons don't fit properly.
2013-02-28 16:37:19 +00:00
5f1978dbd2 Fix #34366: mesh.select_mode operator could not be configure the use_extend
and use_expand properly. These are hardcoded to shift and ctrl to make them
work when clicking buttons or menus. Now it checks if the properties are set,
which is still not ideal but makes it possible to override them from the
key configuration.
2013-02-28 16:37:18 +00:00
c0a3ebedb3 Fix #34372: mesh.verts.foreach_set not working with normals, regression due to my
bugfix for multidimensional arrays.
2013-02-28 16:37:15 +00:00
08f737c3b9 Fix #34390: quicktime video codec menu showing blank. It's a small miracle
that this code worked at all at some point.
2013-02-28 15:33:29 +00:00
537c18a9ce Fix #34414: python error with frame_change callback and Cycles motion blur.
Now the RenderEngine.render callback allows writing blender data again, it
should not be allowed but in practice the API and render threading code is
too limited to make this work at the moment.
2013-02-28 15:33:26 +00:00
1039135965 More UI messages fixes... 2013-02-28 15:31:20 +00:00
47d6d18771 Changed a way how RGB images are saving from RGBA
Before alpha channel was simply ignored causing bad looking
straight colors which is pretty much useless.

Now saving RGB would alpha-over image on top of black color,
which makes final image look really nice. It's also very
such the same what other graphics software does this.

In the future we could easily support configurable backdrop
color, which would be really the same as other SW does it.

Also, it'll probably worth adding the same mode to RGB
display of image editor.
2013-02-28 14:25:26 +00:00
bad03bcfb1 Draw a checker board as a background for animation player
This makes it easier and useful to investigate alpha channels,
without this straight colors are displayed on the screen which
are completely useless in case of player.
2013-02-28 14:25:18 +00:00
5cb22bbedf Fix sequencer crash when pasteing strips after creating new file
Issue happened for scene. movie clip and mask strips, which contains
pointers to datablocks which are freeing on loading new file.

Also, scene strip would crash when pasted from clipboard after scene
was unlinked from file.
2013-02-28 14:25:09 +00:00
efdca34f52 Fix memory leak when loading multilayer EXR as movie clip
Such kind of image sequences wouldn't be displayed still
and supporting them would take some additional time, but
for now it'll be no memory leak on attempt opening such
images.
2013-02-28 14:25:00 +00:00
52f34f017d Modal (aka tripod) solver rework
Several major things are done in this commit:

- First of all, logic of modal solver was changed.
  We do not rely on only minimizer to take care of
  guessing rotation for frame, but we're using
  analytical rotation computation for point clouds
  to obtain initial rotation.

  Then this rotation is being refined using Ceres
  minimizer and now instead of minimizing average
  distance between points of point of two clouds,
  minimization of reprojection error of point
  cloud onto frame happens.

  This gives quite a bit of precision improvement.

- Second bigger improvement here is using bundle
  adjustment for a result of first step when we're
  only estimating rotation between neighbor images
  and reprojecting markers.

  This averages error across the image sequence
  avoiding error accumulation. Also, this will
  tweak bundles themselves a bit for better match.

- And last bigger improvement here is support of
  camera intrinsics refirenment.

  This allowed to significantly improve solution
  for real-life footage and results after such
  refining are much more usable than it were before.

Thanks to Keir for the help and code review.
2013-02-28 14:24:42 +00:00
2398e074d3 fix [#33466] alt + mouse wheel
Alt+Mouse Wheel events depended on the button under the mouse being active, else it would change the current frame.
Button re-activation wasn't 100% reliable since it depends on fake mousemove events.

Now keep button active when its executed if the mouse stays over it.
2013-02-28 11:39:13 +00:00
4f4e45540d fix for harmless glitch rotating the camera in camera mode, having the center point so close to the viewpoint caused the helper line to erratically move about because of float precision. 2013-02-28 11:29:27 +00:00
a368334f74 LocDiff Driver Vars: Red-Alert is not needed on the space-selectors 2013-02-28 11:00:06 +00:00
6ac941c3f0 Bugfix: Invalid target tagging for "Distance" driver variable type only
highlighted the first target if/when both targets were empty.
2013-02-28 10:50:13 +00:00
1700cf8717 Bugfix: Types mismatch (flags and targetFlags were ints, but dtar->flag is a
short)
2013-02-28 10:27:04 +00:00
ac6c218cf4 Invalid Driver Targets are now indicated appropriately (using Red Backgrounds)
in the UI

This is the second part of the fixes for [#32492], making it easier to identify
which part of a driver (i.e. which of its targets) is causing problems

A number of additional/related changes needed to be made:
* Red-alert status for layouts is now propagated down to child layouts when they
are created. This is needed as otherwise some of the templates used in the Graph
Editor driver settings won't actually get the red-alert status flushed down to
them. Also, note that this status needs to be set before any widgets are added
to the layout, or else the settings aren't applied when the relevant widgets get
created.

* "Single Property" RNA-Paths resulting in out of bounds array access will now
trigger an error status and appropriate warnings

TODO:
* The error tagging doesn't get applied immediately after variables are created,
or their types changed
* There was also some other weirdness involved when a higher-value flag (1<<10)
was used for this setting, which needs further attention
2013-02-28 07:13:33 +00:00
2afca3e317 fix [#34426] Manipulator handles drawn incorrectly by depth
original patch by Philipp Oeser (lichtwerk) with own changes.
2013-02-28 06:12:06 +00:00
1810913f81 fix for bmesh regression similar to last revision r54920. only effected loading old blend files without edge data. 2013-02-28 04:18:01 +00:00
d17c13d145 fix for regression since BMesh merge, selecting linked faces in face-mask mode was using an incorrect lookup on loops which made select-linked fail 2013-02-28 03:39:41 +00:00
15d443b7ea code cleanup: includes 2013-02-28 01:28:46 +00:00
646b947cc3 fix for linking with recent armature refactor, was also missing file from CMakeLists.txt. 2013-02-28 00:45:07 +00:00
e4c887377b patch [#34465] Fix text editor bug: Crash when overwriting ascii character with multibyte character
from Shinsuke Irie (irie)
2013-02-28 00:08:47 +00:00
dff8c01c3e Renaming the remaining PoseMode files for consistency (camelCase to
underscores_style)
2013-02-28 00:01:20 +00:00
e8d42ab48e Properly prefixing name of exproted armature API 2013-02-27 23:56:51 +00:00
a807f087e0 Code cleanups
* Replace magic numbers with enum-defines
* Remove superfluous return; statements (used as last statements in a few
"static void" methods)
* Remove some old unused/commented out stuff
2013-02-27 23:50:44 +00:00
28a84a2c3a Code Maintenance - Splitting up Armature/Pose Editing Files
This commit splits editarmature.c and poseobject.c into several files, such that
certain types of functionality are (mostly) self-contained within particular
files (instead of being mixed in with other functionality in a large file).

In particular, this was done so that:
1) Armature EditMode tools are now in the armature_*.c files only, and Pose Mode
tools in pose_*.c files only.
     - In one or two cases, this hasn't been possible as the two modes rely on
much of the same shared infrastructure.
2) The "clear loc/rot/scale" operators and pose show/hide are no longer housed
in editarmature.c
3) Selection operators, Transform operators, structural (add/delete) operators,
and supporting utilities for the modes (enter/exit/roll-calculations) are not
all interleaved in an ad-hoc manner

Notes:
* I've tried to ensure that the history of the new files has been maintained by
doing
   svn copy {editarmature.c/poseobject.c} {armature_*.c/pose_*.c}
   Unfortunately, this means that the diffs are a bit messy.
* There should be no functional/logic changes here. Just code moving around and
cosmetic comment tweaks where needed.
* #includes have largely been untouched for now, but could be cleaned up later
* CMake changes untested, but should work in theory.
2013-02-27 23:34:29 +00:00
2e830d05c4 Report #34450
Fix for 2.66a

Some editors in Blender (Like Graph) have "maxzoom" set to 0, which caused the 
MMB zoom sensitivity to be minimal. That used to be much more responsive, restored
it to how it worked before.
2013-02-27 17:12:57 +00:00
a8c48058f9 Bug fix #34436
Two example files that crashed texture nodes. 
- On delete texture nodes, it should free the exec cache (because this cache
  stores the node pointer.
- On redo, nodes can exist can exist without typeinfo set. Exec (free) code
  was not checking for that. Don't ask me why this happens... tex nodes are weird.
2013-02-27 14:25:39 +00:00
713c9afb39 fix [#34460] text editor freezes when turning on syntax highlight 2013-02-27 14:19:44 +00:00
debc3ac910 Collada export: Add ngon support (initial) 2013-02-27 13:53:43 +00:00
d4d45711dc fix for error with drag toggle which showed up with overlapping regions. 2013-02-27 11:26:51 +00:00
3d7867d7f0 Added RGBA|RGB channels toggle to sequencer preview
Main purpose of this is to be more compatible with older
versions of blender (before alpha cleanup) where sequencer
used to display premultiplied image on an straight opengl
viewport.

Now sequencer preview would behave closer to image editor
However adding Alpha and R|G|B displays is not so simple
because sequencer is using 2D textures. Would be nice to
implement this options as well, but this is not so much
important IMO.

This hall fix
- #34453: VSE: Subtract function does not work properly

TODO: Make RGBA display default for our startup.blend
2013-02-27 10:26:58 +00:00
4e59fb2352 minor changes to outliner
- linking groups into a scene now uses the objects original layers (some users have the layers set to useful values, so overwriting isnt so nice).
- dropping objects into the 3d view would make them active but not selected, a valid but confusing state, since most tools activate and select now objects.
2013-02-27 10:19:31 +00:00
7eeb915e8d changing image dropping into the viewport to add empty objects (from r54825) wasnt such a popular move,
reinstate old behavior, holding Ctrl now adds empty objects instead.
2013-02-27 10:14:36 +00:00
fefc684036 Fix #34439: Strip modifier - Mask multiply failure 2013-02-27 09:58:40 +00:00
3468eba71a fix for own regression, edge path tagging worked but toggline bevel didnt.
reported as bug [#34449]
2013-02-27 07:05:01 +00:00
67f38af415 fix for own regression - joining meshes didn't merge customdata flags (could loose crease/bevel weights). 2013-02-27 05:38:48 +00:00
aa80a69839 enable grabbing for 2d view zooming, good for the graph editor. 2013-02-27 04:59:39 +00:00
29b4b56c66 make sure objects dragged into the viewport are not hidden. 2013-02-27 04:57:53 +00:00
68f9226d5b code cleanup: unused arg 2013-02-27 01:43:48 +00:00
a14547882a code cleanup: quiet warnings 2013-02-27 01:40:36 +00:00
0e3b878e0f == Sequencer ==
This fixes the placement code of new files added to the sequencer timeline.

The old code tried to guess the strip position from the current mouse
pointer position.

Annoying effect: if you add a new strip using the menu, especially if the
file editor pops up, the strip ends up in nowheres land (most likely around
track 40, frame -200).

New behaviour: strips are always placed at cfra, which is the
sequencer equivalent to the 3D cursor (and that's where new objects in 
3D editing end up).

Bonus feature: we try our best to guess the right track by finding the
nearest strip by type.

The patch was inspired by 
[#32766] VSE: Add Strip on Current Frame

Thanks to venomgfx for the idea!
2013-02-27 00:04:07 +00:00
0dd6988a1e add PHY headers to cmake's ketsji (else some IDE's won't show) 2013-02-26 23:08:42 +00:00