9 years agoAdd frame_duration read-only member to Image RNA struct, returns movie's length in...
Bastien Montagne [Sat, 26 May 2012 14:53:33 +0000 (14:53 +0000)]
Add frame_duration read-only member to Image RNA struct, returns movie's length in frames (or 1 for still images).

9 years agoupdate python script memory printout to python3 and some style cleanup
Campbell Barton [Sat, 26 May 2012 13:59:34 +0000 (13:59 +0000)]
update python script memory printout to python3 and some style cleanup

9 years agostyle cleanup: our own malloc code
Campbell Barton [Sat, 26 May 2012 13:36:12 +0000 (13:36 +0000)]
style cleanup: our own malloc code

9 years agocode cleanup: dutch -> english (comments)
Campbell Barton [Sat, 26 May 2012 13:31:57 +0000 (13:31 +0000)]
code cleanup: dutch -> english (comments)

9 years agofix for own error in applying patch
Campbell Barton [Sat, 26 May 2012 13:08:42 +0000 (13:08 +0000)]
fix for own error in applying patch

9 years agoadd vector versions of hsv_to_rgb, rgb_to_hsv & rgb_to_hsv_compat
Campbell Barton [Sat, 26 May 2012 11:01:01 +0000 (11:01 +0000)]
add vector versions of hsv_to_rgb, rgb_to_hsv & rgb_to_hsv_compat

