blender.git
7 years agoMerge with trunk r41625
Miika Hamalainen [Mon, 7 Nov 2011 16:36:49 +0000 (16:36 +0000)]
Merge with trunk r41625

7 years agoRNA:
Brecht Van Lommel [Mon, 7 Nov 2011 16:26:53 +0000 (16:26 +0000)]
RNA:
* Expose 3D view camera zoom and offset, needed if you want to precisely
  reconstruct camera parameters.
* Rename SpaceFileBrowser.operator to active_operator, to avoid conflict
  with c++ keyword.

7 years agoquiet warnings when building without libmv
Campbell Barton [Mon, 7 Nov 2011 16:26:23 +0000 (16:26 +0000)]
quiet warnings when building without libmv

7 years agofix for error in own recent commit.
Campbell Barton [Mon, 7 Nov 2011 15:57:52 +0000 (15:57 +0000)]
fix for error in own recent commit.

7 years agouse macro for access to library filepath
Campbell Barton [Mon, 7 Nov 2011 15:55:03 +0000 (15:55 +0000)]
use macro for access to library filepath

7 years agoCMake: add delayed_install macro to specify files to be installed from modules
Brecht Van Lommel [Mon, 7 Nov 2011 15:53:40 +0000 (15:53 +0000)]
CMake: add delayed_install macro to specify files to be installed from modules
other than source/creator.

7 years agoCMake: Boost and OpenImageIO building support (unused still).
Brecht Van Lommel [Mon, 7 Nov 2011 15:44:09 +0000 (15:44 +0000)]
CMake: Boost and OpenImageIO building support (unused still).

7 years agofix for error using freed memory
Campbell Barton [Mon, 7 Nov 2011 15:41:20 +0000 (15:41 +0000)]
fix for error using freed memory

7 years agoSome small fixed for camera tracking:
Sergey Sharybin [Mon, 7 Nov 2011 15:32:32 +0000 (15:32 +0000)]
Some small fixed for camera tracking:

- Lock to selection and center to selection will now work fine with undistorted rendering
- Do not display pyramid for disabled tracks
- Corrected fix for wrong correlation_min property name

7 years agominor warning nicer api use
Campbell Barton [Mon, 7 Nov 2011 15:19:26 +0000 (15:19 +0000)]
minor warning nicer api use

7 years agoTracker/Movie Clip Editor:
Thomas Dinges [Mon, 7 Nov 2011 15:19:13 +0000 (15:19 +0000)]
Tracker/Movie Clip Editor:
* Fix property not showing up: correlation_min, was actually called minimum_correlation in RNA.

7 years ago2.6 UI:
Thomas Dinges [Mon, 7 Nov 2011 14:34:56 +0000 (14:34 +0000)]
2.6 UI:
* Minor tweaks after tomato merge, rest of Tomato UI code is excellent. :)

