8 years agoBGE: Adding a render.setFullScreen() and a render.getFullScreen() to allow fulscreeni...
Mitchell Stokes [Sat, 13 Apr 2013 21:09:02 +0000 (21:09 +0000)]
BGE: Adding a render.setFullScreen() and a render.getFullScreen() to allow fulscreening games via Python.

8 years agocode cleanup: edit-derived-mesh, define 'BMesh *bm' as local variable, avoid 'bmdm...
Campbell Barton [Sat, 13 Apr 2013 20:58:49 +0000 (20:58 +0000)]
code cleanup: edit-derived-mesh, define 'BMesh *bm' as local variable, avoid 'bmdm->em->bm' within functions.

8 years agofix for error in editmesh derived callbacks, emDM_getVert(), emDM_getEdge(), emDM_get...
Campbell Barton [Sat, 13 Apr 2013 20:40:34 +0000 (20:40 +0000)]
fix for error in editmesh derived callbacks, emDM_getVert(), emDM_getEdge(), emDM_getTessFace().
Currently the functions aren't used since they would fail have failed immediately.

8 years agocode cleanup: rename BKE_tessmesh -> BKE_editmesh, rename ->...
Campbell Barton [Sat, 13 Apr 2013 20:31:52 +0000 (20:31 +0000)]
code cleanup: rename BKE_tessmesh -> BKE_editmesh, rename -> em. ('tc' is odd name which isn't used elsewhere).

8 years agoMesh Drawing:
Campbell Barton [Sat, 13 Apr 2013 20:20:21 +0000 (20:20 +0000)]
Mesh Drawing:

Option to draw mesh vertex-weights in editmode, available from the 'Mesh Display' panel.

TODO: get this to work when modifiers are applied in solid mode (texface-solidmode is working).

8 years agocode cleanup: more minor changes for editmesh face drawing.
Campbell Barton [Sat, 13 Apr 2013 18:11:27 +0000 (18:11 +0000)]
code cleanup: more minor changes for editmesh face drawing.

8 years agocode cleanup: editmesh draw functions, make face drawing more consistent.
Campbell Barton [Sat, 13 Apr 2013 17:57:11 +0000 (17:57 +0000)]
code cleanup: editmesh draw functions, make face drawing more consistent.

8 years agoNode editor: create the toolbar area right at the start in node space, in order to...
Lukas Toenne [Sat, 13 Apr 2013 17:36:31 +0000 (17:36 +0000)]
Node editor: create the toolbar area right at the start in node space, in order to show the '+' icon for expanding.

8 years agoNode UI:
Thomas Dinges [Sat, 13 Apr 2013 16:32:28 +0000 (16:32 +0000)]
Node UI:
* Now that the toolbar is useful, add menu entry into the "View" menu.

8 years agoFix some compilation errors for MinGW. Thanks to vildas on irc for
Antony Riakiotakis [Sat, 13 Apr 2013 16:29:18 +0000 (16:29 +0000)]
Fix some compilation errors for MinGW. Thanks to vildas on irc for
bringing this to attention.

8 years agoFix: uiBlockSetNFunc was using uiButHandleFunc as param signature, instead of uiButHa...
Bastien Montagne [Sat, 13 Apr 2013 16:28:39 +0000 (16:28 +0000)]
Fix: uiBlockSetNFunc was using uiButHandleFunc as param signature, instead of uiButHandleNFunc one (was working because both are the same currently).

8 years agoNode Toolbar:
Thomas Dinges [Sat, 13 Apr 2013 16:26:55 +0000 (16:26 +0000)]
Node Toolbar:
* Have panels closed by default.

8 years agoNode categories / Add menu:
Thomas Dinges [Sat, 13 Apr 2013 15:51:25 +0000 (15:51 +0000)]
Node categories / Add menu:
* Fix for Subsurface Scattering node.

8 years agoReplacing the node Add menu and making the toolbar useful
Lukas Toenne [Sat, 13 Apr 2013 15:38:02 +0000 (15:38 +0000)]
Replacing the node Add menu and making the toolbar useful

As some people have already noticed, the "Add" menu for nodes is a bit messy since pynodes merge. The reason for this is that the order of nodes in submenus (categories) was previously defined by the order in which all nodes are registered (at the bottom of blenkernel/intern/node.c). For the dynamic registration of node types now possible this system of defining node order along with registration is no longer viable: while it would still sort of work for C nodes, it is completely meaningless for dynamic (python) nodes, which are basically registered automatically in whatever order modules and addons are loaded, with the added complexity of unloading and reloading.

To fix this problem and add a bunch of desirable features this commit replaces the C menu with a python implementation. The new menu does not rely on any particular order of types in the node registry, but instead uses a simple explicit list of all the available nodes, grouped by categories (in scripts/

There are a number of additional features that become possible with this implementation:

1) Node Toolbar can be populated!
The list of nodes is used to create 2 UI items for each node: 1 entry in a submenu of "Add" menu and 1 item in a node toolbar panel with basically the same functionality. Clicking a button in the toolbar will add a new node of this type, just like selecting an item in the menu. The toolbar has the advantage of having collapsible panels for each category, so users can decide if they don't need certain nodes categories and have the rest more easily accessible.

2) Each node item is a true operator call.
The old Add menu is a pretty old piece of C code which doesn't even use proper operator buttons. Now there is a generic node_add operator which can be used very flexibly for adding any of the available nodes.