9 years agopatch [#31265] Warning Fixes 02/05/2012
Campbell Barton [Sat, 26 May 2012 10:05:22 +0000 (10:05 +0000)]
patch [#31265] Warning Fixes 02/05/2012
from Jason Wilkins (jwilkins)

only applied some parts:
* const correctness
* moved a variable into a move local scope so it is also inside a #if/endif and does not end up conditionally unused

9 years agopatch [#31578] Standard-conformal sets for .report() and operator return values
Campbell Barton [Sat, 26 May 2012 09:55:00 +0000 (09:55 +0000)]
patch [#31578] Standard-conformal sets for .report() and operator return values
by Sebastian Nell (codemanx)

This patch contains many changes - mostly to addons committing this correction to trunk.

9 years agoFix reading freed memory when opening file by click on it on splash screen
Sergey Sharybin [Sat, 26 May 2012 09:49:54 +0000 (09:49 +0000)]
Fix reading freed memory when opening file by click on it on splash screen

Issue was introduced by yesterday's commit 47021 and caused by some handler's
which is getting called from ui_handler_popup frees event.

Worked around a bit by storing return value for ui_handler_popup before running
other handlers, but this only means global refactor of even handling order is
getting closer and closer.

9 years agopatch [#31579] Solidify modifier: Add new option "Flip Normals"
Campbell Barton [Sat, 26 May 2012 09:39:04 +0000 (09:39 +0000)]
patch [#31579] Solidify modifier: Add new option "Flip Normals"

- previous commit was so similar to the patch Shinsuke wrote, better to add him as contributor, this commit will add to generated credits.
- this commit has no functional changes.

9 years agosolidify option to flip normals
Campbell Barton [Sat, 26 May 2012 09:18:47 +0000 (09:18 +0000)]
solidify option to flip normals

9 years agoFix dummy cp/pt error (harmless in blender itself, but breaking doc and i18n tools...
Bastien Montagne [Sat, 26 May 2012 08:31:34 +0000 (08:31 +0000)]
Fix dummy cp/pt error (harmless in blender itself, but breaking doc and i18n tools...).

9 years agoinitialize bake action vars from context
Campbell Barton [Sat, 26 May 2012 00:46:12 +0000 (00:46 +0000)]
initialize bake action vars from context

9 years agoprevious commit didnt build - add back enum and note that its a copy because of linki...
Campbell Barton [Sat, 26 May 2012 00:41:11 +0000 (00:41 +0000)]
previous commit didnt build - add back enum and note that its a copy because of linking error

9 years agoSVN maintenance.
Guillermo S. Romero [Sat, 26 May 2012 00:33:46 +0000 (00:33 +0000)]
SVN maintenance.

9 years agocode cleanup: remove duplicate enum
Campbell Barton [Sat, 26 May 2012 00:06:30 +0000 (00:06 +0000)]
code cleanup: remove duplicate enum

9 years agoFix most (all?) image space i18n UI bugs...
Bastien Montagne [Fri, 25 May 2012 17:58:15 +0000 (17:58 +0000)]
Fix most (all?) image space i18n UI bugs...

9 years agoFix a bad bug with direct/indirect linking since 2.5. Indirectly linked libraries
Brecht Van Lommel [Fri, 25 May 2012 17:13:30 +0000 (17:13 +0000)]
Fix a bad bug with direct/indirect linking since 2.5. Indirectly linked libraries
could get loaded twice in some cases, causing issues with e.g. node groups.

9 years agoFix #31514: Open blends via drag-n'-drop doesn't work when splash screen is on
Sergey Sharybin [Fri, 25 May 2012 14:57:17 +0000 (14:57 +0000)]
Fix #31514: Open blends via drag-n'-drop doesn't work when splash screen is on

Do not block EVT_DROP event from popup handler.
Not ideal solution sine it'll be much nicer to cleanup event handling order,
but should be acceptable for now.

9 years agofix [#31597] Operator Preset: Python Warning whenever a preset is executed (seen...
Gaia Clary [Fri, 25 May 2012 14:08:50 +0000 (14:08 +0000)]
fix [#31597] Operator Preset: Python Warning whenever a preset is executed (seen on Windows)

9 years agoRemoved setting of filepath from Operator Preset for the Collada Exporter (Second...
Gaia Clary [Fri, 25 May 2012 13:50:32 +0000 (13:50 +0000)]
Removed setting of filepath from Operator Preset for the Collada Exporter (Second Life presets)

9 years agoFix for last commit, forgot to update Screen.is_animation_playing python property.
Brecht Van Lommel [Fri, 25 May 2012 12:56:29 +0000 (12:56 +0000)]
Fix for last commit, forgot to update Screen.is_animation_playing python property.

9 years agopatch [#31594] [Documentation]: fix for example in bge.render.rst
Campbell Barton [Fri, 25 May 2012 12:37:14 +0000 (12:37 +0000)]
patch [#31594] [Documentation]: fix for example in bge.render.rst
by Philipp Oeser (lichtwerk)

9 years agoAnimation playback: now all windows are update during playback, rather than
Brecht Van Lommel [Fri, 25 May 2012 12:37:11 +0000 (12:37 +0000)]
Animation playback: now all windows are update during playback, rather than
just the active window.

9 years agoUnix: enable use of XDG paths for storing Blender configuration on Linux/BSD/..,
Brecht Van Lommel [Fri, 25 May 2012 12:08:29 +0000 (12:08 +0000)]
Unix: enable use of XDG paths for storing Blender configuration on Linux/BSD/..,
starting from version 2.64. Unless you have a special system setup, this means the
will be in ~/.config/blender rather than ~/.blender.

When the version number is changed to 2.64, the "Copy Previous Settings" operator
in the splash will copy the settings to the new location.

XDG base directory specification:

9 years agoAdded a Factory Operator Preset for the Collada Exporter (Second Life presets)
Gaia Clary [Fri, 25 May 2012 11:43:57 +0000 (11:43 +0000)]
Added a Factory Operator Preset for the Collada Exporter (Second Life presets)

9 years agoFix #31587: loading image sequence by selecting all images does not work in MCE
Sergey Sharybin [Fri, 25 May 2012 11:40:45 +0000 (11:40 +0000)]
Fix #31587: loading image sequence by selecting all images does not work in MCE

Now loading image sequence behaves in the same way as sequencer when all images
are selected. In fact, in this case first image from selection would be used
as first frame of image sequence, so this behavior does not reflect possible
gaps in selection.

Old behavior with selecting first file only is still relevant.

9 years agostyle cleanup
Campbell Barton [Fri, 25 May 2012 09:51:53 +0000 (09:51 +0000)]
style cleanup

9 years agoFixed smoke 3D-view issues: Preview became invisible from certain angles if domain...
Miika Hamalainen [Fri, 25 May 2012 09:40:56 +0000 (09:40 +0000)]
Fixed smoke 3D-view issues: Preview became invisible from certain angles if domain size was < 1.0 and density+shading strength changed depended on domain size.

9 years ago3D View: add Backface Culling option, to hide faces when seen from the back side,
Brecht Van Lommel [Fri, 25 May 2012 09:26:47 +0000 (09:26 +0000)]
3D View: add Backface Culling option, to hide faces when seen from the back side,
found in the Display panel.

Patch by Simon Kirk and Irie Shinsuke, refactored to also work for non-mesh objects
and avoid globals.

9 years agocode cleanup: solidify modifier - remove dead assignment and unneeded NULL check.
Campbell Barton [Fri, 25 May 2012 06:54:01 +0000 (06:54 +0000)]
code cleanup: solidify modifier - remove dead assignment and unneeded NULL check.

9 years agoSmoke: Start fixing scaling issues which happen with non cube-shaped domains.
Daniel Genrich [Thu, 24 May 2012 23:50:20 +0000 (23:50 +0000)]
Smoke: Start fixing scaling issues which happen with non cube-shaped domains.
Detail: Smoke solver and Blender side of smoke now share the same cell length.

First reported by the Sintel artists long ago, again reported by MiikaH.

Part of my Smoke Development Project Phase III.

9 years agoremove some float/double conversions
Campbell Barton [Thu, 24 May 2012 21:58:12 +0000 (21:58 +0000)]
remove some float/double conversions

9 years agoModifications to the operator:
Nathan Vegdahl [Thu, 24 May 2012 21:05:27 +0000 (21:05 +0000)]
Modifications to the operator:

1. Two new boolean options have been added to the operator: "deselect"
   and "toggle".
2. The previous behavior of "extend" (toggling the selection) has
   been moved to the "toggle" option.
3. "extend" now only extends the selection, it never deselects.
4. "deselect" is pretty self-explanatory: it deselects (i.e. opposite
   of extend).
5. The built-in keymap has been changed to use "toggle" where
   "extend" was used before for this operator, to maintain the
   previous behavior in the default keymap.

In short, this works towards making "extend" and "deselect" fully
consistent across all selection tools (adding to and removing from
selection, respectively), but still preserves the old behavior
as well.

(Patch reviewed by Brecht.)

9 years agoFix bug [#31512] Focus Zoom on text object with modifers fails
Nicholas Bishop [Thu, 24 May 2012 20:20:12 +0000 (20:20 +0000)]
Fix bug [#31512] Focus Zoom on text object with modifers fails

Change BKE_object_minmax() to use the same logic as meshes: use the
object bounding box if available, since it will include the modifier
DM output.

9 years agoFix bug #31582, Crash with Skin modifier
Nicholas Bishop [Thu, 24 May 2012 19:41:09 +0000 (19:41 +0000)]
Fix bug #31582, Crash with Skin modifier

Buffer overflow error in collecting split_face vertices.

9 years agoSmoke: Fix wrong maximum timestep, resulting in exploding/unstable fluids.
Daniel Genrich [Thu, 24 May 2012 18:22:36 +0000 (18:22 +0000)]
Smoke: Fix wrong maximum timestep, resulting in exploding/unstable fluids.

Part of my Smoke Development project.
In conjunction with MiikaH and his gSoC project.

9 years agostyle cleanup: brace placement/newlines
Campbell Barton [Thu, 24 May 2012 16:35:45 +0000 (16:35 +0000)]
style cleanup: brace placement/newlines

9 years agoPatch #31570: Implementation of 'Include bone children' Option
Gaia Clary [Thu, 24 May 2012 14:56:09 +0000 (14:56 +0000)]
Patch #31570: Implementation of 'Include bone children' Option

9 years agoFix new compositor color to value/bw conversion working different than it did
Brecht Van Lommel [Thu, 24 May 2012 14:19:20 +0000 (14:19 +0000)]
Fix new compositor color to value/bw conversion working different than it did
before. It doesn't make much sense to always multiply with alpha, especially
if it's a premul image that already has it multiplied in.

Patch by Irie Shinsuke.

9 years agoGraph Editor - View All/Selected now includes handles for calculating extents of
Joshua Leung [Thu, 24 May 2012 13:52:25 +0000 (13:52 +0000)]
Graph Editor - View All/Selected now includes handles for calculating extents of

It is possible to get the old behaviour (handles excluded) by bringing up the
Operator Properties (F6) while in the Graph Editor (this doesn't work elsewhere
due to the context requirements of this stuff).

9 years agostyle cleanup
Campbell Barton [Thu, 24 May 2012 13:18:53 +0000 (13:18 +0000)]
style cleanup

9 years agostyle cleanup
Campbell Barton [Thu, 24 May 2012 10:16:42 +0000 (10:16 +0000)]
style cleanup

9 years agofix for building without audaspace
Campbell Barton [Thu, 24 May 2012 10:15:38 +0000 (10:15 +0000)]
fix for building without audaspace

9 years ago * removed clamp from color correction
Jeroen Bakker [Thu, 24 May 2012 06:16:05 +0000 (06:16 +0000)]
 * removed clamp from color correction

9 years agoCode Cleanup - DNA_space_types.h - Part 2 - Rearranging Stuff
Joshua Leung [Thu, 24 May 2012 04:46:01 +0000 (04:46 +0000)]
Code Cleanup - DNA_space_types.h - Part 2 - Rearranging Stuff

* Moved all enums to immediately follow the struct(s) that they are used for/by.
Less jumping around the file to find these

* Reshuffled the order of a few structs/editor groupings. For example, now all
animation editors are grouped together, and most general/property editors are
grouped together.

9 years agoCode Cleanup - DNA_space_types.h - Replaced all #define-lists with enums
Joshua Leung [Thu, 24 May 2012 04:21:57 +0000 (04:21 +0000)]
Code Cleanup  - DNA_space_types.h - Replaced all #define-lists with enums

* All lists of #defines now replaced with enums
* All flags are now defined using the "(1 << x)" style, which is easier to
read/maintain than the other variations

9 years agoRestoring Group Colours for Animation Channels - Part 1
Joshua Leung [Thu, 24 May 2012 01:25:31 +0000 (01:25 +0000)]
Restoring Group Colours for Animation Channels - Part 1

This commit restores the group colours support for F-Curves and F-Curve Groups
in the DopeSheet and Graph Editors. Currently the relevant settings for groups
are only exposed via RNA, but a followup commit will add support for
automatically setting these colours. By default, DopeSheet and Graph Editors are
set to display these colours if/when they are available.

This functionality used to be in 2.48, and is a useful mechanism for visually
distinguishing between channels for different controls when animating (if group
colours are used on the rigs too).

9 years agostyle cleanup: comma placement
Campbell Barton [Wed, 23 May 2012 22:45:39 +0000 (22:45 +0000)]
style cleanup: comma placement

9 years agocode cleanup: fix possible use of uninitialized value and remove dead initializations.
Campbell Barton [Wed, 23 May 2012 21:39:39 +0000 (21:39 +0000)]
code cleanup: fix possible use of uninitialized value and remove dead initializations.

9 years agoImage.gl_touch - routine to prevent the image to be cleared by blender cache garbage...
Dalai Felinto [Wed, 23 May 2012 20:19:40 +0000 (20:19 +0000)]
Image.gl_touch - routine to prevent the image to be cleared by blender cache garbage collection system
* if the image is not loaded (bindcode == 0) load the image

This needs to be called often. If the image is 'cleaned' by Blender, it will not help to load it after.
[ gl_load returns the errors: GL_STACK_OVERFLOW(1283) or GL_STACK_UNDERFLOW (1284) ]

Thanks Campbell for the suggestion on how to handle this (BKE_image_tag_time)

9 years agoFeature request implemented: [#31572] Mixdown selects blend filename, should initiali...
Joerg Mueller [Wed, 23 May 2012 19:55:00 +0000 (19:55 +0000)]
Feature request implemented: [#31572] Mixdown selects blend filename, should initialize name from filetype as images do.

9 years agoFix cycles render issue with a (useless) mix node that has the same shader
Brecht Van Lommel [Wed, 23 May 2012 17:55:34 +0000 (17:55 +0000)]
Fix cycles render issue with a (useless) mix node that has the same shader
plugged into both sockets.

9 years agostyle cleanup: also correct comment
Campbell Barton [Wed, 23 May 2012 17:26:49 +0000 (17:26 +0000)]
style cleanup: also correct comment

9 years agoincrease memory limit for sequencer cache to 32gig
Campbell Barton [Wed, 23 May 2012 17:16:53 +0000 (17:16 +0000)]
increase memory limit for sequencer cache to 32gig

9 years agoCamera tracking: imbuf (un)distoriton used to set RECT_INVALID flag for source image...
Sergey Sharybin [Wed, 23 May 2012 16:53:33 +0000 (16:53 +0000)]
Camera tracking: imbuf (un)distoriton used to set RECT_INVALID flag for source image instead of destination

This lead to wrong proxies generated for openexr float image sequences

9 years agoNode Editor UI:
Thomas Dinges [Wed, 23 May 2012 16:34:41 +0000 (16:34 +0000)]
Node Editor UI:
* Added back the single triangle icon for node color special menu, showed empty after recent changes in r46939.

9 years agoMovie clip: remove workaround for #27997
Sergey Sharybin [Wed, 23 May 2012 16:19:04 +0000 (16:19 +0000)]
Movie clip: remove workaround for #27997

it's not actually helps, but only confuses system when using openexr movie clips.

9 years agoFinish changes in up/down arrows for menus
Sergey Sharybin [Wed, 23 May 2012 14:24:40 +0000 (14:24 +0000)]
Finish changes in up/down arrows for menus

Restored single triangle for special menus, which still isn't perfect but
probably makes more sense.

Added drawflag bit flags to button, which is currently used to declare, that
button need to have up/down arrows. This is needed because it's tricky to
distinguish if button should have such arrows. For example, ID search buttons
is a simple block button which doesn't directly mean it'll have pop-up menu
and not all buttons which cases pop-up menu to display need to have such

So currently only ID selector button is forcing up/down arrows to be displayed,
all the rest buttons now behaves in the same way as it used to be before.

9 years agocleanup relink code
Jeroen Bakker [Wed, 23 May 2012 12:45:07 +0000 (12:45 +0000)]
cleanup relink code

9 years agoSet "a" version character to put the version at 2.63a, this is apparently needed
Brecht Van Lommel [Wed, 23 May 2012 11:38:00 +0000 (11:38 +0000)]
Set "a" version character to put the version at 2.63a, this is apparently needed
for package managers to stay ahead of the 2.63a bugfix release.

9 years ago * Stopped flickering of preview images
Jeroen Bakker [Wed, 23 May 2012 10:31:16 +0000 (10:31 +0000)]
 * Stopped flickering of preview images
 * Solved crash when first input socket of brightness node is not

9 years agoedit to last commit, remove pointer to active slide vert, only need to store the...
Campbell Barton [Wed, 23 May 2012 09:55:48 +0000 (09:55 +0000)]
edit to last commit, remove pointer to active slide vert, only need to store the index.

9 years agoFix: cycles not supporting scene background sets.
Brecht Van Lommel [Wed, 23 May 2012 09:46:33 +0000 (09:46 +0000)]
Fix: cycles not supporting scene background sets.

9 years agonon-proportional edge slide patch by XercesBlue
Campbell Barton [Wed, 23 May 2012 09:46:32 +0000 (09:46 +0000)]
non-proportional edge slide patch by XercesBlue

remmoved edge-visibility check from the patch which gives nice functionality but calculates and BVH and throws it away every update.

9 years agosolidify modifier - replace define, no longer needed since switching to bmesh.
Campbell Barton [Wed, 23 May 2012 06:39:29 +0000 (06:39 +0000)]
solidify modifier - replace define, no longer needed since switching to bmesh.

9 years agosolidify modifier - replace VECADDFAC with inline function.
Campbell Barton [Wed, 23 May 2012 06:32:02 +0000 (06:32 +0000)]
solidify modifier - replace VECADDFAC with inline function.

9 years agofix solidify modifier flipping of rim polygons.
Campbell Barton [Wed, 23 May 2012 06:25:31 +0000 (06:25 +0000)]
fix solidify modifier flipping of rim polygons.

9 years agoScons - only go to the trouble of making these directories if they don't already
Joshua Leung [Wed, 23 May 2012 04:15:50 +0000 (04:15 +0000)]
Scons - only go to the trouble of making these directories if they don't already

9 years agoFix for [#31276] Action Actuator, Priorities higher than 1 break Playback:
Mitchell Stokes [Wed, 23 May 2012 04:01:05 +0000 (04:01 +0000)]
Fix for [#31276] Action Actuator, Priorities higher than 1 break Playback:

The code was looking to see if the priority was strictly greater than the current priority, but it seems that an equal priority should also override (at least the report seems to suggest that this is the behavior from 2.49).

9 years agoscons - Added option to not remove and unpack python modules bundle every
Joshua Leung [Wed, 23 May 2012 03:49:42 +0000 (03:49 +0000)]
scons - Added option to not remove and unpack python modules bundle every

9 years agoMotion Paths Gui - Restoring a "Calculate" button to the Motion Paths panel
Joshua Leung [Wed, 23 May 2012 03:36:03 +0000 (03:36 +0000)]
Motion Paths Gui - Restoring a "Calculate" button to the Motion Paths panel

Iterating on previous design, a Calculate button is now present in this panel
again. Most people just wouldn't have a clue to try the toolbar...

9 years agostyle cleanup
Campbell Barton [Tue, 22 May 2012 22:03:41 +0000 (22:03 +0000)]
style cleanup

9 years agocode cleanup: double promotion warnings
Campbell Barton [Tue, 22 May 2012 21:16:59 +0000 (21:16 +0000)]
code cleanup: double promotion warnings

9 years agoNode UI:
Thomas Dinges [Tue, 22 May 2012 19:16:20 +0000 (19:16 +0000)]
Node UI:
* Made the new custom theme options a bit better and more compact.
* Added a few separators to better distinguish these settings from the actual node buttons.

9 years agoCode cleanup: better warning in case of modifier icons in outliner.
Nicholas Bishop [Tue, 22 May 2012 18:40:31 +0000 (18:40 +0000)]
Code cleanup: better warning in case of modifier icons in outliner.

Modified the switch statement to use the ModifierType enum and changed
the default case to use specific missing values. Compiler can then
issue warnings when new modifier types are added (at least gcc 4.6.3

9 years agoSkin Modifier:
Thomas Dinges [Tue, 22 May 2012 18:20:07 +0000 (18:20 +0000)]
Skin Modifier:
* Show Modifier Icon in Outliner.

9 years agoexpanding bmesh example (py api)
Dalai Felinto [Tue, 22 May 2012 18:14:34 +0000 (18:14 +0000)]
expanding bmesh example (py api)

9 years agoCollada: Added a Preset selector
Gaia Clary [Tue, 22 May 2012 17:57:03 +0000 (17:57 +0000)]
Collada: Added a Preset selector

9 years agoFix memory leak when deleting all vertices from mesh with certain modifiers (bevel...
Antony Riakiotakis [Tue, 22 May 2012 17:33:58 +0000 (17:33 +0000)]
Fix memory leak when deleting all vertices from mesh with certain modifiers (bevel and array among them) and VBO are enabled.

9 years agostyle cleanup
Campbell Barton [Tue, 22 May 2012 16:24:09 +0000 (16:24 +0000)]
style cleanup

also fix example for mesh uv's

9 years agostyle cleanup: relating to skin modifier
Campbell Barton [Tue, 22 May 2012 16:09:31 +0000 (16:09 +0000)]
style cleanup: relating to skin modifier

9 years agostyle cleanu: skin modifier
Campbell Barton [Tue, 22 May 2012 15:57:42 +0000 (15:57 +0000)]
style cleanu: skin modifier

9 years agoFix for compiling with player after skin modifier commits.
Nicholas Bishop [Tue, 22 May 2012 15:55:02 +0000 (15:55 +0000)]
Fix for compiling with player after skin modifier commits.

Removed the bad_level_call_stubs for BLI_heap functions; player is
being linked with blenlib, so this gives multiple-definition linker

9 years agoLong old UI annoyance:
Ton Roosendaal [Tue, 22 May 2012 15:50:13 +0000 (15:50 +0000)]
Long old UI annoyance:

The up/down triangle icon for menus was not drawing when a menu had
an icon; even though space was reserved there. Note: this can only
work now with removing the ugly "down triangle" icon from buttons like
next to the Material list box (button pops up menu with tools).

Looks nicer this way anyway.

9 years agouse faces longest edge when orienting the manipulator to the active face
Campbell Barton [Tue, 22 May 2012 15:49:41 +0000 (15:49 +0000)]
use faces longest edge when orienting the manipulator to the active face
also small speedup for finding the longest edge

9 years agoAdd vertex skin radii scaling as a transform operator.
Nicholas Bishop [Tue, 22 May 2012 15:30:14 +0000 (15:30 +0000)]
Add vertex skin radii scaling as a transform operator.

Add a new transform operator, "Skin Resize", which scales the X and Y
axes of the radius field in MVertSkin. It's bound to CTRL+AKEY.

Skin modifier documentation:

9 years agoClear skin root flag on new vertices created by extruding.
Nicholas Bishop [Tue, 22 May 2012 15:30:05 +0000 (15:30 +0000)]
Clear skin root flag on new vertices created by extruding.

Skin modifier documentation:

9 years agoAdd operator to extract armature and vertex groups from skin.
Nicholas Bishop [Tue, 22 May 2012 15:29:57 +0000 (15:29 +0000)]
Add operator to extract armature and vertex groups from skin.

* The operator creates bones for each input edge (does not subdivide
  them like the skin operator does), adds a fake root bone for skin
  roots with multiple children.

* The operator adds vertex weight groups to the original mesh.

* Make copy_object_transform() public, used to match the armature
  object to the mesh object.

Skin modifier documentation:

9 years agoAdd skin vertex operators.
Nicholas Bishop [Tue, 22 May 2012 15:29:44 +0000 (15:29 +0000)]
Add skin vertex operators.

* Add operator to mark selected vertices as skin roots.
* Add operator to mark/clear selected vertices as loose.
* Add operator to equalize skin radii.

Skin modifier documentation:

9 years agoEnsure skin nodes get created when adding modifier.
Nicholas Bishop [Tue, 22 May 2012 15:29:37 +0000 (15:29 +0000)]
Ensure skin nodes get created when adding modifier.

Skin modifier documentation:

9 years agoDraw skin vertex roots in edit mode.
Nicholas Bishop [Tue, 22 May 2012 15:29:27 +0000 (15:29 +0000)]
Draw skin vertex roots in edit mode.

Roots are drawn with a view-oriented dashed red circle around the
vertex location. The circle's radius is the average if the skin
vertex's X and Y radii.

Skin modifier documentation:

9 years agoAdd new theme-able color, TH_SKIN_ROOT.
Nicholas Bishop [Tue, 22 May 2012 15:29:15 +0000 (15:29 +0000)]
Add new theme-able color, TH_SKIN_ROOT.

Bumped file version from 263.5 to 263.6 to ensure the default
TH_SKIN_ROOT color gets set.

Skin modifier documentation:

9 years agoAdd skin modifier: DNA, RNA, UI, and MOD_skin.c implementation.
Nicholas Bishop [Tue, 22 May 2012 15:29:01 +0000 (15:29 +0000)]
Add skin modifier: DNA, RNA, UI, and MOD_skin.c implementation.

Skin modifier documentation:

Implementation based in part off the paper "B-Mesh: A Fast Modeling
System for Base Meshes of 3D Articulated Shapes" (Zhongping Ji,
Ligang Liu, Yigang Wang)

Note that to avoid confusion with Blender's BMesh data structure,
this tool is renamed as the Skin modifier.

The B-Mesh paper is current available here:

The main missing features in this code compared to the paper are:

* No mesh evolution. The paper suggests iteratively subsurfing the
  skin output and adapting the output to better conform with the
  spheres of influence surrounding each vertex.

* No mesh fairing. The paper suggests re-aligning output edges to
  follow principal mesh curvatures.

* No auxiliary balls. These would serve to influence mesh
  evolution, which as noted above is not implemented.

The code also adds some features not present in the paper:

* Loops in the input edge graph.

* Concave surfaces around branch nodes. The paper does not discuss
  how to handle non-convex regions; this code adds a number of
  cleanup operations to handle many (though not all) of these

9 years agoAdd Mesh equivalent to BM_edge_other_vert().
Nicholas Bishop [Tue, 22 May 2012 15:28:44 +0000 (15:28 +0000)]
Add Mesh equivalent to BM_edge_other_vert().

/* Return the index of the edge vert that is not equal to 'v'. If
 * neither edge vertex is equal to 'v', returns -1. */
int BKE_mesh_edge_other_vert(const struct MEdge *e, int v);

9 years agoAdd new BMesh length query functions.
Nicholas Bishop [Tue, 22 May 2012 15:19:33 +0000 (15:19 +0000)]
Add new BMesh length query functions.

BMEdge *BM_face_find_shortest_edge(BMFace *f);
BMEdge *BM_face_find_longest_edge(BMFace *f);

Reviewed by Campbell Barton.

9 years agofix for bmesh api example
Dalai Felinto [Tue, 22 May 2012 15:19:19 +0000 (15:19 +0000)]
fix for bmesh api example
worth noticing is that the example in bpy.types.Mesh is wrong too (Mesh type does not have an uv element)
but I would prefer someone more familiar with bmesh to take a look at those

9 years agoAdd skin modifier icon created by Julio Iglesias.
Nicholas Bishop [Tue, 22 May 2012 15:19:13 +0000 (15:19 +0000)]
Add skin modifier icon created by Julio Iglesias.

Skin modifier documentation:

9 years agoAdd MVertSkin DNA/RNA and customdata (CD_MVERT_SKIN).
Nicholas Bishop [Tue, 22 May 2012 15:18:43 +0000 (15:18 +0000)]
Add MVertSkin DNA/RNA and customdata (CD_MVERT_SKIN).

The MVertSkin currently just stores local skin radii and skin
flags (MVertSkinFlag).

Skin modifier documentation:

Reviewed by Campbell Barton.

9 years agoA number of new features for the node editor in general and the Frame node in particular.
Lukas Toenne [Tue, 22 May 2012 14:13:33 +0000 (14:13 +0000)]
A number of new features for the node editor in general and the Frame node in particular.
For an detailed user-level description of new features see the following blogpost:

* Frame node gets more usable bounding-box behavior
* Node resizing has helpful mouse cursor indicators and works on all borders
* Node selection/active colors are themeable independently
* Customizable background colors for nodes (useful for frames visual