7 years agoBugfix [#29064] armature with curve contraint - crash
Joshua Leung [Mon, 7 Nov 2011 13:25:17 +0000 (13:25 +0000)]
Bugfix [#29064] armature with curve contraint - crash

Spline IK and Auto-IK working together on the same bone chain could
crash due to the somewhat hacky way that they were sharing the same
list for the "iktree" forest. Resolved by doing what I should have
done from the beginning, and made Spline-IK save its ik chains off
into a separate list.

While this fixes the crash, it might be worth investigating outright
disabling this from working in this case, since it can be a bit
confusing to have it appear to not work.

7 years agoCamera tracking integration
Sergey Sharybin [Mon, 7 Nov 2011 12:56:05 +0000 (12:56 +0000)]
Camera tracking integration
===========================

Rest of changes from camera tracking gsoc project.

This commit includes:

- New compositor nodes:
  * Movie Clip input node
  * Movie Undistortion node
  * Transformation node
  * 2D stabilization node

- Slight changes in existing node to prevent code duplication

7 years agoCamera tracking integration
Sergey Sharybin [Mon, 7 Nov 2011 12:55:18 +0000 (12:55 +0000)]
Camera tracking integration
===========================

Commiting camera tracking integration gsoc project into trunk.

This commit includes:

- Bundled version of libmv library (with some changes against official repo,
  re-sync with libmv repo a bit later)
- New datatype ID called MovieClip which is optimized to work with movie
  clips (both of movie files and image sequences) and doing camera/motion
  tracking operations.
- New editor called Clip Editor which is currently used for motion/tracking
  stuff only, but which can be easily extended to work with masks too.

  This editor supports:
  * Loading movie files/image sequences
  * Build proxies with different size for loaded movie clip, also supports
    building undistorted proxies to increase speed of playback in
    undistorted mode.
  * Manual lens distortion mode calibration using grid and grease pencil
  * Supervised 2D tracking using two different algorithms KLT and SAD.
  * Basic algorithm for feature detection
  * Camera motion solving. scene orientation

- New constraints to "link" scene objects with solved motions from clip:

  * Follow Track (make object follow 2D motion of track with given name
    or parent object to reconstructed 3D position of track)
  * Camera Solver to make camera moving in the same way as reconstructed camera

This commit NOT includes changes from tomato branch:

- New nodes (they'll be commited as separated patch)
- Automatic image offset guessing for image input node and image editor
  (need to do more tests and gather more feedback)
- Code cleanup in libmv-capi. It's not so critical cleanup, just increasing
  readability and understanadability of code. Better to make this chaneg when
  Keir will finish his current patch.

More details about this project can be found on this page:
    http://wiki.blender.org/index.php/User:Nazg-gul/GSoC-2011

Further development of small features would be done in trunk, bigger/experimental
features would first be implemented in tomato branch.

7 years agoRemoving a wrong node_type_storage (checked and confirmed by lukas_t).
Bastien Montagne [Mon, 7 Nov 2011 09:33:49 +0000 (09:33 +0000)]
Removing a wrong node_type_storage (checked and confirmed by lukas_t).

7 years agoFix #29174: Vertex normals temporarily incorrect after deleting a face
Sergey Sharybin [Mon, 7 Nov 2011 07:16:30 +0000 (07:16 +0000)]
Fix #29174: Vertex normals temporarily incorrect after deleting a face

Looks like it was just missed recalc_editnoormals call in Delete Mesh operator.

7 years agofix [#29183] Make duplicates real: parent informations of the group is not copied
Campbell Barton [Mon, 7 Nov 2011 05:28:26 +0000 (05:28 +0000)]
fix [#29183] Make duplicates real: parent informations of the group is not copied

infact this is a feature request but we had reports about it before and its useful to have.

2 new options for OBJECT_OT_duplicates_make_real
- parent to original duplicator
- keep internal hierarchy

7 years agominor edits
Campbell Barton [Mon, 7 Nov 2011 04:36:37 +0000 (04:36 +0000)]
minor edits
- remove unneeded type check from convert grease pencil operator.
- correct some error prints & use __func__.
- make copy_libblock take an ID* argument rather than void*.

7 years agoreplace VECCOPY with copy_v3_v3, same for 2d copy, also added vec copy functions...
Campbell Barton [Mon, 7 Nov 2011 01:38:32 +0000 (01:38 +0000)]
replace VECCOPY with copy_v3_v3, same for 2d copy, also added vec copy functions for int & char.

7 years agomore macro --> BLI math lib, mainly replace VECCOPY in render and blenkernel.
Campbell Barton [Sun, 6 Nov 2011 16:38:21 +0000 (16:38 +0000)]
more macro --> BLI math lib, mainly replace VECCOPY in render and blenkernel.

7 years agoreplace macros for bli math functions in editors
Campbell Barton [Sun, 6 Nov 2011 16:34:44 +0000 (16:34 +0000)]
replace macros for bli math functions in editors

7 years agoreplace macros with bli math functions for nodes
Campbell Barton [Sun, 6 Nov 2011 16:23:28 +0000 (16:23 +0000)]
replace macros with bli math functions for nodes

7 years agoFix for bug #29046, the factor buffer input was not used correctly in curve nodes.
Lukas Toenne [Sun, 6 Nov 2011 15:40:00 +0000 (15:40 +0000)]
Fix for bug #29046, the factor buffer input was not used correctly in curve nodes.

Curve Map exec function (for RGB curves) used a broken test condition for constant factor=1.0f eval. This must take the factor buffer into account, checking the factor vec for default value is not sufficient. These kinds of test should use a function interface, there are probably a lot more bugs like this hidden in the code.

7 years agomore macro --> bli math lib replacements.
Campbell Barton [Sun, 6 Nov 2011 15:39:20 +0000 (15:39 +0000)]
more macro --> bli math lib replacements.

7 years agomisc macro --> bli math lib functions
Campbell Barton [Sun, 6 Nov 2011 15:17:43 +0000 (15:17 +0000)]
misc macro --> bli math lib functions

7 years agoreplace macros with math functions for render code
Campbell Barton [Sun, 6 Nov 2011 14:36:37 +0000 (14:36 +0000)]
replace macros with math functions for render code

7 years agoreplace macros with bli math functions for particles code
Campbell Barton [Sun, 6 Nov 2011 14:00:55 +0000 (14:00 +0000)]
replace macros with bli math functions for particles code

7 years agoSecond attempt at getting rid of bsystem_time()
Joshua Leung [Sun, 6 Nov 2011 12:12:14 +0000 (12:12 +0000)]
Second attempt at getting rid of bsystem_time()

Hopefully this fixes Collada. Can't really compile that to check
here...

7 years agouse BLI math functions for kdopbvh (no functional change)
Campbell Barton [Sun, 6 Nov 2011 12:11:50 +0000 (12:11 +0000)]
use BLI math functions for kdopbvh (no functional change)

7 years agoSplit off 3D Cursor settings from "View" panel in 3D View
Joshua Leung [Sun, 6 Nov 2011 06:19:00 +0000 (06:19 +0000)]
Split off 3D Cursor settings from "View" panel in 3D View

This means that you don't need to have the view panel open all the
time, reducing the amount of scrolling required just to be able to
precisely position the 3D cursor at specific coordinates while
changing some other settings. While most of the settings in the View
panel are less likely to be frequently changed, the 3D cursor can in
some workflows end up needing to be accessed quite frequently.

7 years agoRemoved old "bsystem_time()" function, which by now is just a
Joshua Leung [Sun, 6 Nov 2011 06:08:18 +0000 (06:08 +0000)]
Removed old "bsystem_time()" function, which by now is just a
duplicate of BKE_curframe() which just takes two extra args.

For the few calls in the physics engine where CFRA+1 instead of CFRA
was being used, I've added a new BKE_nextframe() call, which will
calculate for CFRA+1 instead of CFRA in much the same way that
bsystem_time() would end up doing things (which means including
subframe steps).

7 years agoAs discussed on the mailing list, removing the non-functional,
Joshua Leung [Sun, 6 Nov 2011 05:46:45 +0000 (05:46 +0000)]
As discussed on the mailing list, removing the non-functional,
incompatible, and unmaintainable Time Offset cruft.

- Slow Parenting lives another day (just), although it now carries
appropriate cautionary disclaimers. It's only really for the Game
Engine nowadays, as that's the only place where it can possibly work
with any reliability.
- "Animation Hacks" panel is now "Relations Extras". I could've merged
the two panels, though I figured these options weren't that frequently
used to justify taking up screen-space by default along with the panel

7 years agoPyUnicode_From_STR_String utility function which passes STR_String to PyUnicode_FromS...
Campbell Barton [Sun, 6 Nov 2011 01:39:36 +0000 (01:39 +0000)]
PyUnicode_From_STR_String utility function which passes STR_String to PyUnicode_FromStringAndSize (saves a call to strlen).

Also made CValue::ConvertKeysToPython use faster list creation and improved some of the macro formatting.

7 years agoremove po/ since the workflow for translations uses branches which isnt that useful...
Campbell Barton [Sat, 5 Nov 2011 14:26:18 +0000 (14:26 +0000)]
remove po/ since the workflow for translations uses branches which isnt that useful to have within blenders source dir.

For now treat translations as binary files - just access from 'release/datafiles/locale'

7 years agoupdate path loactions for external po/
Campbell Barton [Sat, 5 Nov 2011 13:21:03 +0000 (13:21 +0000)]
update path loactions for external po/

7 years agoCode refactoring: split lamp functions from object.c into new lamp.c.
Brecht Van Lommel [Sat, 5 Nov 2011 13:11:49 +0000 (13:11 +0000)]
Code refactoring: split lamp functions from object.c into new lamp.c.

7 years agoCode refactoring: split camera functions from object.c into new camera.c.
Brecht Van Lommel [Sat, 5 Nov 2011 13:00:39 +0000 (13:00 +0000)]
Code refactoring: split camera functions from object.c into new camera.c.

7 years agoremove dirs to make them external's
Campbell Barton [Sat, 5 Nov 2011 12:16:40 +0000 (12:16 +0000)]
remove dirs to make them external's

7 years agouse (const char*) rather than (char*) where possible.
Campbell Barton [Sat, 5 Nov 2011 11:04:28 +0000 (11:04 +0000)]
use (const char*) rather than (char*) where possible.
also removed some unused function definitons.

7 years agoFix #29162: grease pencil did not decrement user count on adding new datablock
Brecht Van Lommel [Sat, 5 Nov 2011 10:48:43 +0000 (10:48 +0000)]
Fix #29162: grease pencil did not decrement user count on adding new datablock
to replace an existing one.

7 years agoVIEW3D_PT_tools_meshedit_options panel:
Thomas Dinges [Sat, 5 Nov 2011 10:34:29 +0000 (10:34 +0000)]
VIEW3D_PT_tools_meshedit_options panel:
* Removed ob check and add a proper poll function.

7 years agoDisable x-mirror option when proportional edit is enabled.
Sergey Sharybin [Sat, 5 Nov 2011 10:19:36 +0000 (10:19 +0000)]
Disable x-mirror option when proportional edit is enabled.

This option isn't supported because it behaves strangely in 50% of cases and
hopefully disabled x-mirror will stop users be confused by this.

7 years agopy operators - don't use the screen as an operators ID anymore, screen's don't store...
Campbell Barton [Sat, 5 Nov 2011 08:40:07 +0000 (08:40 +0000)]
py operators - don't use the screen as an operators ID anymore, screen's don't store operator instances and operator functions have access to the context if they need the current screen.

also add some more py api file descriptions.

7 years agodocumentation - brief descriptions for bpy api files.
Campbell Barton [Sat, 5 Nov 2011 08:21:12 +0000 (08:21 +0000)]
documentation - brief descriptions for bpy api files.

7 years agoMerge with trunk r41545
Miika Hamalainen [Sat, 5 Nov 2011 08:04:49 +0000 (08:04 +0000)]
Merge with trunk r41545

7 years agoDynamic Paint:
Miika Hamalainen [Sat, 5 Nov 2011 07:39:59 +0000 (07:39 +0000)]
Dynamic Paint:
* Fixed another issue from latest alpha blending changes. Zero alpha brush was painting black color.
* Fix: "Inner Proximity" brush setting was also affecting displace.
* Other small code changes.

7 years agomacro formatting & remve some unused code.
Campbell Barton [Sat, 5 Nov 2011 05:44:52 +0000 (05:44 +0000)]
macro formatting & remve some unused code.

7 years agoGPU Buffers
Nicholas Bishop [Sat, 5 Nov 2011 03:29:37 +0000 (03:29 +0000)]
GPU Buffers

Small type cleanup, use `GPU_Buffers *' rather than `void *'. Should
be no functional changes.

7 years agomore DNA object edits
Campbell Barton [Sat, 5 Nov 2011 03:02:55 +0000 (03:02 +0000)]
more DNA object edits
- remove 'path' pointer, wasnt used anywhere.
- remove comments about what each game flag 'bit' does, these are defines now.
- reduce the size of DupliObject 8 bytes.
also commented some of the struct members.

7 years ago- view bounds (now split from collision bounds) was still being used for bge physics...
Campbell Barton [Sat, 5 Nov 2011 02:30:25 +0000 (02:30 +0000)]
- view bounds (now split from collision bounds) was still being used for bge physics in one place, comparison was incorrectly treating it as a flag too.
- cleanup Object struct - remove pad and unused flags, convert some shot's to char's, saving 24 bytes.

7 years agomisc doc edits
Campbell Barton [Sat, 5 Nov 2011 01:48:10 +0000 (01:48 +0000)]
misc doc edits
- remove recently added sphinx reference workaround.
- tested doxygen, correct some warnings, set tab width and added pymathutils group.
- added convenience target 'make doc_doxy'

7 years agoFix #29138: changing game engine physics type from soft body to occluder, navmesh
Brecht Van Lommel [Sat, 5 Nov 2011 00:59:50 +0000 (00:59 +0000)]
Fix #29138: changing game engine physics type from soft body to occluder, navmesh
or no collision did not clear flag properly, causing soft body to still be
partially applied.

7 years agoFix #29141: fill / beautify fill produced incorrect results in edge selection mode.
Brecht Van Lommel [Sat, 5 Nov 2011 00:52:01 +0000 (00:52 +0000)]
Fix #29141: fill / beautify fill produced incorrect results in edge selection mode.

7 years agoForgot to initialize sensor height when creating new camera.
Sergey Sharybin [Fri, 4 Nov 2011 22:13:30 +0000 (22:13 +0000)]
Forgot to initialize sensor height when creating new camera.

7 years agoUI: fix region embossing being drawn 1 pixel misaligned, due to wrong opengl state.
Brecht Van Lommel [Fri, 4 Nov 2011 21:29:28 +0000 (21:29 +0000)]
UI: fix region embossing being drawn 1 pixel misaligned, due to wrong opengl state.

7 years agoCamera UI: tweaking panels, move clipping back because it's not part of the
Brecht Van Lommel [Fri, 4 Nov 2011 18:10:50 +0000 (18:10 +0000)]
Camera UI: tweaking panels, move clipping back because it's not part of the
preset, and move depth of field settings to a separate panel.

7 years agoFix #28865: Draw_bounds_type does not display Polyhedron or Capsule types
Sergey Sharybin [Fri, 4 Nov 2011 15:53:34 +0000 (15:53 +0000)]
Fix #28865: Draw_bounds_type does not display Polyhedron or Capsule types

Separate DNA properties for bounding box used for bounding box display
in 3d viewport and bounding box used for collision detection in game engine.

Bumped subversion for proper updating old files to new system, but it
need more complex testing.

7 years agoFix #29024: Logic Bricks allow same name for multiple bricks
Sergey Sharybin [Fri, 4 Nov 2011 15:53:20 +0000 (15:53 +0000)]
Fix #29024: Logic Bricks allow same name for multiple bricks

Check for unique name when setting name for logic bricks.

7 years agoFix #29155: Inconsistency with 0 and Del hotkeys
Sergey Sharybin [Fri, 4 Nov 2011 15:53:12 +0000 (15:53 +0000)]
Fix #29155: Inconsistency with 0 and Del hotkeys

Use del key to reset values in widgets like color selection and histogram.

7 years agocorrect some warnings, also sensor_x was being paassed to object_camera_matrix(....
Campbell Barton [Fri, 4 Nov 2011 15:21:34 +0000 (15:21 +0000)]
correct some warnings, also sensor_x was being paassed to object_camera_matrix(...) for x and y args, looks like an accident

7 years agoConfigurable sensor size:
Sergey Sharybin [Fri, 4 Nov 2011 14:36:06 +0000 (14:36 +0000)]
Configurable sensor size:

- Added support of variable size sensor width and height.
- Added presets for most common cameras, also new presets can be defined by user.
- Added option to control which dimension (vertical or horizontal) of sensor
  size defines FOV. Old behavior of automatic FOV calculation is also kept.
- Renderer, viewport, game engine and collada importer/exporter should
  deal fine with this changes. Other exporters would be updated soon.

7 years agoFix #29139: Comp Group nodes don't retain name
Sergey Sharybin [Fri, 4 Nov 2011 13:31:15 +0000 (13:31 +0000)]
Fix #29139: Comp Group nodes don't retain name

Added tree node id browser to Active Node panel so name of nodetree editing in
group node can be easily changed now.

7 years agoDepsgraph: add "Dependency Relations" operator to print the dependency graph to
Brecht Van Lommel [Fri, 4 Nov 2011 13:17:35 +0000 (13:17 +0000)]
Depsgraph: add "Dependency Relations" operator to print the dependency graph to
the console, useful for debugging and understanding the relations.

7 years agoFix #29146: object used for particle instancing did not update when affected
Brecht Van Lommel [Fri, 4 Nov 2011 12:53:46 +0000 (12:53 +0000)]
Fix #29146: object used for particle instancing did not update when affected
by an object on a hidden layer. Dependency was set in the wrong direction.

7 years agoChanges to node sockets default values to deal better with artists workflow
Sergey Sharybin [Fri, 4 Nov 2011 12:50:29 +0000 (12:50 +0000)]
Changes to node sockets default values to deal better with artists workflow
(in most cases it needed to do extra tweaks to values which was annoying).

Patch by Sebastian K├Ânig.

7 years agoFix #29051: Set Origin - Center: Bounds does not work
Sergey Sharybin [Fri, 4 Nov 2011 11:37:13 +0000 (11:37 +0000)]
Fix #29051: Set Origin - Center: Bounds does not work

Operator sued to check incorrect property to check initialization.

Patch by Kalle-Samuli Riihikoski, thanks!

7 years agoDo not run versioning code for new files. All stuff from current verisoning
Sergey Sharybin [Fri, 4 Nov 2011 09:29:58 +0000 (09:29 +0000)]
Do not run versioning code for new files. All stuff from current verisoning
block was written before 2.60 release, so it should be safe to move it into
if'ed block checking version number.

This patch should also fix bug #29147 which was caused by old->new particle
rotation mode switch.

7 years agocleanup some BLF macros and dont over-alloc BGE's PyObjectPlus when setting strings...
Campbell Barton [Fri, 4 Nov 2011 09:14:49 +0000 (09:14 +0000)]
cleanup some BLF macros and dont over-alloc BGE's PyObjectPlus when setting strings (better change then the one I made recently).

7 years agoComments and other text editing:
Joshua Leung [Fri, 4 Nov 2011 08:08:47 +0000 (08:08 +0000)]
Comments and other text editing:
* Renamed one of the two "File is Saved" entries, as having two
entries with the same name in the Datablocks viewer was confusing
* Edited the tooltip text for "speed" option for dupliframes to
clarify what it does (or what it's supposed to do)

7 years agoBugfix [#28515] Dupliframes start/end animation broken since 2.56A
Joshua Leung [Fri, 4 Nov 2011 08:06:46 +0000 (08:06 +0000)]
Bugfix [#28515] Dupliframes start/end animation broken since 2.56A

Due to changes with the way that dupliframes were being evaluated (one
of those being that the animation for the object being animated would
get reevaluated for every frame sample for dupliframes) to get them
working properly again sometime during the 2.5 series, the dupliframe-
sampling loop would be prematurely terminated on the first frame in
this example.

That is because after the first step of the loop, the ob->dupend
property would have changed its value as it was being animated,
leading to the loop terminating, and only the a single dupli getting
added.

7 years ago- added docs and examples for bpy.app.handlers
Campbell Barton [Fri, 4 Nov 2011 04:27:46 +0000 (04:27 +0000)]
- added docs and examples for bpy.app.handlers
- correct error in own last commit for BKE_screen_find_big_area()

7 years agoEnabled ndof devices for controlling colour wheel and cube UI controls
Matt Ebb [Fri, 4 Nov 2011 02:31:00 +0000 (02:31 +0000)]
Enabled ndof devices for controlling colour wheel and cube UI controls
(eg. colour pickers). Tilting the ndof device up and down and rolling it left and
right will move the 'colour cursor' in screen x and y, and twisting the ndof device
will rotate the cursor around the colour wheel (hue). Now you can turn off the
lights and pretend you have a fancy DI deck!

7 years agoutility function to find the biggest area: BKE_screen_find_big_area(...), was being...
Campbell Barton [Fri, 4 Nov 2011 01:15:04 +0000 (01:15 +0000)]
utility function to find the biggest area: BKE_screen_find_big_area(...), was being done with static functions that were copied about.

7 years agocompile without python works again
Campbell Barton [Thu, 3 Nov 2011 23:20:54 +0000 (23:20 +0000)]
compile without python works again

7 years agoFix #28998: sequence rendering with wrong progress bar
Sergey Sharybin [Thu, 3 Nov 2011 17:06:12 +0000 (17:06 +0000)]
Fix #28998: sequence rendering with wrong progress bar

Show overall progress when doing sequence rendering. Nice for cases when
you're using sequencer to combine video strips only, without rendering
scenes and so. If scene strips are used in sequencer, per-frame rendering
would be used (because of scene rendering sets per-frame progress).

7 years agoDepsgraph: more tweaking for update acces from python API
Brecht Van Lommel [Thu, 3 Nov 2011 16:41:48 +0000 (16:41 +0000)]
Depsgraph: more tweaking for update acces from python API

* Move scene_update_pre callback before depsgraph flusing so it works better
  when you do modifications on objects then.
* Fix missing update after making modifications in frame_change_pre, recalc
  flags were not being flushed.

7 years agoFix #29005: Bezier/Surface Datablock switching bug?
Sergey Sharybin [Thu, 3 Nov 2011 16:16:19 +0000 (16:16 +0000)]
Fix #29005: Bezier/Surface Datablock switching bug?

This commit updates curve datablock to respect curve dimension flag
when setting datablock for curve.

Not ideal but this makes behavior quite expected, avoids big changes in
curves core stuff which depends on object type and prevents restrictions
on changing data datablock which works in general cases.

7 years agopython string conversion
Campbell Barton [Thu, 3 Nov 2011 14:09:18 +0000 (14:09 +0000)]
python string conversion
- use _PyUnicode_AsStringAndSize where possible
- use %R for PyErr_Format(...) rather then running repr on the object explicitly
- use const char

7 years agouse Py_TYPE macro (no functional changes)
Campbell Barton [Thu, 3 Nov 2011 13:10:37 +0000 (13:10 +0000)]
use Py_TYPE macro (no functional changes)

7 years agopatch [#27917] MARKER MENUS: Unification and adding "Duplicate Marker to Scene..."
Campbell Barton [Thu, 3 Nov 2011 12:47:39 +0000 (12:47 +0000)]
patch [#27917] MARKER MENUS: Unification and adding "Duplicate Marker to Scene..."
from Troy Sobotka (sobotka), with edits

- remove Markers from Ctrl+L menu (was out of place here and was broken from recent changes to marker operators)
- further de-duplicte scripts by having all menus call the same function: marker_menu_generic().

this fixes bug [#29083] too.

7 years agoFix #28935: Material display error VBO + Texture Solid + Modifier
Sergey Sharybin [Thu, 3 Nov 2011 12:43:45 +0000 (12:43 +0000)]
Fix #28935: Material display error VBO + Texture Solid + Modifier

7 years agoScons:
Thomas Dinges [Thu, 3 Nov 2011 12:40:15 +0000 (12:40 +0000)]
Scons:
* Basic support for OpenImageIO and Boost libraries
* Path to libraries added for win32/64-vc-config.py, still commented out.

7 years agoFix #29122: Curve Radius keyable from Outliner Datablock view but not Transform Radiu...
Sergey Sharybin [Thu, 3 Nov 2011 12:28:32 +0000 (12:28 +0000)]
Fix #29122: Curve Radius keyable from Outliner Datablock view but not Transform Radius field in 3D Viewport

If there's only one control point selected, show radius property for this point, not for medium value.

7 years agoScons:
Thomas Dinges [Thu, 3 Nov 2011 12:24:29 +0000 (12:24 +0000)]
Scons:
* Minor cleanup

7 years agohopefully fix msvc build error
Campbell Barton [Thu, 3 Nov 2011 12:01:18 +0000 (12:01 +0000)]
hopefully fix msvc build error

7 years agoBugfix [#29113] "Follow path" constraint subframes calculated
Joshua Leung [Thu, 3 Nov 2011 11:20:22 +0000 (11:20 +0000)]
Bugfix [#29113] "Follow path" constraint subframes calculated
incorrectly

"Follow Path" constraint was applying subframe offsets to the curve-
path evaltime value for non-fixed case. However, it turns out that
when doing old-style mblur, this results in the offset getting applied
twice, resulting in incorrect values (i.e. by the time the constraint
gets ctime, this already has had subframe offset applied, and so too
has curve evaltime).

7 years agoDepsgraph/Python: ensure datablocks with animation data get tagged as being
Brecht Van Lommel [Thu, 3 Nov 2011 10:03:08 +0000 (10:03 +0000)]
Depsgraph/Python: ensure datablocks with animation data get tagged as being
updated on frame change.

7 years agocorrect error in stub
Campbell Barton [Thu, 3 Nov 2011 09:20:54 +0000 (09:20 +0000)]
correct error in stub

7 years agomodify previous api feature to tag functions as permanent, use nicer decorator style...
Campbell Barton [Thu, 3 Nov 2011 09:13:47 +0000 (09:13 +0000)]
modify previous api feature to tag functions as permanent, use nicer decorator style, eg:

# --------

import bpy
from bpy.app.handlers import persistent

@persistent
def my_func(scene):
    pass

bpy.app.handlers.frame_change_pre.append(my_func)

7 years agoability to have permanent callbacks that stay active when new blend files are loaded.
Campbell Barton [Thu, 3 Nov 2011 06:53:52 +0000 (06:53 +0000)]
ability to have permanent callbacks that stay active when new blend files are loaded.

this works by tagging functions, eg:

  def my_func(scene):
      pass

  bpy.app.handlers.permanent_tag(my_func, True)  # <-- important bit
  bpy.app.handlers.frame_change_pre.append(my_func)

7 years agofix for warning on osx
Campbell Barton [Thu, 3 Nov 2011 04:58:11 +0000 (04:58 +0000)]
fix for warning on osx

7 years agofix regression [#29076] 16bit Tiff save broken in Blender 2.60
Campbell Barton [Thu, 3 Nov 2011 03:51:48 +0000 (03:51 +0000)]
fix regression [#29076] 16bit Tiff save broken in Blender 2.60

7 years agocorrect spelling mistakes
Campbell Barton [Thu, 3 Nov 2011 03:00:45 +0000 (03:00 +0000)]
correct spelling mistakes

7 years agopatch [#28947] Patches for #28943 (Support for XDG Base Directory Specification)
Campbell Barton [Wed, 2 Nov 2011 22:00:22 +0000 (22:00 +0000)]
patch [#28947] Patches for #28943 (Support for XDG Base Directory Specification)
from Cosme

7 years agocmake could ignore defines for python lib/include passed from the command line if...
Campbell Barton [Wed, 2 Nov 2011 21:35:00 +0000 (21:35 +0000)]
cmake could ignore defines for python lib/include passed from the command line if both weren't defined.

7 years agoDepsgraph/Python: callbacks and properties to detect datablock changes
Brecht Van Lommel [Wed, 2 Nov 2011 20:56:52 +0000 (20:56 +0000)]
Depsgraph/Python: callbacks and properties to detect datablock changes

* Adds two new python handlers: scene_update_pre() and scene_update_post()
  These run before and after Blender does a scene update on making modifications
  to the scene.
* Datablocks now have an is_updated property. This will be set to true in the
  above callbacks if the datablock was tagged to be updated. This works for the
  most common datablocks used for rendering: object, material, world, lamsp,
  texture, mesh, curve.
* Datablock collections also have an is_updated property. If this is set, it
  means one datablock of this type was added, removed or modified. It's also
  useful as a quick check to avoid looping over all datablocks.
* RenderEngine.view_update() can also check these properties, for interactive
  viewport rendering.

http://wiki.blender.org/index.php/Dev:2.6/Source/Render/UpdateAPI

7 years agoRenderEngine/Nodes: system to check for shading nodes compatibility
Brecht Van Lommel [Wed, 2 Nov 2011 19:24:30 +0000 (19:24 +0000)]
RenderEngine/Nodes: system to check for shading nodes compatibility

* Scene.use_shading_nodes property to check if RenderEngine is using new shading
  nodes system, and RenderEngine.bl_use_shading_nodes to set this.
* Add mechanism for tagging nodes as being compatible with the old/new system.

7 years agoNodes: add support for shader nodes on world and lamps, in addition to materials.
Brecht Van Lommel [Wed, 2 Nov 2011 18:55:32 +0000 (18:55 +0000)]
Nodes: add support for shader nodes on world and lamps, in addition to materials.
The internal render engine does not support them, and they are not accesible in
the UI yet, but cycles will use them.

7 years agoRenderEngine api: support for viewport rendering, details here:
Brecht Van Lommel [Wed, 2 Nov 2011 18:20:53 +0000 (18:20 +0000)]
RenderEngine api: support for viewport rendering, details here:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/RenderEngineAPI

* This adds a Rendered draw type in the 3D view, only available when
  the render engine implements the view_draw callback.
* 3D view now stores a pointer to a RenderEngine.

* view_draw() callback will do OpenGL drawing instead of the viewport.
* view_update() callback is called after depsgraph updates.