Commit Graph

28155 Commits

Author SHA1 Message Date
Joshua Leung
a155d8895d Moved Auto-Keying "Insert for KeyingSet only" option from UserPrefs to
Scene (Toolsettings, i.e. alongside "layered" option for using NLA
while doing auto-keying)

This option makes all Auto-Keying operations use the active Keying Set
to carry out keyframing operations instead of picking and choosing
their own Keying Sets to use, thus cutting down on the number of
unwanted keys.

Warning: if the older userpref option was enabled in an old
startup.blend, it may be difficult to turn this option off.
2011-02-04 08:33:07 +00:00
Campbell Barton
ce5dc02c8c fix for make stub, readlink was used incorrectly and building didn't work on BSD because of CPU detection. 2011-02-04 04:12:24 +00:00
Campbell Barton
4be9583894 small mathutils changes.
- fix for returning empty slices (was returning list rather then tuple).
- report invalid type when mathutils_array_parse_fast() fails.
2011-02-04 03:39:06 +00:00
Campbell Barton
36786c18d7 PyAPI: coerce mathutils values. (vectors, quats, eulers) as proposed here:
http://wiki.blender.org/index.php/Dev:2.5/Source/Python/Mathutils#Coerce_Method_Arguments
2011-02-04 03:06:23 +00:00
Guillermo S. Romero
9d24a17422 SVN maintenance. 2011-02-03 18:57:53 +00:00
Sergey Sharybin
b64811b330 - Fixed bug with disappearing curve animation data created in edit
mode for case there was no animation at object before enter editmode
- Fixed memory corruption for case of fcurve groups
- Fixed bug with incorrect re-naming "spline[%d].smth" pathes

TODO:
  - Also update drivers' curves
  - Enable I-key menu and autokeying

  Will do this after consultation with Aligorith, shouldn't harm atm.
