9 years agoCommitting patch [#31704] "Patch to fix keyboard sensor from blocking quit game key...
Mitchell Stokes [Sun, 10 Jun 2012 19:32:57 +0000 (19:32 +0000)]
Committing patch [#31704] "Patch to fix keyboard sensor from blocking quit game key binding" by Jay Parker. This patch fixes [#31671] "Keyboard Sensor blocks Quit Game Key Binding"

9 years agoAlso fix cache line in clip editor which didn't take start frame into account.
Sergey Sharybin [Sun, 10 Jun 2012 17:24:05 +0000 (17:24 +0000)]
Also fix cache line in clip editor which didn't take start frame into account.

9 years agoFixed curves and dopeseet views of motion tracking data not taking clip's
Sergey Sharybin [Sun, 10 Jun 2012 17:09:35 +0000 (17:09 +0000)]
Fixed curves and dopeseet views of motion tracking data not taking clip's
start frame into account.

9 years agoForce multires update when changing subdivision type.
Nicholas Bishop [Sun, 10 Jun 2012 17:06:26 +0000 (17:06 +0000)]
Force multires update when changing subdivision type.

Fixes bug [#31050] Changing multires subdivision algorithm can ruin mesh

9 years agoCode cleanups for the PBVH, no functional changes.
Nicholas Bishop [Sun, 10 Jun 2012 16:37:22 +0000 (16:37 +0000)]
Code cleanups for the PBVH, no functional changes.

* Use the PBVHType consistently in pbvh_update_draw_buffers().

* Split the raycast function up, mesh and grid raycast get their own
  functions now.

* Replace duplicated code in BLI_pbvh_node_add_proxy() with call to

9 years agoBugfix for autosmooth in sculpt mode.
Nicholas Bishop [Sun, 10 Jun 2012 16:22:58 +0000 (16:22 +0000)]
Bugfix for autosmooth in sculpt mode.

This option was broken for non-multires meshes (not sure for how
long), as the pmap was not getting calculated.

Added a more general check for whether the pmap is needed, also added
an assert to warn about this in future.

9 years agoFix compilation without libmv
Sergey Sharybin [Sun, 10 Jun 2012 16:16:02 +0000 (16:16 +0000)]
Fix compilation without libmv

9 years agoBump subversion so iteration through all markers would happen
Sergey Sharybin [Sun, 10 Jun 2012 15:28:37 +0000 (15:28 +0000)]
Bump subversion so iteration through all markers would happen
only for old files which actually needs to be ported to 4 corners

9 years agoCommit patch from Stephan Kassemeyer sent to ML
Sergey Sharybin [Sun, 10 Jun 2012 15:28:29 +0000 (15:28 +0000)]
Commit patch from Stephan Kassemeyer sent to ML

This patch aims to solve unaligned operation assert
happens in Eigen library.

This is short-term solution which in fact shall be reverted
as soon as real solution would be added to Ceres. Meanwhile
this should be acceptable to have for a while.

9 years agoPlanar tracking support for motion tracking
Sergey Sharybin [Sun, 10 Jun 2012 15:28:19 +0000 (15:28 +0000)]
Planar tracking support for motion tracking

Major list of changes done in tomato branch:

- Add a planar tracking implementation to libmv
  This adds a new planar tracking implementation to libmv. The
  tracker is based on Ceres[1], the new nonlinear minimizer that
  myself and Sameer released from Google as open source. Since
  the motion model is more involved, the interface is
  different than the RegionTracker interface used previously
  in Blender.

  The start of a C API in libmv-capi.{cpp,h} is also included.

- Migrate from pat_{min,max} for markers to 4 corners representation

  Convert markers in the movie clip editor / 2D tracker from using
  pat_min and pat_max notation to using the a more general, 4-corner

  There is still considerable porting work to do; in particular
  sliding from preview widget does not work correct for rotated

  All other areas should be ported to new representation:

  * Added support of sliding individual corners. LMB slide + Ctrl
    would scale the whole pattern
  * S would scale the whole marker, S-S would scale pattern only
  * Added support of marker's rotation which is currently rotates
    only patterns around their centers or all markers around median,

    Rotation or other non-translation/scaling transformation of search
    area doesn't make sense.

  * Track Preview widget would display transformed pattern which
    libmv actually operates with.

- "Efficient Second-order Minimization" for the planar tracker

  This implements the "Efficient Second-order Minimization"
  scheme, as supported by the existing translation tracker.
  This increases the amount of per-iteration work, but
  decreases the number of iterations required to converge and
  also increases the size of the basin of attraction for the

- Remove the use of the legacy RegionTracker API from Blender,
  and replaces it with the new TrackRegion API. This also
  adds several features to the planar tracker in libmv:

  * Do a brute-force initialization of tracking similar to "Hybrid"
    mode in the stable release, but using all floats. This is slower
    but more accurate. It is still necessary to evaluate if the
    performance loss is worth it. In particular, this change is
    necessary to support high bit depth imagery.

  * Add support for masks over the search window. This is a step
    towards supporting user-defined tracker masks. The tracker masks
    will make it easy for users to make a mask for e.g. a ball.

    Not exposed into interface yet/

  * Add Pearson product moment correlation coefficient checking (aka
    "Correlation" in the UI. This causes tracking failure if the
    tracked patch is not linearly related to the template.

  * Add support for warping a few points in addition to the supplied
    points. This is useful because the tracking code deliberately
    does not expose the underlying warp representation. Instead,
    warps are specified in an aparametric way via the correspondences.

- Replace the old style tracker configuration panel with the
  new planar tracking panel. From a users perspective, this means:

  * The old "tracking algorithm" picker is gone. There is only 1
    algorithm now. We may revisit this later, but I would much
    prefer to have only 1 algorithm. So far no optimization work
    has been done so the speed is not there yet.

  * There is now a dropdown to select the motion model. Choices:

        * Translation
        * Translation, rotation
        * Translation, scale
        * Translation, rotation, scale
        * Affine
        * Perspective

  * The old "Hybrid" mode is gone; instead there is a toggle to
    enable or disable translation-only tracker initialization. This
    is the equivalent of the hyrbid mode before, but rewritten to work
    with the new planar tracking modes.

  * The pyramid levels setting is gone. At a future date, the planar
    tracker will decide to use pyramids or not automatically. The
    pyramid setting was ultimately a mistake; with the brute force
    initialization it is unnecessary.

- Add light-normalized tracking

  Added the ability to normalize patterns by their average value while
  tracking, to make them invariant to global illumination changes.

Additional details could be found at wiki page [2]


9 years agoInitial Ceres integration into Blender
Sergey Sharybin [Sun, 10 Jun 2012 15:27:41 +0000 (15:27 +0000)]
Initial Ceres integration into Blender

Currently only put sources of Ceres library into extern/libmv/third_party and
setup CMake and SCons building systems.

Integration details:

- Even CMake build files are not re-used from Ceres's trunk: they're using some
  automatic stuff detection like glog, pthreads, protobuf and so and it's not
  so clear how to re-use that files without modifications.
  And IMO it's easier if build files are getting re-generated automatically to
  match Blender-specific setup rather than keeping changes made locally in
  Blender in sync when re-bundling Ceres library. Especially in case when it's
  already needed to support SCons build system.
- Integrated only actual sources, all tests were stripped. Probably it'll be nice
  to have them, but they'll need clear integration with current module test stuff
  in Blender.
- Suitesparse was disabled. It'll help a lot having it, but there are some difficulties
  making cholmod working fine on windows. Would be added in future
- was also stripped. It's not used by Ceres's upstream and
  it gives compilation error (undefined uint32 -- looks like namespace issue).
- Currently all schur eliminators are included. Not sure if it makes sense,
  also not sure if it makes sense having them switchable on and off -- IMO better
  to have single configuration which works and does not require special tweaks
  after everything was set up.

To bundle updated version of Ceres:
- Go to extern/libmv/third_party/ceres folder
- Run ./

This will checkout fresh Ceres snapshot of Windows branch (which is currently
most interesting from integration into Blender POV), apply all patches listed
in patches/series and copy needed files into Blender's working copy. This will
also re-generate CMake/SCons build rules.

If you'll need extra files from Ceres repository which are not present in
Blender, you'll need to copy them manually and then run ./ from
extern/libmv/third_party/ceres folder which will update list of files used
by Blender.

Thanks to Leir Mierle and Sameer Agarwal (and all others who helped developing
Ceres) this library and thanks to Keir Mierle with help integrating it into Blender!

9 years agoSupport for per-track Grease Pencil datablocks for motion tracking
Sergey Sharybin [Sun, 10 Jun 2012 15:26:50 +0000 (15:26 +0000)]
Support for per-track Grease Pencil datablocks for motion tracking

Originally was needed to reach easy way of defining masks used for tracking
(do eliminate textures which doesn't belong to feature when tracking.

Implemented as alternative to GP datablock for clip and added switch between
per-clip and per-track GP datablocks -- internal limitations of GP doesn't
allow to display all GP datablocks easily.  So either you see.edit GP associated
with clip or with track.

GP strokes associated with track are relative to track's position, following
tracks during tracking and could be shared between several tracks.

Masking code presents in libmv and there's rasterizer of GP datablocks for
masks in blender's tracking module, but they still need to be glued together.

Some documentation cound be found at this page:

9 years agostyle cleanup: use capital camel case names for typedef's
Campbell Barton [Sun, 10 Jun 2012 15:20:10 +0000 (15:20 +0000)]
style cleanup: use capital camel case names for typedef's

9 years agoFix #31778. BKE_image_user_frame_calc can be called with iuser==NULL in some circumst...
Lukas Toenne [Sun, 10 Jun 2012 15:07:08 +0000 (15:07 +0000)]
Fix #31778. BKE_image_user_frame_calc can be called with iuser==NULL in some circumstances now, so needs to check that.

9 years agochange RNA_struct_find_function to accept a type rather then a PointerRNA, add a...
Campbell Barton [Sun, 10 Jun 2012 13:34:59 +0000 (13:34 +0000)]
change RNA_struct_find_function to accept a type rather then a PointerRNA, add a check duplicate functions are not defined.

9 years agomango request - add alpha to histogram & sample line.
Campbell Barton [Sun, 10 Jun 2012 12:33:27 +0000 (12:33 +0000)]
mango request - add alpha to histogram & sample line.

9 years agoSynchronize changes with tomato branch
Sergey Sharybin [Sun, 10 Jun 2012 12:30:47 +0000 (12:30 +0000)]
Synchronize changes with tomato branch

9 years agoApplied and completed a compositor patch by Brecht to use signalling and waiting...
Lukas Toenne [Sun, 10 Jun 2012 12:26:33 +0000 (12:26 +0000)]
Applied and completed a compositor patch by Brecht to use signalling and waiting in scheduling and worker threads instead of continuous loops with sleep times. This should help reduce unnecessary wait times in Tile.

9 years agomango request
Campbell Barton [Sun, 10 Jun 2012 12:09:25 +0000 (12:09 +0000)]
mango request
- optionally display the histogram as lines (not filled areas).
- expand the enum for faster access.
- keep the sample line displayed after doing the line sample (running again clears).

9 years agocode cleanup: rename flag --> dflag (draw flag), since this is overly generic name...
Campbell Barton [Sun, 10 Jun 2012 10:15:49 +0000 (10:15 +0000)]
code cleanup: rename flag --> dflag (draw flag), since this is overly generic name and was passed about to many functions.

9 years agoFix for Tile group nodes with internally unconnected outputs, this was crashing due...
Lukas Toenne [Sun, 10 Jun 2012 09:30:31 +0000 (09:30 +0000)]
Fix for Tile group nodes with internally unconnected outputs, this was crashing due to missing constant value operations for such outputs. The SocketProxyNode now checks connection of the input socket on conversion, so this also simplifies usage of proxy nodes quite a bit.

9 years agofix for un-initialized memory use for modal inset/bevel.
Campbell Barton [Sun, 10 Jun 2012 09:05:49 +0000 (09:05 +0000)]
fix for un-initialized memory use for modal inset/bevel.

9 years agoMissed NULL-pointer checks in poll some functions
Sergey Sharybin [Sun, 10 Jun 2012 09:04:49 +0000 (09:04 +0000)]
Missed NULL-pointer checks in poll some functions

9 years agoFix for compositor image node draw function. The image user pointer needs to be const...
Lukas Toenne [Sun, 10 Jun 2012 07:51:57 +0000 (07:51 +0000)]
Fix for compositor image node draw function. The image user pointer needs to be constructed explicitly from the node storage pointer.

9 years agoFix #31747, broken image sequence loading after r47432.
Lukas Toenne [Sun, 10 Jun 2012 07:35:45 +0000 (07:35 +0000)]
Fix #31747, broken image sequence loading after r47432.

The image file name function was updating the iuser->framenr using a supposed cfra parameter. However, the actual cfra is unknown when loading movies or sequences, so the iuser->framenr value itself was passed in its place, leading to incremental addition of the iuser frame offset. Removed the cfra parameter altogether from the image path function. This should instead be done separately if necessary, it's not an inherent part of constructing the image file name.

9 years agoremove duplicate import
Campbell Barton [Sun, 10 Jun 2012 00:22:18 +0000 (00:22 +0000)]
remove duplicate import

9 years agoOBJECT_OT_drop_named_material -- missing notifier for material panel UI update
Dan Eicher [Sat, 9 Jun 2012 21:43:22 +0000 (21:43 +0000)]
OBJECT_OT_drop_named_material -- missing notifier for material panel UI update

9 years agocode cleanup: reduce float/double promotion
Campbell Barton [Sat, 9 Jun 2012 19:57:14 +0000 (19:57 +0000)]
code cleanup: reduce float/double promotion

9 years agostyle cleanup: assignment & indentation.
Campbell Barton [Sat, 9 Jun 2012 18:56:12 +0000 (18:56 +0000)]
style cleanup: assignment & indentation.

9 years agocode cleanup: removed/renamed shadow & duplicate variable definitions.
Campbell Barton [Sat, 9 Jun 2012 18:20:40 +0000 (18:20 +0000)]
code cleanup: removed/renamed shadow & duplicate variable definitions.

9 years agocode cleanup: quiet all warnings about double promotion (either by changing the type...
Campbell Barton [Sat, 9 Jun 2012 17:45:22 +0000 (17:45 +0000)]
code cleanup: quiet all warnings about double promotion (either by changing the type or explicitly casting).

9 years agostyle cleanup: block comments
Campbell Barton [Sat, 9 Jun 2012 17:22:52 +0000 (17:22 +0000)]
style cleanup: block comments

9 years agofix for un-handled exception when entering in multiple values to a button, floats...
Campbell Barton [Sat, 9 Jun 2012 16:45:42 +0000 (16:45 +0000)]
fix for un-handled exception when entering in multiple values to a button, floats were not correctly checked for.

9 years agocode cleanup: doxy comment filename corrections
Campbell Barton [Fri, 8 Jun 2012 23:43:11 +0000 (23:43 +0000)]
code cleanup: doxy comment filename corrections

9 years agoadd a utility function to get an exact match for a grease pencil frame.
Campbell Barton [Fri, 8 Jun 2012 22:07:57 +0000 (22:07 +0000)]
add a utility function to get an exact match for a grease pencil frame.

9 years agorna_SequenceElements_pop --> use memcpy instead of strcpy
Dan Eicher [Fri, 8 Jun 2012 22:05:26 +0000 (22:05 +0000)]
rna_SequenceElements_pop --> use memcpy instead of strcpy

9 years agocode cleanup: name mask and grease pencil dope sheet editor functions more consistantly
Campbell Barton [Fri, 8 Jun 2012 21:48:04 +0000 (21:48 +0000)]
code cleanup: name mask and grease pencil dope sheet editor functions more consistantly

9 years agoconstraints names are not matching (rna and constraint.c). doing rna->constraint.c
Dalai Felinto [Fri, 8 Jun 2012 21:04:48 +0000 (21:04 +0000)]
constraints names are not matching (rna and constraint.c). doing rna->constraint.c

9 years agoCycles / Cleanup:
Thomas Dinges [Fri, 8 Jun 2012 20:17:02 +0000 (20:17 +0000)]
Cycles / Cleanup:
* All references to old textures should now be finally removed.

9 years agoFixing a BGE bug where textures could get loaded into VRAM twice.
Mitchell Stokes [Fri, 8 Jun 2012 19:57:28 +0000 (19:57 +0000)]
Fixing a BGE bug where textures could get loaded into VRAM twice.

9 years agoCycles / Textures:
Thomas Dinges [Fri, 8 Jun 2012 19:57:25 +0000 (19:57 +0000)]
Cycles / Textures:
* Some code cleanup, removed old enums, which are not used anymore.
* Some renaming for consistency and to match new texture names.

9 years agoCycles / Code Cleanup:
Thomas Dinges [Fri, 8 Jun 2012 19:21:12 +0000 (19:21 +0000)]
Cycles / Code Cleanup:
* Removed a workaround for the NodeType enum, uses consecutive values now.

I could not find issues with CUDA, when compiling with Toolkit 4.2 (all sm kernels) and regression files rendered fine on my GPU with sm_21.

9 years agoFixed issue with missed reconstruction error in clip editor header
Sergey Sharybin [Fri, 8 Jun 2012 18:16:20 +0000 (18:16 +0000)]
Fixed issue with missed reconstruction error in clip editor header

Actually was causes by error in RNA bindings which lead to empty reconstruction
returned for cameraObject.reconstruction.

9 years agoFixed issue with non-updating frame in clip editor when toggling undistorted render...
Sergey Sharybin [Fri, 8 Jun 2012 17:16:32 +0000 (17:16 +0000)]
Fixed issue with non-updating frame in clip editor when toggling undistorted render while frame is grayscaled.

Also corrected some typos in movieclip.

9 years agoAdded a default case in switch to avoid paranoid compiler warnings.
Lukas Toenne [Fri, 8 Jun 2012 17:02:02 +0000 (17:02 +0000)]
Added a default case in switch to avoid paranoid compiler warnings.

9 years agoSelecting track channel in tracking dopesheet would make track active,
Sergey Sharybin [Fri, 8 Jun 2012 16:51:38 +0000 (16:51 +0000)]
Selecting track channel in tracking dopesheet would make track active,
just as it happens with curve view.

9 years agoAdded sorting by average reprojection error to motion tracking dopesheet.
Sergey Sharybin [Fri, 8 Jun 2012 16:42:24 +0000 (16:42 +0000)]
Added sorting by average reprojection error to motion tracking dopesheet.

9 years agoParticle Info node for Cycles. This can be used to access particle information in...
Lukas Toenne [Fri, 8 Jun 2012 16:17:57 +0000 (16:17 +0000)]
Particle Info node for Cycles. This can be used to access particle information in material shaders for dupli objects. For now only the particle Age and individual Lifetime (in frames) are supported, more attributes can be added when needed.

The particle data is stored in a separate texture if any of the dupli objects uses particle info nodes in shaders. To map dupli objects onto particles the store an additional particle_index value, which is different from the simple dupli object index (only visible particles, also works for particle dupli groups mode).

Some simple use cases on the blog:

9 years agoUpdate Bullet to version 2.80 (bullet svn revision 2537)
Sergej Reich [Fri, 8 Jun 2012 16:13:01 +0000 (16:13 +0000)]
Update Bullet to version 2.80 (bullet svn revision 2537)

Remove Jamfiles and other unused files that stuck around during previous updates.

Add patches for local changes to the patches directory.

Update readme.txt, it had outdated infromation.

9 years agoDon't show physics properties in game engine conext
Sergej Reich [Fri, 8 Jun 2012 15:24:28 +0000 (15:24 +0000)]
Don't show physics properties in game engine conext

Also rename fluid panels to be more consistent with other simulations

9 years agoFix #31752: Select All By Layer seems not to work when object belongs to several...
Sergey Sharybin [Fri, 8 Jun 2012 15:14:45 +0000 (15:14 +0000)]
Fix #31752: Select All By Layer seems not to work when object belongs to several layers

Added option which changes match policy from exact match and shared layers when
selecting objects by layer.

9 years agoadd listener in action space for mask changes so dopesheet redraws + other minor...
Campbell Barton [Fri, 8 Jun 2012 14:46:17 +0000 (14:46 +0000)]
add listener in action space for mask changes so dopesheet redraws + other minor changes.

9 years agomask animation keys now editable in the dope sheet (duplicate, transform, delete...
Campbell Barton [Fri, 8 Jun 2012 14:31:38 +0000 (14:31 +0000)]
mask animation keys now editable in the dope sheet (duplicate, transform, delete, select- etc).

9 years agoIndex: source/blender/gpu/intern/gpu_draw.c
Antony Riakiotakis [Fri, 8 Jun 2012 13:06:06 +0000 (13:06 +0000)]
Index: source/blender/gpu/intern/gpu_draw.c
--- source/blender/gpu/intern/gpu_draw.c (revision 47568)
+++ source/blender/gpu/intern/gpu_draw.c (working copy)
@@ -230,11 +230,12 @@
  Image *ima, *curima;

  int domipmap, linearmipmap;
+ int texpaint; /* store this so that new images created while texture painting won't be set to mipmapped */

  int alphablend;
  float anisotropic;
  MTFace *lasttface;
-} GTS = {0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, 1, 0, -1, 1.f, NULL};
+} GTS = {0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, 1, 0, 0, -1, 1.f, NULL};

 /* Mipmap settings */

@@ -256,7 +257,7 @@

 static int gpu_get_mipmap(void)
- return GTS.domipmap;
+ return GTS.domipmap && !GTS.texpaint;

 static GLenum gpu_get_mipmap_filter(int mag)
@@ -730,6 +731,8 @@
  if (!GTS.domipmap)

+ GTS.texpaint = !mipmap;
  if (mipmap) {
  for (ima=G.main->image.first; ima; ima=ima-> {
  if (ima->bindcode) {

9 years agofix for bug in point slide using freed memory when auto-keying.
Campbell Barton [Fri, 8 Jun 2012 09:57:23 +0000 (09:57 +0000)]
fix for bug in point slide using freed memory when auto-keying.

9 years agosupport for subframe animation evaluation for masks.
Campbell Barton [Fri, 8 Jun 2012 09:35:51 +0000 (09:35 +0000)]
support for subframe animation evaluation for masks.

9 years agofix for own bug - evaluating past the last frame of a mask didnt work at all.
Campbell Barton [Fri, 8 Jun 2012 09:27:40 +0000 (09:27 +0000)]
fix for own bug - evaluating past the last frame of a mask didnt  work at all.

9 years ago * Added OpenCL kernel for bokeh blur
Jeroen Bakker [Fri, 8 Jun 2012 09:17:07 +0000 (09:17 +0000)]
 * Added OpenCL kernel for bokeh blur
 * Uncomment COM_OPENCL_ENABLED from COM_defines.h to test

9 years agoAnother fix for #31743: check for DM's verts number matches passed number of vertices
Sergey Sharybin [Fri, 8 Jun 2012 09:15:45 +0000 (09:15 +0000)]
Another fix for #31743: check for DM's verts number matches passed number of vertices

Now bevelled splines shall work in the same way as meshes.

9 years agoFix #31748: Blender crashes when typing "al" after opening spacebar menu.
Sergey Sharybin [Fri, 8 Jun 2012 08:24:08 +0000 (08:24 +0000)]
Fix #31748: Blender crashes when typing "al" after opening spacebar menu.

Crash was introduced by own refactoring of poll functions in clip editor.

9 years agoFix #31743: Applying Smooth modifier to a curve crashes Blender
Sergey Sharybin [Fri, 8 Jun 2012 08:17:34 +0000 (08:17 +0000)]
Fix #31743: Applying Smooth modifier to a curve crashes Blender

Actually there were two different issues involved here:

- Recently enabled Smooth modifier wasn't actually designed for curves, so
  it in fact requires a bit bigger work to make it working.

  For now added check for object's typy in this modifier and if it's not
  mesh, it wouldn't try to use edges.

  The reason why it worked in 3d viewport is that creating DM from curve while
  displist is still ocntrcuting for would result in empty CDDM and that leads to
  not taking edges into account, only vertexCos passed to modifier would be used.

  This makes it behaving a bit differently from if it was a mesh, but still gives
  quite reasonable result. Would leave actual fix for a guy who enabled smooth

- Another issue is related on ensuring sculpt mask layer after applying modifier.
  This shall happen only for meshes.

9 years agoClip editor: cleanup up header
Sergey Sharybin [Fri, 8 Jun 2012 07:55:15 +0000 (07:55 +0000)]
Clip editor: cleanup up header

One side of change is related on making code easier to follow, due it started
being quite messy because of all in-lined mode/view checks. Now there's a bit
of code duplication, but it's much easier to see what's going on there.

Another side of patch is related on re-arranging elements in header in a way
that follows rule "depending elements are placed after elements they depends on".
This might be a bit against mostly-used-based elements placement, but now it's
much easier to figure out where to add new option. Also it fits better other
blender's areas such as image editor header, i.e.

9 years agoMask editing: remove use_parent property and use check if paren't id is set instead
Sergey Sharybin [Fri, 8 Jun 2012 07:54:46 +0000 (07:54 +0000)]
Mask editing: remove use_parent property and use check if paren't id is set instead

9 years agonumber enums
Campbell Barton [Fri, 8 Jun 2012 06:11:24 +0000 (06:11 +0000)]
number enums

9 years agocode cleanup: assign values to enums in DNA
Campbell Barton [Fri, 8 Jun 2012 06:04:29 +0000 (06:04 +0000)]
code cleanup: assign values to enums in DNA

9 years agotypo/style edits
Campbell Barton [Fri, 8 Jun 2012 05:53:30 +0000 (05:53 +0000)]
typo/style edits

9 years ago- remove redundant NULL checks from mallocn's local linked list functions.
Campbell Barton [Fri, 8 Jun 2012 05:46:00 +0000 (05:46 +0000)]
- remove redundant NULL checks from mallocn's local linked list functions.
- minor changes to warning cleanup.

9 years agoinitial support for editing masks in the sequencer, currently only draw the mask.
Campbell Barton [Thu, 7 Jun 2012 19:24:49 +0000 (19:24 +0000)]
initial support for editing masks in the sequencer, currently only draw the mask.

9 years agoremove casts to short when allocating new imbufs.
Campbell Barton [Thu, 7 Jun 2012 18:33:36 +0000 (18:33 +0000)]
remove casts to short when allocating new imbufs.

9 years agonew sequence strip type for masks.
Campbell Barton [Thu, 7 Jun 2012 18:24:36 +0000 (18:24 +0000)]
new sequence strip type for masks.

9 years agoQuite some warnings...
Bastien Montagne [Thu, 7 Jun 2012 18:21:07 +0000 (18:21 +0000)]
Quite some warnings...

9 years agoTooltips shouldn't have dot at the end of sentence
Sergey Sharybin [Thu, 7 Jun 2012 18:10:25 +0000 (18:10 +0000)]
Tooltips shouldn't have dot at the end of sentence

9 years agoRemove unused ibuf argument from draw_gpencil_2dimage
Sergey Sharybin [Thu, 7 Jun 2012 17:57:49 +0000 (17:57 +0000)]
Remove unused ibuf argument from draw_gpencil_2dimage

It was used by sequencer only and it wasn't ported for a while already.
This change allows to save cahce lookup for image and clip editors.

9 years ago[#31739] Collada: New Export selections 'Include Armatures'
Gaia Clary [Thu, 7 Jun 2012 17:55:26 +0000 (17:55 +0000)]
[#31739] Collada: New Export selections 'Include Armatures'

9 years agoRemove checks for valid frame from poll function in clip editor space
Sergey Sharybin [Thu, 7 Jun 2012 16:36:19 +0000 (16:36 +0000)]
Remove checks for valid frame from poll function in clip editor space

This results in some buttons not disabled when there's no currently displaying frame,
but this saves lots of cache lookups and threading loks for every frame update.

9 years agoAvoid imbuf loading when getting movie clip size
Sergey Sharybin [Thu, 7 Jun 2012 16:15:24 +0000 (16:15 +0000)]
Avoid imbuf loading when getting movie clip size

This prevents high memory usage by non-proxied frames when doing mask parenting.

Description from code:

  Originally was needed to support image sequences with different image dimensions,
  which might be useful for such things as reconstruction of unordered image sequence,
  or painting/rotoscoping of non-equal-sized images, but this ended up in unneeded
  cache lookups and even unwanted non-proxied files loading when doing mask parenting,
  so let's disable this for now and assume image sequence consists of images with equal sizes

9 years agocode cleanup: rename sequencer types to SEQ_TYPE_*** and use enums rather then defines.
Campbell Barton [Thu, 7 Jun 2012 15:49:02 +0000 (15:49 +0000)]
code cleanup: rename sequencer types to SEQ_TYPE_*** and use enums rather then defines.

9 years agoadding mask points now adds in the correct place relative to shape keys (updating...
Campbell Barton [Thu, 7 Jun 2012 15:33:32 +0000 (15:33 +0000)]
adding mask points now adds in the correct place relative to shape keys (updating other keys for the new points still needs work though)

9 years agofix for crash with recent color commits to draw-object, this case wasnt handled corre...
Campbell Barton [Thu, 7 Jun 2012 15:20:51 +0000 (15:20 +0000)]
fix for crash with recent color commits to draw-object, this case wasnt handled correctly before.

9 years agofix for crash with selecting camera bundles.
Campbell Barton [Thu, 7 Jun 2012 14:21:25 +0000 (14:21 +0000)]
fix for crash with selecting camera bundles.

9 years agoBugfix [#31723] Renderer (internal) ignores keyframes on 'Compositing' checkbox
Joshua Leung [Thu, 7 Jun 2012 10:55:53 +0000 (10:55 +0000)]
Bugfix [#31723] Renderer (internal) ignores keyframes on 'Compositing' checkbox
for animations

Pipeline options such as Use Compositing and Use Sequencer cannot be animated
due to the way that they are implemented now, so adding these to the list of
render properties that we cannot animate.

9 years agoFix #31725: UV map order is ignored when opening in 2.6+ versions
Sergey Sharybin [Thu, 7 Jun 2012 09:11:16 +0000 (09:11 +0000)]
Fix #31725: UV map order is ignored when opening in 2.6+ versions

Issue was caused by do_versions being used pdata as reference for active/render/
stencil/clone layer indices instead of fdata.

Added some utility functions used only by do_versions to be sure this indices
are set from fdata for pre-bmesh files.

9 years agofix for buffer overrun on windows by kjym3 on IRC.
Campbell Barton [Thu, 7 Jun 2012 09:05:51 +0000 (09:05 +0000)]
fix for buffer overrun on windows by kjym3 on IRC.

9 years agofix for armature specular material color overriding the wire color when instanced...
Campbell Barton [Thu, 7 Jun 2012 09:04:45 +0000 (09:04 +0000)]
fix for armature specular material color overriding the wire color when instanced in a dupli

9 years agodont draw bone names/axis inside duplicators
Campbell Barton [Thu, 7 Jun 2012 08:20:10 +0000 (08:20 +0000)]
dont draw bone names/axis inside duplicators

9 years agoFix [#31430] part 2: crash in iTaSC when end effector is a fixed bone. This situation...
Benoit Bolsee [Thu, 7 Jun 2012 08:16:41 +0000 (08:16 +0000)]
Fix [#31430] part 2: crash in iTaSC when end effector is a fixed bone. This situation was causing access to invalid index in the joint angle array although the end effector doesn't need any joint angle to compute its pause. Fixed this by changing the internal API of joint array: return pointer instead of reference so that NULL pointer can be returned instead of crashing when the index is invalid.

9 years agoFix unaligned array crash in Eigen3 because of compilation option. The EIGEN_DONT_ALI...
Benoit Bolsee [Thu, 7 Jun 2012 08:04:58 +0000 (08:04 +0000)]
Fix unaligned array crash in Eigen3 because of compilation option. The EIGEN_DONT_ALIGN_STATICALLY compilation option was added for Win32 only in revision 41283 because of some compilation problem. But this option is causing alignment problem for Eigen3 local variables when SSE optimization is enabled. I do not have any compilation problem when the option is not defined, so I just remove it as it should.

9 years agofix for error in previous commit.
Campbell Barton [Thu, 7 Jun 2012 08:02:48 +0000 (08:02 +0000)]
fix for error in previous commit.
- dupli-group armatures with pose bone objects set would draw with uninitialized color
- also fix old bug - armature were over-riding the constcolor option - so drawing dupli-groups for eg - would ignore the DRAW_CONSTCOLOR flag.

9 years agoFix #31734: Edge slide operator Flip/Even options not working
Sergey Sharybin [Thu, 7 Jun 2012 07:39:37 +0000 (07:39 +0000)]
Fix #31734: Edge slide operator Flip/Even options not working

Issue was caused by wrong check whether transform is in edge slide mode.

9 years agoimprovement to handle recalculation, only do this on auto-handles when they are in...
Campbell Barton [Thu, 7 Jun 2012 07:28:55 +0000 (07:28 +0000)]
improvement to handle recalculation, only do this on auto-handles when they are in a spline.

9 years agoCode cleanup - Shuffled solve_parenting() function around to remove need for
Joshua Leung [Thu, 7 Jun 2012 05:39:28 +0000 (05:39 +0000)]
Code cleanup - Shuffled solve_parenting() function around to remove need for
forward def/local prototype

9 years agoBugfix [#31735] Performance issue related to object parenting to armature
Joshua Leung [Thu, 7 Jun 2012 05:29:10 +0000 (05:29 +0000)]
Bugfix [#31735] Performance issue related to object parenting to armature

In the file included with the bugreport, framerates were dropping from 60fps to
11fps for an armature with several lattices parented, and a 5fps drop everytime
an object was parented to the armature.

Upon (re-)inspection of the code, it became apparent that this was being caused
by a block of code that would recalculate the parent (perhaps recursively) as it
thought the parent state was for the wrong timestamp. However, the timestamps
this was using was never really updated (except for a single place, which set it
to a single fixed value to force recalculations to take place), which meant that
this branch was run all the time. AFACT, this is a remnant from some of the old
timeoffset stuff + pre-Depsgraph timestamping hacks that are no longer used/set.

9 years agoSome slight refactoring of the BGE's LibLoad code to make things a bit cleaner (no...
Mitchell Stokes [Thu, 7 Jun 2012 01:46:28 +0000 (01:46 +0000)]
Some slight refactoring of the BGE's LibLoad code to make things a bit cleaner (no functional changes).

9 years agoFixing some potential heap corruption issues in the Blenderplayer when it is built...
Mitchell Stokes [Thu, 7 Jun 2012 01:44:22 +0000 (01:44 +0000)]
Fixing some potential heap corruption issues in the Blenderplayer when it is built with CMake. This fix forces Blender and the Blenderplayer to use the same SDNA, since inconsistencies between Blender's and the Blenderplayer's SDNA is what lead to the corruption issues.

9 years agoCycles: border render now works in the viewport, when looking through the
Brecht Van Lommel [Wed, 6 Jun 2012 23:27:43 +0000 (23:27 +0000)]
Cycles: border render now works in the viewport, when looking through the
camera, same as in render. It draws objects in solid draw mode outside of
the border.

9 years agoCycles: small code fix for disabled code.
Brecht Van Lommel [Wed, 6 Jun 2012 23:27:38 +0000 (23:27 +0000)]
Cycles: small code fix for disabled code.

9 years agoRevert my own commit r47544, this does not seem to be the correct fix. :/
Thomas Dinges [Wed, 6 Jun 2012 23:01:42 +0000 (23:01 +0000)]
Revert my own commit r47544, this does not seem to be the correct fix. :/

9 years agostyle cleanup
Campbell Barton [Wed, 6 Jun 2012 22:38:39 +0000 (22:38 +0000)]
style cleanup

9 years agoCycles / OSL:
Thomas Dinges [Wed, 6 Jun 2012 22:36:07 +0000 (22:36 +0000)]
Cycles / OSL:
* Missing header kernel_passes.h, needed for "direction_to_panorama" in kernel_triangle.h

9 years agoCmake:
Thomas Dinges [Wed, 6 Jun 2012 21:55:55 +0000 (21:55 +0000)]
* Removed first line, probably accidentally committed in r47439.