3) Node Items support additional settings.
Each "NodeItem" consists of the basic node type plus an optional list of initial settings that shall be applied to a new instance. This gives additional flexibility for creating variants of the same node or for defining preferred initial settings. E.g. it has been requested to disable previews for all nodes except inputs, this would be simple change in the py code and much less intrusive than in C.

4) Node items can be generated with a function.
A callback can be used in any category instead of the fixed list, which generates a set of items based on the context (much like dynamic enum items in bpy.props). Originally this was implemented for group nodes, because these nodes only make sense when linked to a node tree from the library data. This principle could come in handy for a number of other nodes, e.g. Image nodes could provide a similar list of node variants based on images in the library - no need to first add node, then select an image.

WARNING: pynodes scripters will have to rework their "draw_add_menu" callback in node tree types, this has been removed now! It was already pretty redundant, since one can add draw functions to the Add menu just like for any other menu. In the future i'd like to improve the categories system further so scripters can use it for custom node systems too, for now just make a draw callback and attach it to the Add menu.

8 years agoUsability fix, own collection.
Ton Roosendaal [Sat, 13 Apr 2013 15:14:34 +0000 (15:14 +0000)]
Usability fix, own collection.

If you have two windows, each with different scene, the render output for a window
would go to the other, if it was already drawing a render for the other scene.

Now you can have renders draw correct in two windows for two scenes.

8 years agocode cleanup: remove unused string formatting in bli_adddirstrings(), also remove...
Campbell Barton [Sat, 13 Apr 2013 14:57:08 +0000 (14:57 +0000)]
code cleanup: remove unused string formatting in bli_adddirstrings(), also remove unused initializations and comment unused vars.

8 years agoAccidentally left in test function. All's fine now!
Ton Roosendaal [Sat, 13 Apr 2013 14:15:16 +0000 (14:15 +0000)]
Accidentally left in test function. All's fine now!

8 years agoFix compilation, ifdef test_file just in case it is useful for later.
Antony Riakiotakis [Sat, 13 Apr 2013 14:05:31 +0000 (14:05 +0000)]
Fix compilation, ifdef test_file just in case it is useful for later.

8 years agoCycles / Save Buffers:
Thomas Dinges [Sat, 13 Apr 2013 12:49:22 +0000 (12:49 +0000)]
Cycles / Save Buffers:
* Save Buffers could not be disabled in the UI, when "Full Sample" was enabled in Blender Internal.

8 years agoBug fix #34896
Ton Roosendaal [Sat, 13 Apr 2013 12:03:20 +0000 (12:03 +0000)]
Bug fix #34896

The feature "Keep Session" was also loading that session when you double-click
on a .blend to open it, or when a .blend file was on commandline.

Moved this feature to the main() in creator.c, so it can check on it properly, skipping the
kept session when a file was loaded.

8 years agoimproved tooltips even more (as discussed in IRC)
Gaia Clary [Sat, 13 Apr 2013 09:32:27 +0000 (09:32 +0000)]
improved tooltips even more (as discussed in IRC)