2011-02-03 17:03:37 +00:00
Ton Roosendaal
54aa4fa3a2 Bugfix #25912
Render bug in spothalo (weird horizontal line).
Appeared to be precision error... even for doubles,
before doing division a check for FLT_EPSILON works
better than DBL_EPSILON (if there's an alternative).
2011-02-03 16:31:03 +00:00
Janne Karhu
6a23716957 Applying patch #25898 by Shinsuke Irie for rendering total external reflections
* Tracing objects with IOR < 1.0 (like air bubbles under water) wasn't working correctly as a refraction was always assumed to be the first thing that happens for transparent materials.
* This fix is ok, but the fact that the internal renderer is not a physically based one is starting to show, as for example blurred reflections in this case are not really possible nicely without some slightly heavier modifications to the ray code.
* Also some cleaned up logic and better comments for my previous total internal reflection commit.
2011-02-03 15:05:43 +00:00
Joerg Mueller
376e0ae2a3 Audio Bugfixes:
* [#25638] 'Insufficient thread locking' for sounds
  - Actually a workaround for an msvc bug, msvc STL containers are buggy
* [#25922] Sound does not play in BlenderPlayer(r34579)
  - Windows OpenAL doesn't seem to have clear context error state on initialising
2011-02-03 13:25:05 +00:00
Campbell Barton
1e3ec65edc remove unused variable
also clear scene data before running batch import (utility script).
2011-02-03 11:02:02 +00:00
Campbell Barton
07e688125a Makefile for convenience on *nix systems.
Running 'make' starts an out of source build with CMake in ../build/OS_CPU, creating the dir and configuring CMake if necessary.

So casual users can just run this without changing dirs:
 'svn up ; make'
2011-02-03 10:07:15 +00:00
Ton Roosendaal
fc0d85ac59 Bugfix #25913
Compositor: using "read sample buffers" after load file, without
render layers in composite, crashed blender (NULL read)
2011-02-02 14:36:00 +00:00
Janne Karhu
f79f9115f2 Fix for [#25899] Renderer can't trace successive total internal reflection
* This was wrong since 2006!
* Raytrace code assumed refractions to go "air -> glass -> air -> glass -> air.." so actually only the first total internal reflection was calculated correctly, but everything after that was wrong.
* Now after a total internal reflection there needs to be an actual refraction before the ray escapes the "glass" object.
2011-02-02 12:04:23 +00:00
Daniel Salazar
a7af789864 Added Read Render Layers and Read Full Sample Layers to node editor menu 2011-02-02 10:33:29 +00:00
Daniel Salazar
14ef1e2d96 Keymap conflict in node editor. Read Render Layers is now Ctrl R to
leave R for rotate
2011-02-02 10:26:14 +00:00
Campbell Barton
691f2abad1 fix [#25684] Grease pencil strokes with "Surface" option attach erratically to curves.
added new functions
- view_autodist_depth_segment()
- plot_line_v2v2i(), which takes a callback and plots x/y points.
2011-02-02 03:32:58 +00:00
Joshua Leung
b04bccd44e Bugfix [#25907] Impossible to "select all" on narrow action editors
Marker selection operators now use a special poll() callback which
checks that there are some markers before trying to run them. This
means that when there are no markers, the full screen range is
available, instead of just those areas above the region masked off for
markers which can be quite slim when trying to save space by only
showing the summary channel.
2011-02-02 03:12:39 +00:00
Campbell Barton
c57cd7c5bd bugfix for setting the worldspace matrix of an object which used quaternion rotation and deltas, was subtracting the values rather then multiplying by the inverse.
effected 'Apply Visual Transform' & pythons obj.matrix_world = mat
2011-02-02 01:01:01 +00:00
Campbell Barton
95df65f1b5 - some parts of the code to remove rotation were not removing axis/angle rotation (only functional change of this commit).
- use BLI_math functions for removing rotations from objects and pose channels.
- add unit_axis_angle() to avoid setting the Y axis inline anywhere rotation needs removing.
2011-02-02 00:40:55 +00:00
Campbell Barton
19efa4301a fix crash from report [#25746] Adding keyframes to nested custom properties (IDProperties) of a bone causes segfault
though keyframing still doesn't work, it gives an error instead.
also use const char * in more parts of the py/rna api.
2011-02-01 23:53:54 +00:00
Joshua Leung
501703020a "Batch-Edit" Code cleanup: Renaming ED_operator_ipo_active to
ED_operator_graphedit_active
2011-02-01 23:51:52 +00:00
Joshua Leung
efd1d0f901 Bugfix [#25902] alt+a over 3D view don't up date dropesheet editor
Migrating "redraws" settings from TimeLine view data to per Screen.
The options are now still shown in the TimeLine "Playback" menu
though.

This means that whatever redraw settings you set in a TimeLine editor
will be used throughout a screen (i.e. editor layout) to determine
which editors will get updated during playback, instead of only
certain editors doing certain things at vague times.

---

Also, I moved some version patches pre 2.56 version bump into a
version-check for 2.56. These must've been missed when doing the
release...
2011-02-01 23:41:01 +00:00
Joshua Leung
b8d9d10a65 Action Editor UI Tweaks:
While animating, I realised that actually the 'only selected' and
'include hidden' DopeSheet filtering options are also useful in the
Action Editor, especially while tweaking the animation for some
characters, where you'd like to focus only on some of the character's
control (i.e. eyelid tweaks, hand tweaks, etc.).

The other DopeSheet filtering options aren't so relevant here, so I've
excluded them from this.
2011-02-01 22:21:43 +00:00
Campbell Barton
bc36e39c23 fix issue #2 raised by report: [#25894] Problems with properties across files 2011-02-01 21:24:59 +00:00
Campbell Barton
1c2bb084ac partial revert for r34590, exclude render() from enabling the read-only state.
will re-open [#25845] and assign to Brecht.
2011-02-01 20:38:24 +00:00
Ton Roosendaal
f5e2669444 Icons in outliner were jittering a bit on sizing of the area.
Subpixel position issue... when is this ever correct? :)
2011-02-01 17:54:02 +00:00
Sergey Sharybin
482af562eb Fix #25884: Crazy behaviour of the rotate brush
Rotation brush used to be crazy because it depends on normal of area
under brush, which is used as axis to rotate vertexes around and
this normal used to change during stroke.

Calculate normal from original mesh state for rotation tool too.
2011-02-01 15:51:40 +00:00
Janne Karhu
4037eda069 Fix for [#25879] Particle Duplication issue with Linked in Objects from Groups.
* Only the first object (in scene object order) that instanced a dupligroup was rendered properly, because particle instances were checked for only after creating the render object (and even this check was done wrong).
* Now the actual render object is created only after both object and particle instances have been checked.
2011-02-01 15:02:25 +00:00
Ton Roosendaal
67b1cdd953 Bugfix #25891
Info header: option to switch scenes or add new ones has to be hidden
for "full screen" mode. Current full-screen code doesn't allow to 
browse screens or switch scenes nicely.
2011-02-01 13:35:21 +00:00
Campbell Barton
0d3cf5c8a6 Script to test import operators, so a single command can execute an operator on all files in a directory and optionally save out blend files for inspection.
This comes in handy for testing importers against 100's of files, quickly showing breakages and easier to setup then unit tests.

Example usage:

  blender.bin --background --python source/tests/batch_import.py -- \
              --operator="bpy.ops.import_scene.obj" \
              --path="/data/testfiles/obj" \
              --match="*.obj" \
              --start=0 --end=50 \
              --save_path="/tmp/test"


Also found my name was spelt wrong in some places :)
2011-02-01 12:47:50 +00:00
Campbell Barton
ffe7bde02c correct fix for bug #23871, __main__ module was being overwritten in nested functions, so on returning from calling operators the __main__ module could be cleared and imported modules turn into None
calling
  bpy.ops.wm.read_factory_settings()
... would clear a scripts namespace if running directly, not in a module.


Fix by backing up and restoring the __main__ module.

Also found BKE_reportf wasnt printing all reports in background mode as BKE_report() was doing.
2011-02-01 12:37:53 +00:00
Joshua Leung
86f3ba24e4 Bugfix: Graph Editor menus were missing an entry for the "Smooth
Keyframes" operator

Probably this was missed off, since the DopeSheet doesn't have this
functionality
2011-02-01 11:54:05 +00:00
Joshua Leung
f4dcc2ffe1 Bugfix: Renaming Keying Sets didn't update timeline
Keying Set RNA props were missing update notifiers
2011-02-01 11:39:51 +00:00
Joshua Leung
1b371fd28d New Keyframe Type: "Jitter"
While doing some animation work over the past few days, I found that
it would be useful to be able to tag keyframes as a another type yet:
"jitter" for fill-in secondary motion (i.e. blinks/hand-keyed camera
shake). Of course, what you really use these for is up to you, but
this is one more option when you need it :)
2011-02-01 11:35:27 +00:00
Campbell Barton
549b190566 own fix for bug #23871 (r33277), crashes when running multiple operators in a batch script with a double free.
Cant see why this happens but this different fix doesn't crash so using it instead.
2011-02-01 09:02:49 +00:00
Campbell Barton
c6d43a02cb bugfix [#25767] Addons cannot be upgraded through the UI
added option to overwrite.
2011-02-01 06:48:19 +00:00
Joshua Leung
6f0aa2cb0e Targetless IK Bugfixes + Tweaks:
- "CONSTRAINT_IK_AUTO" flag for targetless IK constraints was being
set in the wrong place. This is for the IK constraint data's flag, not
the generic constraint's flag
- Converting stack var "targetless" from type bConstraint to
bKinematicConstraint (i.e. constraint baseclass -> specialised data),
since it was only used in one place with a cast used there.
- When using targetless IK with no specified chain length, bone
rotation locks are taken into account too, saving a bit of extra setup
work
2011-02-01 05:15:32 +00:00
Campbell Barton
0362d19f2d Pythons path functions - os.walk(). os.path.exists(). etc support bytes for paths as well as strings, support this with blender/rna too.
- bpy.data.*.load() functions were only accepting UTF-8 paths.
- rna functions/properties now accept byte values rather then strings for file paths.
- bpy.path.resolve_ncase now supports byte objects.
2011-02-01 04:24:47 +00:00
Campbell Barton
b17bbf9d95 fix for 2 segfaults running in background mode.
- operators which reload G.main would crash blender if called from python and then accessed bpy.data.*
- WM_read_homefile_exec was setting the contexts Scene to NULL as a signal for the event system, this didnt work in background mode, crashing when property update functions expected scene to be set.
2011-02-01 02:54:29 +00:00
Daniel Salazar
339d3bf05f reverting the new button in node editor.. will need to create a new
operator to get the correct behavior for center backdrop
2011-02-01 01:32:12 +00:00
Daniel Salazar
7b3a49af8c Added Center button to backdrop controls in node editor's side panel
Inlined backdrop's zoom ui limits and hard limits so that
going to minimun and going back to 100 works
2011-02-01 01:18:16 +00:00
Joshua Leung
dc8078e667 Bugfix [#25885] Auto IK ignores full rotation locks
... actually, this was just an off-by-one bug again.
2011-02-01 00:43:28 +00:00
Campbell Barton
6fcc13a786 disable assert [#25877] Driven shapekeys: incorrect assertions in depsgraph.c 2011-02-01 00:41:15 +00:00
Campbell Barton
11d61383fa workaround [#25845] Empty UI panels
- now writing to RNA is disabled when inside render() call.
- disallow calling operators when writes are disabled.

Rendering runs in a thread so running operators from the thread is not safe unless rendering becomes a blocking operator again.
2011-02-01 00:32:50 +00:00
Campbell Barton
e8f7f42c1d bugfix [#25846] Strange behaviour if index of render.layers[] is out of range 2011-01-31 23:54:51 +00:00
Sergey Sharybin
329e2d8037 Todo issue: sculpting on deformed mesh
Used a crazyspace approach (like in edit mode), but only modifiers with
deformMatricies are allowed atm (currently shapekeys and armature modifiers only).
All the rest modifiers had an warning message that they aren't applied because
of sculpt mode. Deformation of multires is also unsupported.

With all this restictions users will always see the actual "layer" (or maybe
mesh state would be more correct word) they are sculpting on.

Internal changes:
- All modifiers could have deformMatricies callback (the same as deformMatriciesEM but
  for non-edit mode usage)
- Added function to build crazyspace for sculpting (sculpt_get_deform_matrices), but it
  could be generalized for usage in other painting modes (particle edit mode, i.e)

Todo:
- Implement crazyspace correction to support all kinds of deformation modifiers
- Maybe deformation of multires isn't so difficult?
- And maybe we could avoid extra bad-level-stub for ED_sculpt_modifiers_changed
  without code duplicating?
2011-01-31 20:02:51 +00:00
Ton Roosendaal
55865239a2 Bugfix #25874
Area split error: if the first split position was exactly aligned
with another 'edge' it merged the edges, causing the subdivision
layout to go haywire. Only happens in rare occasions, good find
this report :)
2011-01-31 17:28:03 +00:00
Lukas Toenne
31b78fd72e Removed OpenGL blending from node editor backdrop images in alpha channel mode. This is a pure b/w image that doesn't need blending. 2011-01-31 16:34:56 +00:00
Thomas Dinges
996d35afd4 Indentation fix. 2011-01-31 16:17:34 +00:00
Thomas Dinges
05034fb91f Node UI:
* Added Backdrop Panel inside the "Properties" area.
* Hard limit for the "zoom" value. Negative values doesn't make sense. 
* Added a missing notifier for the Node backdrop move operator.
2011-01-31 16:16:15 +00:00