8 years agoMerging r43501 through r43720 form trunk into soc-2011-tomato
Sergey Sharybin [Thu, 26 Jan 2012 12:12:20 +0000 (12:12 +0000)]
Merging r43501 through r43720 form trunk into soc-2011-tomato

8 years agoMore curves view improvements for clip editor:
Sergey Sharybin [Thu, 26 Jan 2012 11:49:38 +0000 (11:49 +0000)]
More curves view improvements for clip editor:

- Renamed graph_jump_to_current_frame to graph_center_current_frame
  which makes more sense.
- Curve view now can be locked to time cursor (Lock to Time Cursor in
  Display panel or L button in curve view). Not sure if offset from
  locked position will make much sense here.
- Added hotkey for solving -- Shift-S.

8 years agoPossible fix for implicit declaration of av_rescale_q on some platforms.
Sergey Sharybin [Thu, 26 Jan 2012 11:16:49 +0000 (11:16 +0000)]
Possible fix for implicit declaration of av_rescale_q on some platforms.

8 years agoFix implicit declaration of guardedalloc functions in avi's endian.c.
Sergey Sharybin [Thu, 26 Jan 2012 10:59:31 +0000 (10:59 +0000)]
Fix implicit declaration of guardedalloc functions in avi's endian.c.
Discovered by debian building system.

8 years agoFix build on debian ports that differs from generic i386/x86_64 like kFreeBSD
Sergey Sharybin [Thu, 26 Jan 2012 10:36:36 +0000 (10:36 +0000)]
Fix build on debian ports that differs from generic i386/x86_64 like kFreeBSD

Patch by Kevin Roy, thanks!

8 years agoMovie clip editor: graph view now can be toggled using Z key
Sergey Sharybin [Thu, 26 Jan 2012 09:53:58 +0000 (09:53 +0000)]
Movie clip editor: graph view now can be toggled using Z key

8 years agoTracks curves fixes and improvements:
Sergey Sharybin [Thu, 26 Jan 2012 09:29:49 +0000 (09:29 +0000)]
Tracks curves fixes and improvements:

- Use proper poll functions for tracks curve operators.
- Darken frames outside of scene frame range in curves view.
- Implemented view all operator.
- Implemented jump to current frame operator.

8 years agoReplace hard-coded structures in selection callbacks in view3d_select with typedef...
Sergey Sharybin [Thu, 26 Jan 2012 08:12:12 +0000 (08:12 +0000)]
Replace hard-coded structures in selection callbacks in view3d_select with typedef-ed structures.

Should be no functional changes, but this discovered inconsistency in structures
used for armature circle selection, not sure how harmful this were, but it's not
nice to have such inconsistencies. Anyway, it's resolved now.

8 years agoFix for layer toggling always sticking to extend policy.
Sergey Sharybin [Thu, 26 Jan 2012 07:33:14 +0000 (07:33 +0000)]
Fix for layer toggling always sticking to extend policy.

Reported by Dalai in IRC, thanks for pointing to issue.

8 years agoFix #29991: Broken Hotkeys for rotation in custom Maya-Navigation. >rev43375
Sergey Sharybin [Thu, 26 Jan 2012 07:18:26 +0000 (07:18 +0000)]
Fix #29991: Broken Hotkeys for rotation in custom Maya-Navigation. >rev43375

Issue was caused by incorrect operator property set in revision 43376.

8 years agoadded support for USB Spaceball5000, also a partial attempt to accept button presses...
Mike Erwin [Thu, 26 Jan 2012 03:27:10 +0000 (03:27 +0000)]
added support for USB Spaceball5000, also a partial attempt to accept button presses from unidentified 3D mice (for ancient serial devices)

8 years agodisable toggle option for BGE boolean property, not sure why this was set.
Campbell Barton [Thu, 26 Jan 2012 01:46:16 +0000 (01:46 +0000)]
disable toggle option for BGE boolean property, not sure why this was set.

