9 years agolink mingw libstdc++ and libgcc libs statically so users dont need mingw installed...
Campbell Barton [Thu, 5 Jan 2012 07:52:03 +0000 (07:52 +0000)]
link mingw libstdc++ and libgcc libs statically so users dont need mingw installed to use mingw builds

9 years agomore edits to r43145,
Campbell Barton [Thu, 5 Jan 2012 06:34:14 +0000 (06:34 +0000)]
more edits to r43145,
- remove redundant check in new prop operator which is covered by operators poll func.
- use get_ob_property to get the object prop in BL_ConvertTextProperty() rather then looping for it.

9 years agoedit on recent font UI changes.
Campbell Barton [Thu, 5 Jan 2012 06:12:26 +0000 (06:12 +0000)]
edit on recent font UI changes.

don't show the text objects body in the ui - this could be pages of text and even though it only draws part of this, it still allocates and frees the string on every draw.

9 years agoadd bpy collection method .find(key), so you can get the index of an item in a collec...
Campbell Barton [Thu, 5 Jan 2012 06:05:45 +0000 (06:05 +0000)]
add bpy collection method .find(key), so you can get the index of an item in a collection, -1 if not found.

use this to replace bge text ui py function.

9 years agoBGE Font Object: fix for relative path not working AND packed fonts not working
Dalai Felinto [Thu, 5 Jan 2012 06:02:42 +0000 (06:02 +0000)]
BGE Font Object: fix for relative path not working AND packed fonts not working
[I don't think anyone has ever reported those, what makes me slightly sad but carry on ;)]

Those fixes introduce a more generic function to load a font before calling BLF_load.
I think it should move to be part of Blender util routines or BLF itself.

For the time being here will make it. Once we get <builtin> font working we go for this.
Thanks Diego Borghetti for the usual assistance with blf.

9 years agocorrect api doc examples and a typo
Campbell Barton [Thu, 5 Jan 2012 05:43:35 +0000 (05:43 +0000)]
correct api doc examples and a typo

9 years agoThis patch creates an interface for ["Text"] properties in Font objects.
Dalai Felinto [Wed, 4 Jan 2012 21:40:00 +0000 (21:40 +0000)]
This patch creates an interface for ["Text"] properties in Font objects.


Simple test file:
(I'll commit this to the text suite later)

Code Explanation:
(1) it adds a toggle to add/remove a "Text" gameproperty.
 - internally this property is just another game property (so we can find it within the lookup).
 - the property itself has no 'value', the interface shows the content of instead (why? because gameproperties are per object, while the text is per data).

(2) at BGE converter time it sets the current value of the to the ["Text"] property.

(3) if you change object.text (bge text property) it automatically convert ["Text"] to a CStringValue.

*** that means if the original property was a CIntegerValue, it will be converted to CStringValue forever ***

* the only to do I can think of is to add a warning at doversion time if user has ["Text"] property for a Font object *
* when that happens we print a warning in console/popup.*

9 years agoCycles: device code refactoring, no functional changes.
Brecht Van Lommel [Wed, 4 Jan 2012 18:06:32 +0000 (18:06 +0000)]
Cycles: device code refactoring, no functional changes.

9 years agoCamera tracking: added depth object to Follow Track constraint
Sergey Sharybin [Wed, 4 Jan 2012 17:20:08 +0000 (17:20 +0000)]
Camera tracking: added depth object to Follow Track constraint

If this object is defined, object with Follow Track constraint would be
projected into surface of this depth object.
If object is not set or there's no projection onto it, projection plane
calculated based on original object position would be used.

This allows to make cheap facial mocap.

9 years agoFix #29764: Crash when border rendering in sequencer. (Not Cycles related)
Sergey Sharybin [Wed, 4 Jan 2012 15:28:03 +0000 (15:28 +0000)]
Fix #29764: Crash when border rendering in sequencer. (Not Cycles related)

Sequencer render context should be as large as the whole frame when rendering
using border without clipping.

Can be implemented in more clear way but it'll require more global refactoring.

9 years agoCamera tracking: more accurate track preview widget
Sergey Sharybin [Wed, 4 Jan 2012 15:25:43 +0000 (15:25 +0000)]
Camera tracking: more accurate track preview widget

- Added 1px extra margin to deal with bicubic interpolation nicely
- Code should be a bit more clear now

9 years agoCamera tracking: fixed snap cursor to selection operator when witness camera is active
Sergey Sharybin [Wed, 4 Jan 2012 11:20:50 +0000 (11:20 +0000)]
Camera tracking: fixed snap cursor to selection operator when witness camera is active

9 years agoFix #29671: Issues with .mts video files
Sergey Sharybin [Wed, 4 Jan 2012 09:27:34 +0000 (09:27 +0000)]
Fix #29671: Issues with .mts video files

Video frame decoding used to leave packet reading cycle before frame
is fully decoded in cases frame is encoded by several packets.

9 years agoCamera tracking: fixes in Link Empty to Track and Bundles to Mesh operators
Sergey Sharybin [Wed, 4 Jan 2012 09:19:39 +0000 (09:19 +0000)]
Camera tracking: fixes in Link Empty to Track and Bundles to Mesh operators

- This operators always used to work with tracks for camera
- Properly set camera and object fields to Follow Track constraint
- TrackingObject.tracks is now pointing to actual list of tracks for
  camera objects.

9 years agoObject tracking: now Object Solver constraint can be converted to F-Curves
Sergey Sharybin [Wed, 4 Jan 2012 08:43:28 +0000 (08:43 +0000)]
Object tracking: now Object Solver constraint can be converted to F-Curves

9 years agode-duplicate wave modifier texture function.
Campbell Barton [Wed, 4 Jan 2012 05:39:56 +0000 (05:39 +0000)]
de-duplicate wave modifier texture function.

cmon - copying large functions between files is obviously stupid, dont do it!

9 years agoreplace wave spesific enum with generic onces
Campbell Barton [Wed, 4 Jan 2012 05:24:01 +0000 (05:24 +0000)]
replace wave spesific enum with generic onces

9 years agoedits to UV project modifier which make it easier to sync with bmesh.
Campbell Barton [Wed, 4 Jan 2012 05:13:29 +0000 (05:13 +0000)]
edits to UV project modifier which make it easier to sync with bmesh.

9 years agobugfix - get_texture_coords() used by wave/warp/weight modifiers could initialize...
Campbell Barton [Wed, 4 Jan 2012 04:56:06 +0000 (04:56 +0000)]
bugfix - get_texture_coords() used by wave/warp/weight modifiers could initialize a verts coords from the 4th UV of a triangle face.

9 years agoCorrect use of your vs you're in py api docs
Campbell Barton [Wed, 4 Jan 2012 03:22:37 +0000 (03:22 +0000)]
Correct use of your vs you're in py api docs

9 years agoderivative maps must take into account that texture scales can be negative
Morten Mikkelsen [Tue, 3 Jan 2012 22:27:30 +0000 (22:27 +0000)]
derivative maps must take into account that texture scales can be negative

9 years agocalculate factor before using MAX2 macro
Morten Mikkelsen [Tue, 3 Jan 2012 22:18:52 +0000 (22:18 +0000)]
calculate factor before using MAX2 macro

9 years agoderivative maps were not working correctly with UV scale (the texture setting size)
Morten Mikkelsen [Tue, 3 Jan 2012 22:09:22 +0000 (22:09 +0000)]
derivative maps were not working correctly with UV scale (the texture setting size)

9 years agoFix:
Diego Borghetti [Tue, 3 Jan 2012 19:41:36 +0000 (19:41 +0000)]
  [#25834] no color of textobjects in game engine when combined with
   textured objects
  [#26893] Curruption of displayed text (debug properties/fps info or bgui)
    when using animated/tile uv mode

The first bug was beacuse a bad mode on the texture environment, now
we save the current glTexEnvi, set the one that we need, draw and
restore the original at the end.

The second was because a missing call to glLoadIdentity for the
texture matrix and as we do before, now we do a gl-Push/Identity/Pop
for this matrix to.

The first problem was solved by Kanttori and the second by Dalai.

9 years agoFix for follow track constraint using incorrect icon name
Sergey Sharybin [Tue, 3 Jan 2012 14:56:48 +0000 (14:56 +0000)]
Fix for follow track constraint using incorrect icon name

9 years agofixes to mathutils from Andew Hale
Campbell Barton [Tue, 3 Jan 2012 14:34:41 +0000 (14:34 +0000)]
fixes to mathutils from Andew Hale
- docstring edits
- normalize ignores W axis as its supposed to.

9 years agoCode cleanup - removing some ugly/obsolete stuff I came across while hacking
Joshua Leung [Tue, 3 Jan 2012 10:55:46 +0000 (10:55 +0000)]
Code cleanup - removing some ugly/obsolete stuff I came across while hacking
some other stuff earlier

9 years agoRemesh Modifier:
Thomas Dinges [Tue, 3 Jan 2012 04:03:41 +0000 (04:03 +0000)]
Remesh Modifier:
* Fix for Campbell's "option to build without remesh modifier for cmake and scons" commit, this broke scons!

9 years agoerror in recent commit - disallow selecting hidden verts.
Campbell Barton [Tue, 3 Jan 2012 02:45:03 +0000 (02:45 +0000)]
error in recent commit - disallow selecting hidden verts.

9 years agofix [#29761] Texture painting with interpolation ignores use alpha
Campbell Barton [Tue, 3 Jan 2012 02:26:32 +0000 (02:26 +0000)]
fix [#29761] Texture painting with interpolation ignores use alpha
reporter - Shawn Zilbert (enigmatic) included patch.

9 years agoBugfix [#29629] UV animation stops working forever if Edit mode entered
Joshua Leung [Tue, 3 Jan 2012 02:11:11 +0000 (02:11 +0000)]
Bugfix [#29629] UV animation stops working forever if Edit mode entered
Thanks Sergey for the patch!

This bug, and many like it would arise because at some point a F-Curve would get
detected as being unable to be resolved (when trying to display its name in an
Animation Editor), so gets tagged as being "disabled". It was assumed that such
channels usually belonged to deleted data or stuff that wouldn't be able to be
resolved again for a long time. However, in cases like UV settings, they may
only be unavailable temporarily.

As a compromise, this patch clears this disabled flag if a channel is found to
be now working when (in the process of finding out its name when redrawing an
Animation Editor) it can be resolved, in the same place where the disabling was
taking place. This doesn't work fullproof in tests I've done, but should be
nicer than before.

9 years agoFix #29695: cycles particle emitter not being properly hidden.
Brecht Van Lommel [Mon, 2 Jan 2012 19:44:13 +0000 (19:44 +0000)]
Fix #29695: cycles particle emitter not being properly hidden.

9 years agoFix #29740: missing cycles viewport update with animated node socket values.
Brecht Van Lommel [Mon, 2 Jan 2012 19:44:07 +0000 (19:44 +0000)]
Fix #29740: missing cycles viewport update with animated node socket values.

9 years agoRemove some silly variable copies that stuck around from a previous refactor.
Nicholas Bishop [Mon, 2 Jan 2012 19:01:16 +0000 (19:01 +0000)]
Remove some silly variable copies that stuck around from a previous refactor.

9 years agoreplace:
Campbell Barton [Mon, 2 Jan 2012 17:15:24 +0000 (17:15 +0000)]
  CTX_data_pointer_get_type(C, "object", &RNA_Object).data
with api call:

... since getting the context object is such a common operation.

9 years agoweight paint buttons now work in weight paint vertex select mode
Campbell Barton [Mon, 2 Jan 2012 16:59:46 +0000 (16:59 +0000)]
weight paint buttons now work in weight paint vertex select mode

9 years agoFix #29746: cycles crash with border render.
Brecht Van Lommel [Mon, 2 Jan 2012 16:20:18 +0000 (16:20 +0000)]
Fix #29746: cycles crash with border render.

9 years agopy scripts - replace bad uses of len(),
Campbell Barton [Mon, 2 Jan 2012 16:18:39 +0000 (16:18 +0000)]
py scripts - replace bad uses of len(),
checking if the collection is True is faster since it only checks if it has at least one item, rather then going over all items.

9 years agoFix #29755: cycles crash with array modifier that can produce material indices
Brecht Van Lommel [Mon, 2 Jan 2012 15:51:49 +0000 (15:51 +0000)]
Fix #29755: cycles crash with array modifier that can produce material indices
that are out of bounds.

9 years agonicer string delimiter handling for Ctrl+Left/Right arrows, py console could use...
Campbell Barton [Mon, 2 Jan 2012 15:27:01 +0000 (15:27 +0000)]
nicer string delimiter handling for Ctrl+Left/Right arrows, py console could use this functon too.

9 years agoFix #29738: missing includes in RNA, patch by Dan Eicher.
Brecht Van Lommel [Mon, 2 Jan 2012 13:45:42 +0000 (13:45 +0000)]
Fix #29738: missing includes in RNA, patch by Dan Eicher.

9 years agoFixes two crashers for games, with GHOST under SDL:
Alex Fraser [Mon, 2 Jan 2012 12:35:06 +0000 (12:35 +0000)]
Fixes two crashers for games, with GHOST under SDL:
- Fixes SDL fullscreen mode for game engine (blenderplayer). Mode switching (resolution changes) not supported yet though.
- Fixes embedded game engine exit.
See patch tracker [#29748].

9 years agoMode switching for GHOST under X11: adds the ability to change screen resolutions...
Alex Fraser [Mon, 2 Jan 2012 12:25:14 +0000 (12:25 +0000)]
Mode switching for GHOST under X11: adds the ability to change screen resolutions in the blenderplayer on GNU/Linux.
Code ported from Quake 2.

9 years agoAdded OpenMP multithreading for SPH particle systems.
Alex Fraser [Mon, 2 Jan 2012 12:10:50 +0000 (12:10 +0000)]
Added OpenMP multithreading for SPH particle systems.

9 years agoSPH particle simulation fixes:
Alex Fraser [Mon, 2 Jan 2012 11:46:02 +0000 (11:46 +0000)]
SPH particle simulation fixes:
 - Using correct frame to update particle system tree for SPH simulation (i.e. psys_update_particle_bvhtree(psys, cfra)).
 - Increased SPH neighbour count to 512 - this greatly reduces BVH tree search bias, and makes simulations more symmetrical.
Adaptive time step improvements:
 - Fix for relative velocities based on previous state (fixes fast-moving particle clusters).
 - Only reporting on element size once per time step. Prevents incorrect Courant number from being calculated when using multiple-step integration.

9 years agoslice and iterator access for matrix.col/row so you can do...
Campbell Barton [Mon, 2 Jan 2012 09:04:37 +0000 (09:04 +0000)]
slice and iterator access for matrix.col/row so you can do...

  a, b = mat.col[0:2]


  for a in mat.col: ...

9 years agoremove Id's that crept in
Campbell Barton [Mon, 2 Jan 2012 02:13:31 +0000 (02:13 +0000)]
remove Id's that crept in

9 years agoleft out one tiny word...
Tom Musgrove [Sun, 1 Jan 2012 22:23:08 +0000 (22:23 +0000)]
left out one tiny word...

9 years agopart of line missing in Jens commit, this fixes compile on non Apple platforms, thank...
Tom Musgrove [Sun, 1 Jan 2012 21:19:40 +0000 (21:19 +0000)]
part of line missing in Jens commit, this fixes compile on non Apple platforms, thanks to Lockal in IRC for pointing it out

9 years agoOSX: fix compile by conditional unsupported flags
Jens Verwiebe [Sun, 1 Jan 2012 16:46:08 +0000 (16:46 +0000)]
OSX: fix compile by conditional unsupported flags

9 years agoFix [#29556] shrinkwrap generates spikes if vertices fall exactly on the edge
Bastien Montagne [Sun, 1 Jan 2012 16:37:01 +0000 (16:37 +0000)]
Fix [#29556] shrinkwrap generates spikes if vertices fall exactly on the edge

bvhtree_ray_tri_intersection now using isect_ray_tri_epsilon_v3 with FLT_EPSILON. All devs I asked (incuding ones in physics/painting areas) were rather OK with this change, and better to do it now, with more than one month to detect regressions, if any!

9 years agoFixed names of VertexWeight modifiers RNA structs, in RNA_access.h (probably forgotte...
Bastien Montagne [Sun, 1 Jan 2012 16:09:32 +0000 (16:09 +0000)]
Fixed names of VertexWeight modifiers RNA structs, in RNA_access.h (probably forgotten when they were renamed, before the merge in trunk, and was never noticed as they are not used...).

Also removed the $ID$ from remesh modifier header, and quited a gcc warning.

9 years agouse `props` all over for operator properties vars
Campbell Barton [Sun, 1 Jan 2012 13:09:58 +0000 (13:09 +0000)]
use `props` all over for operator properties vars

9 years ago__func__ define for msvc since its not c99 compat
Campbell Barton [Sun, 1 Jan 2012 10:27:53 +0000 (10:27 +0000)]
__func__ define for msvc since its not c99 compat

9 years agorna_xml module - write colors as hexadecimal values, also swap import/export order...
Campbell Barton [Sun, 1 Jan 2012 10:05:04 +0000 (10:05 +0000)]
rna_xml module - write colors as hexadecimal values, also swap import/export order of key config buttons, since they didnt match other uses where import is first.

9 years agorna api - set hard min/max for colors which are float properties but internally use...
Campbell Barton [Sun, 1 Jan 2012 09:39:43 +0000 (09:39 +0000)]
rna api - set hard min/max for colors which are float properties but internally use chars to 0/1.

9 years agouse __func__ for makesrna.c error prints rather then the function name (no functional...
Campbell Barton [Sun, 1 Jan 2012 09:19:22 +0000 (09:19 +0000)]
use __func__ for makesrna.c error prints rather then the function name (no functional changes)

9 years agopep8 edits
Campbell Barton [Sun, 1 Jan 2012 08:52:54 +0000 (08:52 +0000)]
pep8 edits

9 years agotheme import/export - uses generic rna_xml py module.
Campbell Barton [Sun, 1 Jan 2012 08:12:51 +0000 (08:12 +0000)]
theme import/export - uses generic rna_xml py module.

9 years agoadd the ability to read from XML into RNA for rna_xml module
Campbell Barton [Sun, 1 Jan 2012 08:09:30 +0000 (08:09 +0000)]
add the ability to read from XML into RNA for rna_xml module

9 years agoinitial rna <> xml module, copied from, not yet functional
Campbell Barton [Sun, 1 Jan 2012 04:37:08 +0000 (04:37 +0000)]
initial rna <> xml module, copied from, not yet functional

9 years agoOpenexr path change for scons (win)
Alexander Kuznetsov [Sat, 31 Dec 2011 17:15:47 +0000 (17:15 +0000)]
Openexr path change for scons (win)

9 years agoCycles code refactoring: change displace kernel into more generic shader
Brecht Van Lommel [Sat, 31 Dec 2011 15:18:13 +0000 (15:18 +0000)]
Cycles code refactoring: change displace kernel into more generic shader
evaluate kernel, added background shader evaluate.

9 years agoFix [#29728] Explode Modifier Causes Crash.
Bastien Montagne [Sat, 31 Dec 2011 15:10:38 +0000 (15:10 +0000)]
Fix [#29728] Explode Modifier Causes Crash.

The problem was in fact in recent BLI_edgehash changes: a typo in the new macro EDGE_ORD made v0 > v1, instead of v0 < v1. This caused the bug in explode modifier, which (ab)uses that ordering feature a bit…

9 years agoFix for compilation error when compiling dualcon with mingw
Sergey Sharybin [Sat, 31 Dec 2011 11:08:04 +0000 (11:08 +0000)]
Fix for compilation error when compiling dualcon with mingw

9 years agoCode cleanup: do not use check for nan when doing check for finite due to
Sergey Sharybin [Sat, 31 Dec 2011 11:03:32 +0000 (11:03 +0000)]
Code cleanup: do not use check for nan when doing check for finite due to
finite() would be FALSE in case of nan to.

Thanks to Campbell for this information.

9 years agoFix: Material "Vertex Color Light" option didn't apply vertex alpha.
Miika Hamalainen [Sat, 31 Dec 2011 10:46:21 +0000 (10:46 +0000)]
Fix: Material "Vertex Color Light" option didn't apply vertex alpha.

9 years agoDynamic Paint:
Miika Hamalainen [Sat, 31 Dec 2011 10:28:36 +0000 (10:28 +0000)]
Dynamic Paint:
* Fix: Smudge and brush velocity settings didn't work for "image sequence" surfaces unless any paint effect was enabled.
* Adjusted some property ranges.

9 years agoChanging KX_FontObject to look for a "Text" game property instead of a "text" propert...
Daniel Stokes [Sat, 31 Dec 2011 09:37:19 +0000 (09:37 +0000)]
Changing KX_FontObject to look for a "Text" game property instead of a "text" property to match with bitmap font usage.

9 years agoMinor code cleanup after resolving conflicts
Sergey Sharybin [Sat, 31 Dec 2011 09:30:39 +0000 (09:30 +0000)]
Minor code cleanup after resolving conflicts

9 years agoTag object with object solver constraint to recalc when changing value of
Sergey Sharybin [Sat, 31 Dec 2011 08:26:59 +0000 (08:26 +0000)]
Tag object with object solver constraint to recalc when changing value of
tracking object scale.

9 years agoDo not set scene's camera on camera solving and cursor snapping
Sergey Sharybin [Sat, 31 Dec 2011 08:26:32 +0000 (08:26 +0000)]
Do not set scene's camera on camera solving and cursor snapping

9 years agofix [#29734] Crash after bpy.ops.file.direrectory_new()
Campbell Barton [Sat, 31 Dec 2011 03:52:07 +0000 (03:52 +0000)]
fix [#29734] Crash after bpy.ops.file.direrectory_new()

9 years agofix [#29735] Blender crashes with ACCESS_VIOLATION when snapping cursor to camera
Campbell Barton [Sat, 31 Dec 2011 03:45:31 +0000 (03:45 +0000)]
fix [#29735] Blender crashes with ACCESS_VIOLATION when snapping cursor to camera

9 years agooption to build without remesh modifier for cmake and scons
Campbell Barton [Sat, 31 Dec 2011 03:34:44 +0000 (03:34 +0000)]
option to build without remesh modifier for cmake and scons

9 years agoworkaround for error building with clang and quiet some warnings building without...
Campbell Barton [Sat, 31 Dec 2011 03:01:18 +0000 (03:01 +0000)]
workaround for error building with clang and quiet some warnings building without libmv.

9 years agominor style edits to space_clip & unused var
Campbell Barton [Sat, 31 Dec 2011 02:40:33 +0000 (02:40 +0000)]
minor style edits to space_clip & unused var

9 years agoSmall tweaks from Zafio for the remesh modifier icon
Nicholas Bishop [Fri, 30 Dec 2011 23:10:23 +0000 (23:10 +0000)]
Small tweaks from Zafio for the remesh modifier icon

9 years agoPatch is partially made by Pelle Johnsen. Thanks!
Alexander Kuznetsov [Fri, 30 Dec 2011 22:10:48 +0000 (22:10 +0000)]
Patch is partially made by Pelle Johnsen. Thanks!
This patch enables search for specific libraries for vc2010 using "set_lib_path" macro
If *x* library or path exists in lib/win___/vc2010/*x* , vc2010 will use it. If not, compiler will use standard libraries.
It can be easily extended to gcc.

The function is enabled for:

The different libraries are needed for different compilers because C++ was used. There is no standard for lib's C++ structure/functions' names.

Actual libs will follow

9 years agoFix for Remesh Modifier:
Thomas Dinges [Fri, 30 Dec 2011 21:29:02 +0000 (21:29 +0000)]
Fix for Remesh Modifier:
* Remesh Icon was missing in the outliner.

9 years agoAdd remesh modifier (dual contouring).
Nicholas Bishop [Fri, 30 Dec 2011 21:11:40 +0000 (21:11 +0000)]
Add remesh modifier (dual contouring).

This patch adds a new remeshing modifier. The algorithm is based on
the paper "Dual Contouring of Hermite Data", and the implementation
was contributed to Blender by Dr. Tao Ju.

The contributed code is in intern/dualcon, and was modified to compile
under gcc and work on 64-bit systems. Files not needed for Blender
were removed and a small C wrapper was added in order to interface it
with Blender. The rest of the patch is just standard modifier stuff.

Reviewed by Sergey, code review link:

The remesh icon was contributed by Zafio:
Thanks to everyone in that thread for the icon proposals and

Documentation and examples on the Blender wiki:

In case the history is needed for anything, check the remesh-modifier
branch of this git repository:

9 years agoDisable markers when doing frame-by-frame tracking and tracker library returns failure
Sergey Sharybin [Fri, 30 Dec 2011 18:15:44 +0000 (18:15 +0000)]
Disable markers when doing frame-by-frame tracking and tracker library returns failure

9 years agoObject tracking integration
Sergey Sharybin [Fri, 30 Dec 2011 18:06:02 +0000 (18:06 +0000)]
Object tracking integration

This commits merges object tracking implementation from tomato branch.

Summarized changes from branch:

- Added list of objects to be tracked. Default there's only one object called
  "Camera" which is used for solving camera motion. Other objects can be added
  and each of them will have it;s own list of tracks. Only one object can be used
  for camera solving at this moment.
- Added new constraint called "Object Tracking" which makes oriented object be
  moving in the save way as solved object motion.
- Scene orientation tools can be used for orienting object to bundles.
- Object has got scale to define "depth" in camera space.
- All tools which works with list of tracks or reconstruction data now
  gets that lists from active editing object.
- All objects and their tracking data are available via python api.
- Improvements in witness cameras workflow,

9 years agopatch [#29726] Enable looping with Follow Path constraint and cyclic curves. by...
Campbell Barton [Fri, 30 Dec 2011 14:52:03 +0000 (14:52 +0000)]
patch [#29726] Enable looping with Follow Path constraint and cyclic curves.   by Peter Amstutz (tetron)

9 years agoColor management: add "Color Unpremultiply" option for images and render settings.
Brecht Van Lommel [Fri, 30 Dec 2011 14:17:11 +0000 (14:17 +0000)]
Color management: add "Color Unpremultiply" option for images and render settings.
For premultiplied alpha images, this makes any color space conversion for the image
or render output work on color without alpha multiplied in.

This is typically useful to avoid fringing when the image was or will be composited
over a light background. If the image will be composited over a black background on
the other hand, leaving this option off will give correct results.

In an ideal world, there should never be any color space conversion on images with
alpha, since it's undefined what to do then, but in practice it's useful to have
this option.

Patch by Troy Sobotka, with changes by me.

9 years agouse PyUnicode_From_STR_String in the game engine in more places.
Campbell Barton [Fri, 30 Dec 2011 12:44:16 +0000 (12:44 +0000)]
use PyUnicode_From_STR_String in the game engine in more places.

9 years agocucumber merge, multiline font object:
Dalai Felinto [Fri, 30 Dec 2011 12:28:51 +0000 (12:28 +0000)]
cucumber merge, multiline font object:
revisions: 38384,38387,38403,38404,38407,42997,42998

#42998 by dfelinto
BGE Font Object - fix for offset
(scaling also has to be taken into account here)

#42997 by dfelinto
Font Object Multiline fix.
The offset was totally wrong when object had scale[1] != 1

#38407 by kupoman
Changing the "text" property of a KX_FontObject now changes the text. This allows for control of a FontObject through logic bricks.

#38404 by kupoman
KX_FontObject now supports the x and y offset options.

#38403 by kupoman
KX_FontObject now makes use of the font's line spacing option, and correctly accounts for rotation and font size when applying the spacing.

#38387 by kupoman
The KX_FontObject text attribute is working again.

#38384 by kupoman
Primitive support for the new line character added to KX_FontObjects. The line spacing is fixed, and does not work when the FontObject is rotated. Also, the text attribute has been temporarily disabled, as it needs some updating to support the multiline changes.

9 years agoformatting edits, missed these last commit.
Campbell Barton [Fri, 30 Dec 2011 11:49:58 +0000 (11:49 +0000)]
formatting edits, missed these last commit.

9 years agofix [#29686] Weight paint paints when it shouldn't
Campbell Barton [Fri, 30 Dec 2011 11:37:54 +0000 (11:37 +0000)]
fix [#29686] Weight paint paints when it shouldn't

disallow painting when active group is locked

9 years agopatch from Jason Hays
Campbell Barton [Fri, 30 Dec 2011 11:31:48 +0000 (11:31 +0000)]
patch from Jason Hays
Locking only redistributes or restricts weights when using bone groups.
So, in addition to adding a NULL check to my last bit of code, I made
has_locked_group() check for bone groups.

9 years agoCamera tracking: improvements of track preview widget
Sergey Sharybin [Fri, 30 Dec 2011 10:20:29 +0000 (10:20 +0000)]
Camera tracking: improvements of track preview widget

- Enable bicybic filtering fir image displayed in track preview
- Option to show grayscale content of track preview
- When some channels are disabled, display exactly the same
  content of preview image which is sending to tracker library.

Merged from tomato branch using command:
    svn merge -r42382:42383 -r42384:42385 -r42394:42395 \
    -r42397:42398 -r42398:42399 -r42406:42407 \
-r42410:42411 -r42417:42418 -r42471:42472 \

9 years agoFixed low boundary when detecting frames range for camera solver
Sergey Sharybin [Fri, 30 Dec 2011 08:40:36 +0000 (08:40 +0000)]
Fixed low boundary when detecting frames range for camera solver

9 years agocheck for presets in addons dirs. this way addons can install their own presets too.
Campbell Barton [Fri, 30 Dec 2011 08:39:40 +0000 (08:39 +0000)]
check for presets in addons dirs. this way addons can install their own presets too.

9 years agoFix #29729: Blender crashes when camera solving with a disabled marker
Sergey Sharybin [Fri, 30 Dec 2011 08:34:00 +0000 (08:34 +0000)]
Fix #29729: Blender crashes when camera solving with a disabled marker

Stupid mistake in index of last marker when detecting frames bounds

9 years agostyle edits for function declarations
Campbell Barton [Fri, 30 Dec 2011 07:55:15 +0000 (07:55 +0000)]
style edits for function declarations

9 years agominor dna header cleanup
Campbell Barton [Fri, 30 Dec 2011 07:25:49 +0000 (07:25 +0000)]
minor dna header cleanup

9 years agoPyAPI - remove Matrix.row_size / col_size. these were rather awkwardly named, but...
Campbell Barton [Fri, 30 Dec 2011 06:43:17 +0000 (06:43 +0000)]
PyAPI - remove Matrix.row_size / col_size. these were rather awkwardly named, but its more clear to use len().

mat.col_size --> len(mat.row)
mat.row_size --> len(mat.col)

9 years agoweight paint - fix for own error in r42986, also avoid getting unified settings for...
Campbell Barton [Fri, 30 Dec 2011 05:16:28 +0000 (05:16 +0000)]
weight paint - fix for own error in r42986, also avoid getting unified settings for each weight.

9 years agoimprovement to how weight paint blur works
Campbell Barton [Fri, 30 Dec 2011 04:38:45 +0000 (04:38 +0000)]
improvement to how weight paint blur works
* the accumulated blur weight now takes into account how far verts are from the brush, giving more even results
* verts where the weight wasnt found were being ignored, now treat them as zero weight verts.

9 years agoget the brush size at before applying each brush step, saves unified brush settings...
Campbell Barton [Fri, 30 Dec 2011 03:50:04 +0000 (03:50 +0000)]
get the brush size at before applying each brush step, saves unified brush settings lookups per vertex/face-corner.

also use math functions for calc_vp_strength(), and project the vertices as floats rather then ints to get better accuracy, otherwise no functional changes.