8 years agoFix for [#34968] Cross compiling from linux for windows is broken
Thomas Dinges [Sat, 13 Apr 2013 09:28:07 +0000 (09:28 +0000)]
Fix for [#34968] Cross compiling from linux for windows is broken
* Patch by Martijn Berger (juicyfruit).

8 years agoimproved tooltips
Gaia Clary [Sat, 13 Apr 2013 09:27:03 +0000 (09:27 +0000)]
improved tooltips

8 years agoAdd update to brush texture preview when brush is changed. Solves
Antony Riakiotakis [Sat, 13 Apr 2013 08:41:52 +0000 (08:41 +0000)]
Add update to brush texture preview when brush is changed. Solves
cycling through tools with number or tool keys and no texture preview
getting updated.

8 years agocode cleanup: use `const char` for args and replace wm_keyconfig_list_find() -> BLI_f...
Campbell Barton [Sat, 13 Apr 2013 04:28:04 +0000 (04:28 +0000)]
code cleanup: use `const char` for args and replace wm_keyconfig_list_find() -> BLI_findstring()

8 years agocode cleanup: warnings + style
Campbell Barton [Sat, 13 Apr 2013 00:43:49 +0000 (00:43 +0000)]
code cleanup: warnings + style

8 years agoAllow rake/random brush rotation for random mapping mode. Some
Antony Riakiotakis [Fri, 12 Apr 2013 23:55:11 +0000 (23:55 +0000)]
Allow rake/random brush rotation for random mapping mode. Some
interesting things can be accomplished this way, such as tiger stripes
for instance.

8 years agoFixes:
Antony Riakiotakis [Fri, 12 Apr 2013 21:58:18 +0000 (21:58 +0000)]

* Overlay invalidation did not happen when changing brush, .either
through UI or through shortcuts
* Add initiliazation of curves before threaded overlay texture
evaluation or we may get memory leaks due to race conditions.

8 years agooversight on scons, this should fix.
Antony Riakiotakis [Fri, 12 Apr 2013 17:59:38 +0000 (17:59 +0000)]
oversight on scons, this should fix.

8 years agoAdd function to query maximum texture size. Also, make texture upload
Antony Riakiotakis [Fri, 12 Apr 2013 17:56:07 +0000 (17:56 +0000)]
Add function to query maximum texture size. Also, make texture upload
functions aware of this limit.

8 years agoPaint refactoring commit, non-disruptive (in theory :p)
Antony Riakiotakis [Fri, 12 Apr 2013 17:21:31 +0000 (17:21 +0000)]
Paint refactoring commit, non-disruptive (in theory :p)

* Fix precision overflow issue with overlay previews,
* Expose alpha mask mapping to UI (still not functional but coming soon).
* More overlay refactoring:

Overlay now does minimal checking for texture refresh.
Instead, we now have invalidation flags to set an aspect of the brush
overlay as invalid. This is necessary because this way we will be able to
separate and preview different brush attributes on the overlays, using
different textures:

These attributes/aspects are:

Primary texture (main texture for sculpt, vertex, imapaint)
Secondary texture (mask/alpha texture for imapaint)
Cursor texture (cursor texture. It involves brush strength and curves)

Modified the relevant RNA property update functions and C update callback
functions to call the relevant cursor invalidation functions instead
of checking every frame for multiple properties.

Properties that affect this are:

Image changes, if image is used by current brush,
Texture slot changes, similarly
Curve changes,
Object mode change invalidates the cursor
Paint tool change invalidates the cursor.

These changes give slightly more invalidation cases than simply
comparing the relevant properties each frame, but these do not occur in
performance critical moments and it's a much more elegant system than
adding more variables to check per frame each time we add something on
the system.

8 years agoAdd property update for radial control operator. It will be necessary
Antony Riakiotakis [Fri, 12 Apr 2013 15:45:44 +0000 (15:45 +0000)]
Add property update for radial control operator. It will be necessary
for upcoming overlay refresh commit, but since that commit is becoming
too big, better have this separate to avoid getting this lost in the

8 years agoFix for user count when adding a new library node tree. This needs to decrease user...
Lukas Toenne [Fri, 12 Apr 2013 15:42:16 +0000 (15:42 +0000)]
Fix for user count when adding a new library node tree. This needs to decrease user count by 1 to compensate for increment in RNA_property_pointer_set.

8 years agoFix #34322: cycles crash with (undo) save during threaded render. The mesh save
Brecht Van Lommel [Fri, 12 Apr 2013 15:33:09 +0000 (15:33 +0000)]
Fix #34322: cycles crash with (undo) save during threaded render. The mesh save
code was modifying pointers in the Mesh which gave crashes with another thread
accessing the data at the same time. This could crash other threaded operations
like blender internal render or physics baking too but was less likely.

As a solution I've now changed the save code that it does not modify the mesh
data structure in place but rather a copy, as undo file saving should probably
be fully read-only regardless of how an improved threading architecture might

Thanks to Sergey for tracking down the cause of this crash.

8 years agoFix #34961: camera fly mode would reset camera scale.
Brecht Van Lommel [Fri, 12 Apr 2013 14:25:08 +0000 (14:25 +0000)]
Fix #34961: camera fly mode would reset camera scale.

8 years agoBlender is compilable with strict compiler flags again
Sergey Sharybin [Fri, 12 Apr 2013 13:01:50 +0000 (13:01 +0000)]
Blender is compilable with strict compiler flags again

8 years agoAdding scrollbar default to Python console and Python Info log.
Ton Roosendaal [Fri, 12 Apr 2013 12:30:05 +0000 (12:30 +0000)]
Adding scrollbar default to Python console and Python Info log.

8 years agoMore fixes for addon i18n messages management.
Bastien Montagne [Fri, 12 Apr 2013 12:19:50 +0000 (12:19 +0000)]
More fixes for addon i18n messages management.

8 years agoAdded 'move' functions to the inputs and outputs node socket collections (similar...
Lukas Toenne [Fri, 12 Apr 2013 12:19:22 +0000 (12:19 +0000)]
Added 'move' functions to the inputs and outputs node socket collections (similar to move function in CollectionProperty). This is useful to change the socket order in pynodes. Otherwise one would have to remember socket values and links, remove a socket, insert a new one and copy back these values, which is tedious and error prone.

8 years agominor edit to bake printouts which could get mixed because of \r.
Campbell Barton [Fri, 12 Apr 2013 12:03:56 +0000 (12:03 +0000)]
minor edit to bake printouts which could get mixed because of \r.

8 years agoRemoved a lot of now-unnecessary checks from node RNA. The typeinfo pointers in bNode...
Lukas Toenne [Fri, 12 Apr 2013 11:43:21 +0000 (11:43 +0000)]
Removed a lot of now-unnecessary checks from node RNA. The typeinfo pointers in bNodeTree, bNode and bNodeSocket are now always pointing to valid type structs. If a tree, node or socket has an unknown type at load time it will be pointed to a dummy "UndefinedType" struct instead, which has default settings and allows for nice debugging. Checking if node->typeinfo etc. is NULL is not necessary any more, makes code a lot easier and smaller.

8 years agoImage draw method option
Sergey Sharybin [Fri, 12 Apr 2013 10:52:47 +0000 (10:52 +0000)]
Image draw method option

This option replaces previously added GPU limit
option, which became tricky to follow after GLSL
display space conversion.

There're 4 modes available:
- AUTO which will try to guess which mode is
  best to use.
  Currently It'll try using GLSL and if it fails,
  will fallback to 2D textures.
  Probably it'll make sense checking on whether
  2D textures works well but currently such behavior
  shall be sufficient.
  Later we could make this method smarter (for example
  don't try to use GLSL on certain GPU or so).
- GLSL will currently behave the same way as AUTO,
  but it is intended to always try using GLSL
  (unless it can not be used because of existing
  limitation of dither and RGB curves).
- 2D Textures will use CPU-based color space conversion
  and use OGL 2D Texture to display the image.
  Image will be displayed in tiles, so there shall be
  no big GPU memory consumption.
- DrawPixels will straightly fallback to glDrawPixels
  without trying to use any fancy GPU stuff.

Hopefully this will also fix
#34943: Blender crashes when resizing the Compositing Screen Window

8 years agoadd render slot cycle forward/backwards menu items.
Campbell Barton [Fri, 12 Apr 2013 10:19:31 +0000 (10:19 +0000)]
add render slot cycle forward/backwards menu items.

8 years agoMade the update callback in bNodeTree registerable in RNA, this was still missing...
Lukas Toenne [Fri, 12 Apr 2013 08:43:08 +0000 (08:43 +0000)]
Made the update callback in bNodeTree registerable in RNA, this was still missing for pynodes. This update callback can be used for "global" updates of the node tree as a whole, as opposed to "local" updates of individual nodes. Any kind of update that takes node connections into account (such as dependency sorting) and does not just work on a single node should be done in the nodetree.update function rather than node.update.

8 years agoSmall change to the node space RNA function for opening a node group: pass the node...
Lukas Toenne [Fri, 12 Apr 2013 07:35:49 +0000 (07:35 +0000)]
Small change to the node space RNA function for opening a node group: pass the node tree as explicit argument plus an optional group node, instead of trying to get the node tree from a node property. This is more flexible for future nodes that want to change the node editor. Node group operators can rely on group node types, but the generic RNA functions should not.

8 years agofix for own recent addition of transform indervidual-axis in editmode, not working...
Campbell Barton [Fri, 12 Apr 2013 02:16:44 +0000 (02:16 +0000)]
fix for own recent addition of transform indervidual-axis in editmode, not working if the object was rotated.

8 years agobge fix: framing mode "Expanded" not updated when resizing blenderplayer
Dalai Felinto [Fri, 12 Apr 2013 01:52:30 +0000 (01:52 +0000)]
bge fix: framing mode "Expanded" not updated when resizing blenderplayer
now, with a 'resize' routine for the engine we can/should also recreate some
buffers that are created only at init time (e.g., 2d filters, dome fbos, ...).

This bug was always present in Blender (since 2.49 at least).

Bugfix supported by NF-UBC Nereus Program as part of the development
of OceanViz/NereusViz

8 years agocode cleanup: warnings and style.
Campbell Barton [Fri, 12 Apr 2013 00:50:40 +0000 (00:50 +0000)]
code cleanup: warnings and style.

8 years agoRelated to #34558: clarify the description for the "default" parameter in bpy.props...
Brecht Van Lommel [Thu, 11 Apr 2013 18:10:57 +0000 (18:10 +0000)]
Related to #34558: clarify the description for the "default" parameter in bpy.props.EnumProperty.

8 years agoCorrect stub for snapObjectsRayEx
Jens Verwiebe [Thu, 11 Apr 2013 15:40:57 +0000 (15:40 +0000)]
Correct stub for snapObjectsRayEx

8 years agoAdd stub for snapObjectsRayEx
Jens Verwiebe [Thu, 11 Apr 2013 15:35:16 +0000 (15:35 +0000)]
Add stub for snapObjectsRayEx

8 years agoAdd stub for snapObjectsRayEx
Jens Verwiebe [Thu, 11 Apr 2013 15:33:10 +0000 (15:33 +0000)]
Add stub for snapObjectsRayEx

8 years agoAnd another compile fix for Windows / scons for r55946.
Thomas Dinges [Thu, 11 Apr 2013 15:33:04 +0000 (15:33 +0000)]
And another compile fix for Windows / scons for r55946.

8 years agoCompile fix for r55970.
Thomas Dinges [Thu, 11 Apr 2013 15:21:03 +0000 (15:21 +0000)]
Compile fix for r55970.

8 years agoFix #34817: improve OpenGL preview render speed, it got quite a bit slower since...
Brecht Van Lommel [Thu, 11 Apr 2013 15:15:06 +0000 (15:15 +0000)]
Fix #34817: improve OpenGL preview render speed, it got quite a bit slower since 2.60.

Doing linearization with GLSL was already faster, but even faster is to just read the
bytes instead of floats and convert those to linear, since byte => float is just a quick
256 entry table lookup. Also made it assign the bytes directly to the image buffer so
they do not need to be converted back from float to byte for file saving, and made sky
render write the background color with OpenGL instead of doing it on the CPU.

8 years agoFix #34956: rendering animation with audio would crash with an older ffmpeg
Brecht Van Lommel [Thu, 11 Apr 2013 14:46:41 +0000 (14:46 +0000)]
Fix #34956: rendering animation with audio would crash with an older ffmpeg
after recent changes.

New ffmpeg versions accept align = 0 as a parameter and will set it to 1
automatically, but older ones need to pass align = 1.

8 years agoFix issue with bright frames appearing in clip editor when compositor is open.
Sergey Sharybin [Thu, 11 Apr 2013 14:15:52 +0000 (14:15 +0000)]
Fix issue with bright frames appearing in clip editor when compositor is open.

Allocate float buffer outside of image buffer,
so work-in-progress color space conversion doesn't
interfere with other parts of blender.

Covers most of cases -- since image buffer wouldn't
have partially-update float buffer all the rest
areas would be happy.

However, if there're places which updates float
buffer from byte buffer, it's still possible
some WIP color space conversion is displayed on
the screen.

But what a heck someone will do such a crappy
conversion anyway!

8 years agoFix #34954, due to hardcoded key release it was impossible to change key
Antony Riakiotakis [Thu, 11 Apr 2013 14:15:25 +0000 (14:15 +0000)]
Fix #34954, due to hardcoded key release it was impossible to change key
for sample color and exit the operator. Also tweaked stencil to behave
similarly, so it is now possible to assign custom keys to stencil

8 years agoFix #34929: windows would show a "No disk in drive" error popup when one of the recen...
Brecht Van Lommel [Thu, 11 Apr 2013 14:13:20 +0000 (14:13 +0000)]
Fix #34929: windows would show a "No disk in drive" error popup when one of the recently opened files was on a DVD that's no longer there in the DVD drive.

8 years agoHide preview for nodes created with Setup Tracking Scene
Sergey Sharybin [Thu, 11 Apr 2013 13:34:51 +0000 (13:34 +0000)]
Hide preview for nodes created with Setup Tracking Scene

8 years agoSetup tracking scene shall work with Cycles now
Sergey Sharybin [Thu, 11 Apr 2013 13:29:51 +0000 (13:29 +0000)]
Setup tracking scene shall work with Cycles now

8 years agoAdded circle selection menu entry for lattice, pose and armature.
Konrad Kleine [Thu, 11 Apr 2013 13:29:01 +0000 (13:29 +0000)]
Added circle selection menu entry for lattice, pose and armature.

8 years agoFix for Setup Tracking Scene operator
Sergey Sharybin [Thu, 11 Apr 2013 13:25:05 +0000 (13:25 +0000)]
Fix for Setup Tracking Scene operator

- Ported to new node add operator
- Alpha mode shall be set to Transparent

8 years agoFix for material icon rendering with cycles
Sergey Sharybin [Thu, 11 Apr 2013 12:49:57 +0000 (12:49 +0000)]
Fix for material icon rendering with cycles

Materials icons used to miss transparent background
and were using world environment which didn't give
so nice results.

Reviewed by Brecht, thanks!

8 years agoFix #34923 Images that have their alpha calculated should not get de-premultiplied.
Antony Riakiotakis [Thu, 11 Apr 2013 12:37:33 +0000 (12:37 +0000)]
Fix #34923 Images that have their alpha calculated should not get de-premultiplied.

8 years agomake scene.ray_cast() behave like object.ray_cast(), add distance arg to snapObjectsR...
Campbell Barton [Thu, 11 Apr 2013 10:17:06 +0000 (10:17 +0000)]
make scene.ray_cast() behave like object.ray_cast(), add distance arg to snapObjectsRayEx().

8 years agopy api: minor change to operator attribute access, do identity comparison with None...
Campbell Barton [Thu, 11 Apr 2013 10:16:18 +0000 (10:16 +0000)]
py api: minor change to operator attribute access, do identity comparison with None (no functional change).

8 years agopy api:
Campbell Barton [Thu, 11 Apr 2013 09:57:26 +0000 (09:57 +0000)]
py api:

ray cast function, very useful to be able to cast rays into the scene for scripts.

  hit_co, hit_no, success = scene.ray_cast(start_co, end_co)

8 years agoUse SWS_FULL_CHR_H_INT for SWS context for more accurate conversion
Sergey Sharybin [Thu, 11 Apr 2013 09:37:52 +0000 (09:37 +0000)]
Use SWS_FULL_CHR_H_INT for SWS context for more accurate conversion

Suggestion by Bjeorn Sonnenschein from report #34755.

8 years agoFix #34948, bug in Cycles node groups. The proxy node maps used to identify external...
Lukas Toenne [Thu, 11 Apr 2013 09:16:36 +0000 (09:16 +0000)]
Fix #34948, bug in Cycles node groups. The proxy node maps used to identify external connections of node group nodes were having name clashes with input/output sockets of the same name, leading to invalid cyclic connections in the cycles shader graph that were subsequently removed (prints warnings in terminal). Solution is to use two separate maps for inputs and outputs so group node sockets can safely use the same identifier.

8 years agofix [#34805] Bake action ignores parent motion
Campbell Barton [Thu, 11 Apr 2013 08:42:25 +0000 (08:42 +0000)]
fix [#34805] Bake action ignores parent motion

in fact this is more feature request.
add an option to bake a parented objects animation, then clear the parent and apply the action.

8 years agofix for crash in own recent commit. searchbox's need their own keynav state since...
Campbell Barton [Thu, 11 Apr 2013 08:33:19 +0000 (08:33 +0000)]
fix for crash in own recent commit. searchbox's need their own keynav state since they won't always be in a uiPopupBlockHandle.

8 years agofix [#34936] Unable to select items using only the arrow keys
Campbell Barton [Thu, 11 Apr 2013 02:28:34 +0000 (02:28 +0000)]
fix [#34936] Unable to select items using only the arrow keys

ignore small mouse motions for menu/search-box after using the keyboard to navigate.

8 years agoadd 2d length functions for testing pixel coords. len_manhattan_v2_int, len_manhattan...
Campbell Barton [Thu, 11 Apr 2013 02:23:45 +0000 (02:23 +0000)]
add 2d length functions for testing pixel coords. len_manhattan_v2_int, len_manhattan_v2v2_int

8 years agofix own mistake in recent inset-interpolation option, some faces were not interpolating.
Campbell Barton [Thu, 11 Apr 2013 00:23:09 +0000 (00:23 +0000)]
fix own mistake in recent inset-interpolation option, some faces were not interpolating.

8 years agofix [#34947] Alt-F Fill not working
Campbell Barton [Wed, 10 Apr 2013 23:59:37 +0000 (23:59 +0000)]
fix [#34947] Alt-F Fill not working
Regression in r54579.

8 years agocode cleanup: unused defines, remove unused scanfill success value from BLI_scanfill_...
Campbell Barton [Wed, 10 Apr 2013 23:52:07 +0000 (23:52 +0000)]
code cleanup: unused defines, remove unused scanfill success value from BLI_scanfill_begin().

8 years agointerpolate verts as well as loops for inset.
Campbell Barton [Wed, 10 Apr 2013 23:25:44 +0000 (23:25 +0000)]
interpolate verts as well as loops for inset.
- add vertex option to BM_face_interp_from_face, also expose via python.

8 years agoFluid threads: re-add an erratically forgotten line, fix typo, set default threadcoun...
Jens Verwiebe [Wed, 10 Apr 2013 23:19:57 +0000 (23:19 +0000)]
Fluid threads: re-add an erratically forgotten line, fix typo, set default threadcount to logical threadcount of machine

8 years agoFluid threads: add a restore to former omp threadcount when baking is done, todo...
Jens Verwiebe [Wed, 10 Apr 2013 23:10:25 +0000 (23:10 +0000)]
Fluid threads: add a restore to former omp threadcount when baking is done, todo: default should be logical corecount

8 years agocorrection to own recent changes to exitmode using axis-matrix, fallback to old behav...
Campbell Barton [Wed, 10 Apr 2013 23:05:35 +0000 (23:05 +0000)]
correction to own recent changes to exitmode using axis-matrix, fallback to old behavior for editmodes where the axis-matrix isnt set (curve, surface, lattice)

8 years agocode cleanup: unused vars, make other vars static.
Campbell Barton [Wed, 10 Apr 2013 22:49:50 +0000 (22:49 +0000)]
code cleanup: unused vars, make other vars static.

8 years agoFix for a crash in the Bezier Curve geometry modifier.
Tamito Kajiyama [Wed, 10 Apr 2013 22:20:24 +0000 (22:20 +0000)]
Fix for a crash in the Bezier Curve geometry modifier.
Least-squares fitting parameters were stored in a fixed size array, causing a
buffer overflow depending on the number of input points.
Problem report with a .blend file to reproduce the issue and a bugfix patch by
christiankrupa and jensverwiebe on IRC, thanks a lot!
Many thanks also to Bastien Montagne for forwarding the problem report by email.

8 years ago* Better tooltip for WM_OT_properties_context_change.
Thomas Dinges [Wed, 10 Apr 2013 20:36:22 +0000 (20:36 +0000)]
* Better tooltip for WM_OT_properties_context_change.

8 years agoAdded to the Freestyle panel in the Render buttons a button to switch to the Render...
Tamito Kajiyama [Wed, 10 Apr 2013 20:20:20 +0000 (20:20 +0000)]
Added to the Freestyle panel in the Render buttons a button to switch to the Render Layers context.

8 years agoThe fluid threads setting is still WIP, for now fix compiling without openMP enabled
Jens Verwiebe [Wed, 10 Apr 2013 20:05:11 +0000 (20:05 +0000)]
The fluid threads setting is still WIP, for now fix compiling without openMP enabled

8 years agoAdd a gui control for setting omp threads in fluids
Jens Verwiebe [Wed, 10 Apr 2013 18:35:18 +0000 (18:35 +0000)]
Add a gui control for setting omp threads in fluids

8 years agoFix #34941: Space.draw_handler_add now supports PRE_VIEW and POST_VIEW callbacks
Brecht Van Lommel [Wed, 10 Apr 2013 16:59:55 +0000 (16:59 +0000)]
Fix #34941: Space.draw_handler_add now supports PRE_VIEW and POST_VIEW callbacks
for more editors: timeline, graph, action, NLA, sequencer, image, clip.

8 years agoOSX: remove the applescript and env var for omp_set_treads from plist
Jens Verwiebe [Wed, 10 Apr 2013 15:22:39 +0000 (15:22 +0000)]
OSX: remove the applescript and env var for omp_set_treads from plist

8 years agopy api: path_reference_copy() use try/except when copying images, can fail for odd...
Campbell Barton [Wed, 10 Apr 2013 12:16:27 +0000 (12:16 +0000)]
py api: path_reference_copy() use try/except when copying images, can fail for odd reasons (currently fails if the dest dir is a symlink and not using expected permissions).

8 years agopy api: simple function to get an image from an objects for simple formats that only...
Campbell Barton [Wed, 10 Apr 2013 11:43:25 +0000 (11:43 +0000)]
py api: simple function to get an image from an objects for simple formats that only support one image per object.

8 years agoalternate solution for r55921 which was calling invoke() from exec(), which shouldnt...
Campbell Barton [Wed, 10 Apr 2013 09:49:44 +0000 (09:49 +0000)]
alternate solution for r55921 which was calling invoke() from exec(), which shouldnt be done.

8 years agoCode cleanup.
Thomas Dinges [Wed, 10 Apr 2013 02:58:22 +0000 (02:58 +0000)]
Code cleanup.

8 years agoFix for [#34904] and [#34913]: broken Freestyle edge/face marks with modifiers.
Tamito Kajiyama [Wed, 10 Apr 2013 01:12:37 +0000 (01:12 +0000)]
Fix for [#34904] and [#34913]: broken Freestyle edge/face marks with modifiers.

8 years agoFix for the subtype of range_min/max parameters in RNA Freestyle settings.
Tamito Kajiyama [Wed, 10 Apr 2013 00:20:05 +0000 (00:20 +0000)]
Fix for the subtype of range_min/max parameters in RNA Freestyle settings.
These parameters specify a distance in Blender units, so PROP_DISTANCE is more appropriate.
Suggested by Bastien Montagne through personal communications, thanks!

8 years agoFix for [#34934] Freestyle options are in wrong tab.
Tamito Kajiyama [Tue, 9 Apr 2013 23:54:11 +0000 (23:54 +0000)]
Fix for [#34934] Freestyle options are in wrong tab.

Added a label to guide users to line style settings in the Render Layers context
(in line with the similar labels found in the Cloth and Soft Body modifier panels),
so that Freestyle options per render layer can be more easily found.

8 years agoFix 34764: cycles issue rendering instanced mesh with NaN coordinates.
Brecht Van Lommel [Tue, 9 Apr 2013 20:48:53 +0000 (20:48 +0000)]
Fix 34764: cycles issue rendering instanced mesh with NaN coordinates.

8 years agoFix scons compile after GHOST_Sizer commit
Jens Verwiebe [Tue, 9 Apr 2013 18:58:01 +0000 (18:58 +0000)]
Fix scons compile after GHOST_Sizer commit

8 years agoFix #34938: Not freeing dynstr_cstring memory blocks when setting shape keys
Sergey Sharybin [Tue, 9 Apr 2013 17:31:34 +0000 (17:31 +0000)]
Fix #34938: Not freeing dynstr_cstring memory blocks when setting shape keys

In fact almost any rna pointer-to-string had a memory leak.

Patch by Jakub Zolcik (sftd) with minor modification.

8 years agoLive window resizing on Windows
Alexander Kuznetsov [Tue, 9 Apr 2013 17:21:05 +0000 (17:21 +0000)]
Live window resizing on Windows
Custom implementation for resizing (GHOST_SizerWin32)

Some things still don't work:
* esc cancel
* max windows size
* aero (sizing) snap on win7

hbrBackground = 0 to disable clear screen.

Thanks to dfelinto for help in finding of root cause.