8 years agofix [#29987] scene.frame_set method doesn't take in account camera change done via...
Campbell Barton [Wed, 25 Jan 2012 22:13:08 +0000 (22:13 +0000)]
fix [#29987] scene.frame_set method doesn't take in account camera change done via markers

8 years agohrmf, fix for fix [#29988] Segfault when unwrap default cube with smart project ...
Campbell Barton [Wed, 25 Jan 2012 22:06:53 +0000 (22:06 +0000)]
hrmf, fix for fix [#29988] Segfault when unwrap default cube with smart project / follow active quads

I think that we need a check here for thick wrapped strings but for now we dont have any thick wrapped strings with default values so comment it.

8 years agoFix #29989: Ctrl + T to show seconds in timeline, python error
Sergey Sharybin [Wed, 25 Jan 2012 21:23:34 +0000 (21:23 +0000)]
Fix #29989: Ctrl + T to show seconds in timeline, python error

Issue seems to be caused by refactoring from rev43376.

8 years agoCycles: Render Passes
Brecht Van Lommel [Wed, 25 Jan 2012 17:23:52 +0000 (17:23 +0000)]
Cycles: Render Passes

Currently supported passes:
* Combined, Z, Normal, Object Index, Material Index, Emission, Environment,
  Diffuse/Glossy/Transmission x Direct/Indirect/Color

Not supported yet:
* UV, Vector, Mist

Only enabled for CPU devices at the moment, will do GPU tweaks tommorrow,
also for environment importance sampling.


8 years agoFix #29892: Properties of objects in nested custom collections stop being animatable...
Sergey Sharybin [Wed, 25 Jan 2012 16:14:24 +0000 (16:14 +0000)]
Fix #29892: Properties of objects in nested custom collections stop being animatable once an object get added to an unrelated custom collection.

Issue was caused by attempting to find rna path in all property collections
which lead to overwritting already found path.

8 years agoVarious fixes for camera tracking stuff
Sergey Sharybin [Wed, 25 Jan 2012 13:37:11 +0000 (13:37 +0000)]
Various fixes for camera tracking stuff

- Fixed tooltip displaying for track sequence forwards in clip editor
- Corrected detection of 8 tracks so it wouldn't count tracks disabled
  on keyframes.
- Scale track preview to actual track widget size instead of scaling the
  whole preview image with given zoom ratio, so no extra memory needed to
  store zoomed margin would be used.
- Track's statistics text will fit pattern position instead of search if
  marker is disabled on current frame.
- Fixed toggle selection operator if selected track is hidden due to
  "Hide Disabled" policy.

8 years agoFix typo for sharpen graph post-processing so fac1+fac2+fac3 always equals 1.0
Sv. Lockal [Wed, 25 Jan 2012 10:10:15 +0000 (10:10 +0000)]
Fix typo for sharpen graph post-processing so fac1+fac2+fac3 always equals 1.0

8 years agoFix typo in camera reconstruction context creation.
Sergey Sharybin [Wed, 25 Jan 2012 09:27:18 +0000 (09:27 +0000)]
Fix typo in camera reconstruction context creation.

Thanks to Lockal to pointing out!

8 years agoCucumber left over: new scene needs a default ESC key
Dalai Felinto [Wed, 25 Jan 2012 01:39:38 +0000 (01:39 +0000)]
Cucumber left over: new scene needs a default ESC key

8 years agofound a bug by accident.
Campbell Barton [Tue, 24 Jan 2012 22:15:25 +0000 (22:15 +0000)]
found a bug by accident.
- bugfix for setting string defaults in rna functions (incorrect pointer use and would copy past string length).
- Object.dm_info was setting a default when it didnt need to.

8 years agoNode UI:
Thomas Dinges [Tue, 24 Jan 2012 20:56:19 +0000 (20:56 +0000)]
Node UI:
* Make sure to check on snode_id, raised errors if no world datablock was active.

8 years agofix for memory leak when particles have 0 elements.
Campbell Barton [Tue, 24 Jan 2012 20:33:26 +0000 (20:33 +0000)]
fix for memory leak when particles have 0 elements.

8 years agoImprovement for last commit, only do redraw when actually needed (in world shader...
Thomas Dinges [Tue, 24 Jan 2012 20:19:26 +0000 (20:19 +0000)]
Improvement for last commit, only do redraw when actually needed (in world shader type)

8 years agoFix compilation error caused by recent changes in file browser stuff
Sergey Sharybin [Tue, 24 Jan 2012 20:13:44 +0000 (20:13 +0000)]
Fix compilation error caused by recent changes in file browser stuff

8 years agoCycles Node Editor:
Thomas Dinges [Tue, 24 Jan 2012 20:10:37 +0000 (20:10 +0000)]
Cycles Node Editor:
* Add Use Nodes button for World shader type
* UI was not redrawing the Node area, when enabling "Use nodes", added check for it to the listener.

8 years agouse a struct to pass normals to normal draw derived mesh callbacks (no functional...
Campbell Barton [Tue, 24 Jan 2012 19:57:34 +0000 (19:57 +0000)]
use a struct to pass normals to normal draw derived mesh callbacks (no functional changes)

8 years agoEnable 16 bit format for float textures by default after discussion with Morten and...
Antony Riakiotakis [Tue, 24 Jan 2012 19:54:18 +0000 (19:54 +0000)]
Enable 16 bit format for float textures by default after discussion with Morten and Sergey on irc. Rationale is that for most cases when people create a float texture they will expect the extra precision in the 3D view.

This shouldn't be a problem on any graphics card since internally a very old texture format (GL 1.1) is used. In the case of any unlikely screams, a revert of this commit can be done.

8 years agoFix #29946: Recover Auto Save defaults to "Short List" View -- Cannot determine dates
Sergey Sharybin [Tue, 24 Jan 2012 18:18:51 +0000 (18:18 +0000)]
Fix #29946: Recover Auto Save defaults to "Short List" View -- Cannot determine dates

Added option display_type to WM_operator_properties_filesel which defines which file
display type (short/list/icons/default) should be used for file browser.

All current operators are using FILE_DEFAULTDISPLAY display type which means display
type will still be calculated based on type of opening file and user preferences
settings. Recover Auto Save operator is now using long display type so file date can
easily be checked now.

Reviewed by Andrea, thanks!

8 years agoDynamic Paint:
Miika Hamalainen [Tue, 24 Jan 2012 17:28:50 +0000 (17:28 +0000)]
Dynamic Paint:
* Fix: Substep update failed if brush was parented to a canvas vertex. Now substeps are ignored in such case.
* Fix: Wave "open borders" option didn't work for image sequence format.
* Fixed a possible crash after changing surface format to image sequence.
* Some code cleanup.

8 years agoBrightness/Contrast Node for Cycles
Dalai Felinto [Tue, 24 Jan 2012 16:32:31 +0000 (16:32 +0000)]
Brightness/Contrast Node for Cycles

Contrast helps to adjust IBL (HDR images used for background lighting).
Note: In the UI we are caling it Bright instead of Brightness. This copy what Blender composite is doing.
Note2: the algorithm we are using produces pure black when contrast is 100. I'm not a fan of that, but it's a division by zero. I would like to look at other algorithms (what gimp does for example). But that would be only after 2.62.

8 years agocomment unused assignment.
Campbell Barton [Tue, 24 Jan 2012 15:51:44 +0000 (15:51 +0000)]
comment unused assignment.

8 years agoquiet some warnings & (possible/unlikely error)
Campbell Barton [Tue, 24 Jan 2012 15:37:50 +0000 (15:37 +0000)]
quiet some warnings & (possible/unlikely error)

8 years agoNew fix for [#29940] Stretch To constraint breaks scaling in Transform constraint...
Bastien Montagne [Tue, 24 Jan 2012 13:17:32 +0000 (13:17 +0000)]
New fix for [#29940] Stretch To constraint breaks scaling in Transform constraint, previous one caused bug [#29962] linked objects not correct on r4361, should be fixed now.

Org code was working with isotropic scaling, but when scaling only one axis, it was broken. First fix just disabled completly scale handling. This version only takes into account scaling along local Y axis, as this is the only one affecting that constraint!

Sorry for the mistake, hope this time it will be ok.

8 years agoFix #29975: Track Preview color channels not filtering correctly
Sergey Sharybin [Tue, 24 Jan 2012 12:25:03 +0000 (12:25 +0000)]
Fix #29975: Track Preview color channels not filtering correctly

Typo in checking bitflags

8 years agoBugfix: Circle-select in Pose Mode disregarded layer visibility, selecting
Joshua Leung [Tue, 24 Jan 2012 08:43:39 +0000 (08:43 +0000)]
Bugfix: Circle-select in Pose Mode disregarded layer visibility, selecting
invisible bones too

8 years agoFix #29965: Crash: Memory psys node array: end corrupt
Sergey Sharybin [Tue, 24 Jan 2012 08:43:17 +0000 (08:43 +0000)]
Fix #29965: Crash: Memory psys node array: end corrupt

Original indices from right operand were used in boolean result derived mesh
which lead to crash if right operand has got more entities (faces/edges/vertices)
than left operand.

8 years agoAdd the .Identity() classmethod to mathutils matrices. This allows the user
Andrew Hale [Tue, 24 Jan 2012 01:56:44 +0000 (01:56 +0000)]
Add the .Identity() classmethod to mathutils matrices. This allows the user
to create an identity matrix of a specific size without having to specify
all the values in the matrix and then use the .identity() method.

8 years agocommented smoke collision derived mesh,
Campbell Barton [Tue, 24 Jan 2012 01:21:43 +0000 (01:21 +0000)]
commented smoke collision derived mesh,

was storing its own copy of the collision mesh but never using it.

8 years agoMisc picky edits to UI messages.
Bastien Montagne [Mon, 23 Jan 2012 22:57:46 +0000 (22:57 +0000)]
Misc picky edits to UI messages.

8 years agorst bge touch ups: making the title of the examples slightly more noticeable
Dalai Felinto [Mon, 23 Jan 2012 19:53:23 +0000 (19:53 +0000)]
rst bge touch ups: making the title of the examples slightly more noticeable
-  it's still not correct, comparing to the other examples, but at least it looks okish.
-  fixed some small typos

8 years agoBLI_array_reserve from bmesh.
Campbell Barton [Mon, 23 Jan 2012 19:42:22 +0000 (19:42 +0000)]
BLI_array_reserve from bmesh.

8 years agoFix #29970: Crash trying to track disabled marker
Sergey Sharybin [Mon, 23 Jan 2012 19:32:00 +0000 (19:32 +0000)]
Fix #29970: Crash trying to track disabled marker

8 years agoFix compilation error caused by code cleanup
Sergey Sharybin [Mon, 23 Jan 2012 17:49:56 +0000 (17:49 +0000)]
Fix compilation error caused by code cleanup

8 years agoCarve booleans: corrected copyright header
Sergey Sharybin [Mon, 23 Jan 2012 17:44:19 +0000 (17:44 +0000)]
Carve booleans: corrected copyright header

8 years agoCarve booleans: code and style cleanup
Sergey Sharybin [Mon, 23 Jan 2012 17:44:05 +0000 (17:44 +0000)]
Carve booleans: code and style cleanup

8 years agoFix #29934: New Carve library can't execute boolean operations in some cases
Sergey Sharybin [Mon, 23 Jan 2012 17:43:41 +0000 (17:43 +0000)]
Fix #29934: New Carve library can't execute boolean operations in some cases

Issue was caused by left boolean operand consist of several intersecting manifolds
which make Carve triangulator confused and which can't be resolved in general case.
Added mesh pre-processing before actual applying boolean operator on it. This
preprocessing applies union operation on intersecting manifolds of the same object
so intersection edge loop with second object wouldn't confuse tesselator and correct
result would be returned.
Detecting of intersecting manifolds is based on AABB intersection check which leads
to some extra union operation called, but it's possible to speed things up from
Carve side so union operation of two not intersecting meshes would work faster.
Additional condition for running union for manifold is this manifolds intersects
AABB of second operand, so mesh topology wouldn't be changed at all in areas
where there's definitely no intersection between operands. It might be improved
so only manifolds which actually intersects second operand would be joined
together, but it'll slow things down a bit and prefer to do it only if it'll
be really a problem.

Additional change is fixed memory leak when boolean operation fails to run -
it was missed "delete" call if exception happens in Carve library.

From side effects of this change might be named boolean operation between
suzanne and another object: suzanne is consist of three intersecting open
manifolds, so this new meshes preprocessing leads to missed eyes in result
because of failure of merging two open manifolds. Don't think making suzanne
work for all setups should really be a goal, it's a bit crappy mesh for CSG

8 years agoIn order to maintain consistency with other uses of .remove(), these functions will...
Andrew Hale [Mon, 23 Jan 2012 13:29:29 +0000 (13:29 +0000)]
In order to maintain consistency with other uses of .remove(), these functions will be removed and reimplemented after the BMesh merge.

The main issue in an implementation of these functions is the need to constantly edit the vertex array and subsequently update the face and edge arrays.

8 years agoFix for compilation error when using scons and carve is disabled
Sergey Sharybin [Mon, 23 Jan 2012 08:48:52 +0000 (08:48 +0000)]
Fix for compilation error when using scons and carve is disabled

8 years agomodifier Apply as Shape is now Apply as Shape Key. Was confusing some users
Daniel Salazar [Mon, 23 Jan 2012 03:13:55 +0000 (03:13 +0000)]
modifier Apply as Shape is now Apply as Shape Key. Was confusing some users

8 years agoCloth: Add "velocity damping" to damping options. This will help with the "cloth...
Daniel Genrich [Mon, 23 Jan 2012 01:35:14 +0000 (01:35 +0000)]
Cloth: Add "velocity damping" to damping options. This will help with the "cloth wobbling" problem which accurs quite often when having animated characters with cloth.

8 years agoFix for "[#29911] Crash on reading BL_ActionActuator.channelNames"
Mitchell Stokes [Sun, 22 Jan 2012 23:15:35 +0000 (23:15 +0000)]
Fix for "[#29911] Crash on reading BL_ActionActuator.channelNames"

The crash occurred when an action actuator was attached to a non-armature object because objects that aren't armatures do not have pose data. A NotImplementedError is now raised if someone tries to access any of the following with an action actuator attached to a non-armature object:


8 years agoCycles UI:
Thomas Dinges [Sun, 22 Jan 2012 23:13:24 +0000 (23:13 +0000)]
Cycles UI:
* Add World ID Block to World Shader Nodes.

8 years agoCycles Textures:
Thomas Dinges [Sun, 22 Jan 2012 22:59:21 +0000 (22:59 +0000)]
Cycles Textures:
* Remove the "Use nodes" button, the TextureOutput node was never ported to trunk from the cycles branch.

8 years agoCycles UI:
Thomas Dinges [Sun, 22 Jan 2012 22:43:21 +0000 (22:43 +0000)]
Cycles UI:
* Use full width for the world sample as lamp properties

8 years agoOcean Modifier UI fixes:
Thomas Dinges [Sun, 22 Jan 2012 22:30:45 +0000 (22:30 +0000)]
Ocean Modifier UI fixes:
* Modifier Icon was missing in the outliner
* Fluid icon was used in the rna struct, fixed

Note: Ocean uses the Wave modifier icon atm, if we find a better one, this can be changed.

8 years agoCommitting patch "[#27676] Change window size/resolution in realtime" by me.
Mitchell Stokes [Sun, 22 Jan 2012 20:25:25 +0000 (20:25 +0000)]
Committing patch "[#27676] Change window size/resolution in realtime" by me.

This patch allows the user to change the size of the window (or the resolution in fullscreen mode) using the new bge.render.setWindowSize() method. This only works in the Blenderplayer since it doesn't make a whole lot of sense for the embedded player.

8 years agorestrict stitching of same island uvs to only midpoint, without snapping case
Antony Riakiotakis [Sun, 22 Jan 2012 20:01:33 +0000 (20:01 +0000)]
restrict stitching of same island uvs to only midpoint, without snapping case

8 years agominor edit for operator error macro so it can return different values.
Campbell Barton [Sun, 22 Jan 2012 19:52:41 +0000 (19:52 +0000)]
minor edit for operator error macro so it can return different values.

8 years agoerror in outliner parent patch - was using set string on an enum property.
Campbell Barton [Sun, 22 Jan 2012 18:59:06 +0000 (18:59 +0000)]
error in outliner parent patch - was using set string on an enum property.

8 years agoAdd weight preview to WeightVG modifiers, and first, simple/basic refactor of how...
Bastien Montagne [Sun, 22 Jan 2012 17:54:23 +0000 (17:54 +0000)]
Add weight preview to WeightVG modifiers, and first, simple/basic refactor of how modifiers can generate preview.

User side:
* Preview for DynamicPaint should keep the same behavior (for now). Weight preview should be somawhat quicker, though.
* Preview for WeightVG modifiers is only active in WeightPaint mode, and if the affected vgroup is the active one.
* Last active preview modifier in stack wins!

Note: that modifier preview topic is yet to be further refined, quite raw/incomplete for now.

Dev side:
* Removed use of MOD_DPAINT_PREVIEW_READY in DynamicPaint code (seems unecessary, and if it was, should be of more general scope).
* Added eModifierTypeFlag_UsesPreview to ModifierTypeFlag, for modifiers that can generate some preview data.
* Added three new modifier funcs, to handle preview modifiers in draw code / mod stack.
* For weights preview: added the generic DM_update_weight_mcol func, which can update WEIGHT_MCOL layer with either a given array of weights (currently used by DynamicPaint only), or from current active vgroup(s).

So now, draw code is fully generic (i.e. no more modifier-type checking in it). Mod stack code is generic to some extent, but will need more work.

8 years agoQuiet warnings in text editor
Campbell Barton [Sun, 22 Jan 2012 17:26:56 +0000 (17:26 +0000)]
Quiet warnings in text editor

8 years agouse inline BLI_math functions for dot product and length calculation.
Campbell Barton [Sun, 22 Jan 2012 17:20:37 +0000 (17:20 +0000)]
use inline BLI_math functions for dot product and length calculation.

8 years agoFix for the Sculpt UI (revert part of 43535 by nicholasbishop)
Thomas Dinges [Sun, 22 Jan 2012 16:29:10 +0000 (16:29 +0000)]
Fix for the Sculpt UI (revert part of 43535 by nicholasbishop)
* Such labels like for "use_space_atten" should not be in the UI, thats too overkill. Toolbar is meant to be small in size.

8 years agoFix #29935: missing cycles update/crash when removing world datablock form scene.
Brecht Van Lommel [Sun, 22 Jan 2012 13:56:39 +0000 (13:56 +0000)]
Fix #29935: missing cycles update/crash when removing world datablock form scene.

8 years agoFix missing shadows with cycles world sample as lamp option, my mistake in
Brecht Van Lommel [Sun, 22 Jan 2012 13:26:59 +0000 (13:26 +0000)]
Fix missing shadows with cycles world sample as lamp option, my mistake in
tweaking patch.

8 years agoBugfix for r.43592
Joshua Leung [Sun, 22 Jan 2012 11:59:30 +0000 (11:59 +0000)]
Bugfix for r.43592

A typo (?) meant that enum menus, such as the Set Parent (Ctrl P) menu would get
shown with empty string labels.

8 years agoPatch [#27790] Drag and drop parenting in outliner
Joshua Leung [Sun, 22 Jan 2012 10:20:30 +0000 (10:20 +0000)]
Patch [#27790] Drag and drop parenting in outliner

Submitted by Perry Parks (scuey)

From the patch:
This patch enables drag and drop parenting for objects in the outliner.

Drag and drop is supported for a selection of multiple objects as well. Also,
all of the "special" parenting tasks (armature, curve, lattice) are possible
through the usual parenting context menus. For example, drag a mesh object onto
an armature and you are prompted for using bone envelopes, automatic weights,

Demonstration on Vimeo:

8 years agoFix a crasher in WeightVG modifiers.
Bastien Montagne [Sun, 22 Jan 2012 10:14:01 +0000 (10:14 +0000)]
Fix a crasher in WeightVG modifiers.

Problem was, if no vertices were ever added to one of the obect's vgroups, there is no CD_DEFORMVERT layer, even though there might be several valid vgroup indices... Odd no one noticed that earlier.

Many thanks to miikah for finding that bug!

8 years agoPatch [#28608] Add search match colour to theme settings
Joshua Leung [Sun, 22 Jan 2012 06:10:21 +0000 (06:10 +0000)]
Patch [#28608] Add search match colour to theme settings
Submitted by Shane Ambler (sambler)

From patch description:
As a follow on from #23443 - committed in r40066 I have added the outliner
filter match highlight colour to the theme settings.

Default colour is a light green matching what was originally hard coded.

8 years agoCommitting patch "[#29763] Adding an active_events property to SCA_PythonKeyboard...
Mitchell Stokes [Sun, 22 Jan 2012 05:45:56 +0000 (05:45 +0000)]
Committing patch "[#29763] Adding an active_events property to SCA_PythonKeyboard and SCA_PythonMouse"

Here is the description:
As the summary says, this patch adds a new event to both SCA_PythonKeyboard and SCA_PythonMouse. This property is similar to the events property that both have, but it only returns events which are not KX_NO_INPUTSTATUS. This moves the "no input" check from Python to C, which gave my input handling code a 2x speed up. Python sucks (performance-wise) with iterating lists and SCA_PythonKeyboard has close to 200 events (I think something like 177, but I don't know for sure).

8 years agoBugfix [#29869] NLA editor keeps resetting my extrapolation mode every time I
Joshua Leung [Sun, 22 Jan 2012 04:39:33 +0000 (04:39 +0000)]
Bugfix [#29869] NLA editor keeps resetting my extrapolation mode every time I
edit a strip in the timeline

Tweaked the behaviour of the overwritting of extrapolation mode so that it is
less destructive when the problems it sets out to fix aren't likely to occur
(namely a top strip blocking everything below it due to extend backwards).

8 years agoBugfix [#28468] Cannot enter "Tweak mode" on mutiple objects at the same time,
Joshua Leung [Sun, 22 Jan 2012 04:30:52 +0000 (04:30 +0000)]
Bugfix [#28468] Cannot enter "Tweak mode" on mutiple objects at the same time,
though it initially works

Problem was that in the past it was possible to have multiple strips/tracks
tagged as "active", but now after getting a correct implementation, we can no
longer have that, and thus entering Tweak Mode only works on the last selected

However this is problematic in cases when you want to tweak the keyframes of
several objects (which may only have a single strip each) in order to get them
to line up with each other. This hack caters for this case (selecting multiple
strips from the same AnimData block is still impossible and insane/illogical and
is not allowed).

This may have implications for some future tools which make assumptions about
certain aspects of NLA state. However, it shouldn't cause too many problems
(hopefully ;)

8 years agofix for own error in recent paint refactor, subtract mode was broken.
Campbell Barton [Sun, 22 Jan 2012 04:30:11 +0000 (04:30 +0000)]
fix for own error in recent paint refactor, subtract mode was broken.

8 years agoBugfix [#29822] Driver's target field doesn't update on Bone rename
Joshua Leung [Sun, 22 Jan 2012 04:12:30 +0000 (04:12 +0000)]
Bugfix [#29822] Driver's target field doesn't update on Bone rename

This only affected non-object drivers, since the renaming was only getting
called on object-animdata.

8 years agoFluidsim - Restoring simulation speed control (ZanQdo request)
Joshua Leung [Sun, 22 Jan 2012 03:42:49 +0000 (03:42 +0000)]
Fluidsim - Restoring simulation speed control (ZanQdo request)

This commit restores support for freezing or speeding up physics sims. Animate
the "Speed" parameter under Domain->Time, which controls a multiplier factor for
the rate at which the sim proceeds (i.e. the old "Fac-Tim" setting).

* Subversion bumped to 4 to patch up defaults for new value so that old sim
files will still run correctly
* Names/descriptions could do with some tweaking
* Porting this across was not that obvious since quite a bit of stuff had
changed (as in, been cleaned up). However, from tests so far, it seems to work

8 years agoreduce operator lookups in the UI (could do 4 hash lookups per button).
Campbell Barton [Sun, 22 Jan 2012 03:30:07 +0000 (03:30 +0000)]
reduce operator lookups in the UI (could do 4 hash lookups per button).

8 years agocucumber merge: world scaling + video texture constants
Dalai Felinto [Sun, 22 Jan 2012 03:21:28 +0000 (03:21 +0000)]
cucumber merge: world scaling + video texture constants
revisions: 38166,38167,38177,38179,38180,38187,38242

To be implemented after merge:
1) add pydocs(rst) for the video texture new defines
2) see if a NodeSetLocalMatrix would fit well

#43439 by kupoman
Changing the worldTransform and localTransform python attributes to use BLI_math to simplify the code

#38242 by kupoman
Adding the constants SOURCE_ERROR, SOURCE_EMPTY, SOURCE_READY, SOURCE_PLAYING, SOURCE_STOPPED to the video texture module. Updates to the documentation will follow after a merge with trunk

#38187 by kupoman
Updates to the documentation to reflect that worldScale is now writable, and added localTransform and worldTransform to KX_GameObject.

#38180 by kupoman
The Transform attribute of KX_GameObject was based on world space data. I converted that one to worldTransform, and added a localTransform for local space transform information.

#38179 by kupoman
Fixed the transform attribute of KX_GameObject's set method to properly deal with negative scaling.

#38177 by kupoman
Updated the transform property on KX_GameObject so that it is now read/write, and added the corresponding set method. Also simplified the get method by calling GetOpenGLMatrix instead of making the matrix myself.

#38167 by kupoman
Adding a read only transform attribute to KX_GameObject that returns a 4x4 matrix representing the object's transformations.

#38166 by kupoman
Adding a worldScale attribute to KX_GameObject. This attribute scales the object independently of its parent's scale.

8 years agofix for 'next' being set twice in the for loop from r43588
Campbell Barton [Sun, 22 Jan 2012 00:53:53 +0000 (00:53 +0000)]
fix for 'next' being set twice in the for loop from r43588

8 years agopatch: 'set the right Action Actuator when duplicating an object' by Daniel Macedo
Dalai Felinto [Sat, 21 Jan 2012 23:57:28 +0000 (23:57 +0000)]
patch: 'set the right Action Actuator when duplicating an object' by Daniel Macedo
bug and patch not in tracker. little fix by me (replace while loop by for(...;act;...). Thanks Daniel ;)

8 years agofix for memory leak displaying shortcuts to buttons which use allocated string, also...
Campbell Barton [Sat, 21 Jan 2012 22:42:09 +0000 (22:42 +0000)]
fix for memory leak displaying shortcuts to buttons which use allocated string, also de-duplocate this code which had this error in 2 places.

noticed while testing 1023 length paths.

8 years agostyle chang, made mainly because I wanted to be able to add breakpoints to MEM_freeN...
Campbell Barton [Sat, 21 Jan 2012 22:00:40 +0000 (22:00 +0000)]
style chang, made mainly because I wanted to be able to add breakpoints to MEM_freeN calls which were on the same line as the if's.

8 years agoFix for missing NULL check in socket default_value free function. Some sockets (curre...
Lukas Toenne [Sat, 21 Jan 2012 16:36:06 +0000 (16:36 +0000)]
Fix for missing NULL check in socket default_value free function. Some sockets (currently only cycles shader sockets) don't actually have a default_value pointer.

8 years agochange filepath limit from 240 to 1024
Campbell Barton [Sat, 21 Jan 2012 14:54:53 +0000 (14:54 +0000)]
change filepath limit from 240 to 1024

8 years agoBetter api use for paths.
Campbell Barton [Sat, 21 Jan 2012 14:48:07 +0000 (14:48 +0000)]
Better api use for paths.
Avoid possibly copy past buffer.

8 years agoAdded DNA_DEPRECATED attribute to some old data in bNodeSocket. DNA_DEPRECATED is...
Lukas Toenne [Sat, 21 Jan 2012 11:15:01 +0000 (11:15 +0000)]
Added DNA_DEPRECATED attribute to some old data in bNodeSocket. DNA_DEPRECATED is disabled in writefile.c now to allow forward compatibility code writing to deprecated member data.

8 years agoformatting edits (<120 line length), remove invalid 'defaults' keyword arg from docs.
Campbell Barton [Sat, 21 Jan 2012 10:27:24 +0000 (10:27 +0000)]
formatting edits (<120 line length), remove invalid 'defaults' keyword arg from docs.

8 years agoFix [#29940] Stretch To constraint breaks scaling in Transform constraint.
Bastien Montagne [Sat, 21 Jan 2012 09:41:21 +0000 (09:41 +0000)]
Fix [#29940] Stretch To constraint breaks scaling in Transform constraint.

Compute of dist between ob/bone and target was quite odd and causing that bug.

8 years agoformatted snapquats table so entries line up, rounded to 7 significant digits (fp32...
Mike Erwin [Sat, 21 Jan 2012 05:27:25 +0000 (05:27 +0000)]
formatted snapquats table so entries line up, rounded to 7 significant digits (fp32 respects ~6), no functional change

8 years agotidy up ndof handling code -- whitespace, comments, ndof->rvec[0] to ndof->rx, etc...
Mike Erwin [Sat, 21 Jan 2012 03:37:44 +0000 (03:37 +0000)]
tidy up ndof handling code -- whitespace, comments, ndof->rvec[0] to ndof->rx, etc. no functional changes

8 years agoquiet warnings and possible NULL checking crash fix for indentation functions.
Campbell Barton [Fri, 20 Jan 2012 23:03:41 +0000 (23:03 +0000)]
quiet warnings and possible NULL checking crash fix for indentation functions.

8 years agomodify number button copy/paste to work as if you enter the button, select text,...
Campbell Barton [Fri, 20 Jan 2012 22:32:47 +0000 (22:32 +0000)]
modify number button copy/paste to work as if you enter the button, select text, type into another button the same value.

This means you can copy/paste units and python expressions.

8 years agofix 2 bugs
Campbell Barton [Fri, 20 Jan 2012 22:09:30 +0000 (22:09 +0000)]
fix 2 bugs
- box packing wasn't flagging out the right free corner of a vertex in some cases.
- tex_space_curve wasn't counting quad displists properly.

8 years agoSkip subsurf normal allocation/calculation when not needed.
Nicholas Bishop [Fri, 20 Jan 2012 19:27:04 +0000 (19:27 +0000)]
Skip subsurf normal allocation/calculation when not needed.

CCGSubsurf has already a function to disable calculation of normals,
but seems it wasn't used. This patch changes subsurf UV and
subsurf_calculate_limit_positions() to not calculate normals, and also
not allocate space for them.

Should be no functional changes, just a small speedup/less memory use
during subdivision for these cases.

Code review link:

8 years agouse property definitions more consistant with other addons in trunk. (no functional...
Campbell Barton [Fri, 20 Jan 2012 18:31:23 +0000 (18:31 +0000)]
use property definitions more consistant with other addons in trunk. (no functional change)

8 years agoTry fixing modifier keys not working correctly for uv sculpting.
Antony Riakiotakis [Fri, 20 Jan 2012 18:03:55 +0000 (18:03 +0000)]
Try fixing modifier keys not working correctly for uv sculpting.

8 years agoSample as Lamp option for world shaders, to enable multiple importance sampling.
Brecht Van Lommel [Fri, 20 Jan 2012 17:49:17 +0000 (17:49 +0000)]
Sample as Lamp option for world shaders, to enable multiple importance sampling.

By default lighting from the world is computed solely with indirect light
sampling. However for more complex environment maps this can be too noisy, as
sampling the BSDF may not easily find the highlights in the environment map
image. By enabling this option, the world background will be sampled as a lamp,
with lighter parts automatically given more samples.

Map Resolution specifies the size of the importance map (res x res). Before
rendering starts, an importance map is generated by "baking" a grayscale image
from the world shader. This will then be used to determine which parts of the
background are light and so should receive more samples than darker parts.
Higher resolutions will result in more accurate sampling but take more setup
time and memory.

Patch by Mike Farnsworth, thanks!

8 years agoMinor fix for socket default value conversion. The switch statement would not break...
Lukas Toenne [Fri, 20 Jan 2012 16:13:26 +0000 (16:13 +0000)]
Minor fix for socket default value conversion. The switch statement would not break correctly.

8 years agocomment some dead assibnment and set dummy values for image profile conversion in...
Campbell Barton [Fri, 20 Jan 2012 15:18:57 +0000 (15:18 +0000)]
comment some dead assibnment and set dummy values for image profile conversion in case of invalid input.