9 years agoBundle latest version of Carve library which shall resolve compilation issues with...
Sergey Sharybin [Mon, 12 Mar 2012 21:18:28 +0000 (21:18 +0000)]
Bundle latest version of Carve library which shall resolve compilation issues with clang

9 years agofix [#30529] BMesh: Wrong Indizes of Faces
Campbell Barton [Mon, 12 Mar 2012 21:09:27 +0000 (21:09 +0000)]
fix [#30529] BMesh: Wrong Indizes of Faces

problem was bow-tie quads would add opposite normals together and result in zero vector which was used for projection.
Now is_quad_convex_v3() checks if quad contains 2 faces which point away from eachother when split by either direction.

Theres another fix for this bug which can be done since creating the face can use existing edges in the example given so it wont have to guess which order of verts to use.

9 years agoFix #30406: Hooks ignore Automatic handles setting in curves
Sergey Sharybin [Mon, 12 Mar 2012 14:55:56 +0000 (14:55 +0000)]
Fix #30406: Hooks ignore Automatic handles setting in curves

Update handles positions after applying modifiers which seems to be expected behavior.
The only currently unsolved issue is about updating aligned handles because this needs
to determine in which order handles need to be recalculated which currently depends on
selection flags and which is quite tricky to do when running modifiers and animation data,
so currently just not update their positions for now.

9 years agoFix for lasso gestures. After executing the modal gesture operator the list of gestur...
Lukas Toenne [Mon, 12 Mar 2012 14:39:37 +0000 (14:39 +0000)]
Fix for lasso gestures. After executing the modal gesture operator the list of gesture points is copied to the operator "path" id property, which is simply a collection of points. This list must be cleared before adding new lasso points to it, since operator properties are now stored after each execution. Noticed by Olivier Amrein (oenvoyage) on IRC.

9 years agoFix #30496: Bugs and crashes about "make links modifers" function.
Sergey Sharybin [Mon, 12 Mar 2012 14:35:07 +0000 (14:35 +0000)]
Fix #30496: Bugs and crashes about "make links modifers" function.

Was missed check for if modifier is available for particular object type
which ended up with unpredictable results when modifier which isn't supported
yet for some object type as linked to that object type.

9 years agoFix #30524: documentation example code for bge.types.KX_MeshProxy did not work,
Brecht Van Lommel [Mon, 12 Mar 2012 13:04:06 +0000 (13:04 +0000)]
Fix #30524: documentation example code for bge.types.KX_MeshProxy did not work,
using fix suggested by Ryan King.

9 years agoCode cleanup: knife gathers pos-related state into a struct. No functional change.
Howard Trickey [Mon, 12 Mar 2012 12:45:55 +0000 (12:45 +0000)]
Code cleanup: knife gathers pos-related state into a struct. No functional change.

This is in preparation for bug fixing and cleanup related to tracking
of bmface and is_space state variables.  And makes it more likely
to avoid bugs in future where some part of state is copied but not all.

9 years agoOSX/cmake: use again 10.5 as general deployment target ( pls verify 10.5 compatibilit...
Jens Verwiebe [Mon, 12 Mar 2012 12:03:52 +0000 (12:03 +0000)]
OSX/cmake: use again 10.5 as general deployment target ( pls verify 10.5 compatibility works with automatic weaklinking), use now then sdk which for sure exists, remove obsolete slash

9 years agoFix #30512: external render saved render result after reporting error.
Brecht Van Lommel [Mon, 12 Mar 2012 11:32:23 +0000 (11:32 +0000)]
Fix #30512: external render saved render result after reporting error.

9 years agoMake knifetool more robust against crashes. Fix some hole problems.
Howard Trickey [Mon, 12 Mar 2012 11:27:59 +0000 (11:27 +0000)]
Make knifetool more robust against crashes. Fix some hole problems.

Sometimes split would fail to make a face - make sure it doesn't
crash if that happens.
Chain finding code for holes would sometimes go back to same
vertex on the face, which causes problems, so fixe that.
Also, disallowed a cut that starts at a vertex or edge and
cycles back to that same point in a face - this would make
a face with a repeated vertex, which may not be handled by
the rest of the system properly.

9 years agoStyle cleanup in blenfont (spaces, C++ comments, etc.).
Bastien Montagne [Mon, 12 Mar 2012 09:22:16 +0000 (09:22 +0000)]
Style cleanup in blenfont (spaces, C++ comments, etc.).

9 years agoRemoving SWAP macro define from BLI_heap.c, already present in BLI_utildefines.h...
Bastien Montagne [Mon, 12 Mar 2012 09:20:38 +0000 (09:20 +0000)]
Removing SWAP macro define from BLI_heap.c, already present in BLI_utildefines.h, giving compile error.

9 years agoCommit patch from Shane Ambler to make VideoTexture compile with a clang on FreeBSD.
Sergey Sharybin [Mon, 12 Mar 2012 08:46:53 +0000 (08:46 +0000)]
Commit patch from Shane Ambler to make VideoTexture compile with a clang on FreeBSD.

9 years agoRe-bundle libmv from own branch.
Sergey Sharybin [Mon, 12 Mar 2012 08:45:06 +0000 (08:45 +0000)]
Re-bundle libmv from own branch.

Should resolve compilation error on some platforms when using linux and
compilation error of libmv on FreeBSB.

It was a regression caused by not applied changes on config_linux.h
and some changes made to were also occasionally missed.

9 years agoFix msvc compilation errors. (__func__ undeclared)
Miika Hamalainen [Mon, 12 Mar 2012 07:21:22 +0000 (07:21 +0000)]
Fix msvc compilation errors. (__func__ undeclared)

9 years agocode cleanup/bugfix uninitialized values
Campbell Barton [Mon, 12 Mar 2012 06:53:47 +0000 (06:53 +0000)]
code cleanup/bugfix uninitialized values
- edgebisect bmesh operator used uninialized beauty field.
- BLI_join_dirfile could read from before the string bounds when passed an empty dir string.
- pransform could use an uninitialized projected coordinate (unlikely but possible)
- RNA_property_path_from_ID_check would compare against an uninitialized pointer when the path wasn't found.

also have bmesh walker use BM_edge_other_vert() utility function.

9 years agostyle cleanup: line length - some over 300 long.
Campbell Barton [Mon, 12 Mar 2012 06:07:16 +0000 (06:07 +0000)]
style cleanup: line length - some over 300 long.

9 years agoSVN maintenance.
Guillermo S. Romero [Mon, 12 Mar 2012 04:35:06 +0000 (04:35 +0000)]
SVN maintenance.

9 years agofix [#30472] 3d view objects not rendered, cycles.
Campbell Barton [Mon, 12 Mar 2012 01:34:38 +0000 (01:34 +0000)]
fix [#30472] 3d view objects not rendered, cycles.

holdout layer wasnt initializes in some cases.

9 years agotext delimiter - convert to unicode before comparing characters.
Campbell Barton [Mon, 12 Mar 2012 00:03:42 +0000 (00:03 +0000)]
text delimiter - convert to unicode before comparing characters.

9 years agostyle cleanup
Campbell Barton [Sun, 11 Mar 2012 23:47:41 +0000 (23:47 +0000)]
style cleanup

9 years agobmesh: edge loop select
Campbell Barton [Sun, 11 Mar 2012 21:47:14 +0000 (21:47 +0000)]
bmesh: edge loop select
    add support for loop selecting boundry edges only - handy for loop selecting the side of an ngon.

9 years agoFix edge loop selection. Now boundary selection checks only for filled edges to deter...
Antony Riakiotakis [Sun, 11 Mar 2012 20:45:58 +0000 (20:45 +0000)]
Fix edge loop selection. Now boundary selection checks only for filled edges to determine when to stop and stops at vertices shared by only 2 edges.

9 years agoPort changes from libmv/CMakeLists.txt to build rules files generator script
Sergey Sharybin [Sun, 11 Mar 2012 20:01:26 +0000 (20:01 +0000)]
Port changes from libmv/CMakeLists.txt to build rules files generator script

9 years agoremove Object member from BMesh struct - was only used for undo and BMEditMesh alread...
Campbell Barton [Sun, 11 Mar 2012 19:58:56 +0000 (19:58 +0000)]
remove Object member from BMesh struct - was only used for undo and BMEditMesh already stores an object pointer.

also fix for own mistake with mesh conversion refactor, shape key index was off by 1 when switching editmode.

9 years agoBundle new upstream version of libmv from own branch
Sergey Sharybin [Sun, 11 Mar 2012 19:52:25 +0000 (19:52 +0000)]
Bundle new upstream version of libmv from own branch

This version of libmv includes new gflags and glog libraries which makes
it possible to compile libmv with clang compiler.

Also remove code from CMakeLists which was disabling libmv if using clang.

Tested on linux with gcc-4.6 and clang-3.0, windows cmake+msvc and scons+mingw.
Could be some issues with other platforms/build system which shall be simple to resolve.

9 years agostyle cleanup, also remove unused externs.
Campbell Barton [Sun, 11 Mar 2012 19:09:01 +0000 (19:09 +0000)]
style cleanup, also remove unused externs.

9 years agoimprove confusing macro GET_ACF_FLAG_PTR
Campbell Barton [Sun, 11 Mar 2012 17:41:19 +0000 (17:41 +0000)]
improve confusing macro GET_ACF_FLAG_PTR
- was operating on `type` which wasnt an argument to the macro.
- was calling return within the macro (makes code harder to follow).

9 years ago[#30503] Callback for render job completion
Campbell Barton [Sun, 11 Mar 2012 17:24:03 +0000 (17:24 +0000)]
[#30503] Callback for render job completion
from Jason van Gumster (thefallenweeble)

adds render_complete and render_cancel callbacks to

9 years agoCycles UI files:
Thomas Dinges [Sun, 11 Mar 2012 16:25:58 +0000 (16:25 +0000)]
Cycles UI files:
* Minor cleanup and raise blender version to 2.62 in the addon.

9 years agofix for debug assignment left in from own commit r44778
Campbell Barton [Sun, 11 Mar 2012 15:27:08 +0000 (15:27 +0000)]
fix for debug assignment left in from own commit r44778

also removed private face normal update functions - they were same as public.

9 years agoOSX/libmv: restrict the unwind.h workaround to 10.6.sdk only
Jens Verwiebe [Sun, 11 Mar 2012 12:15:39 +0000 (12:15 +0000)]
OSX/libmv: restrict the unwind.h workaround to 10.6.sdk only

9 years agoOSX/libmv: added a ahck to fix compiling with 10.6.sdk, unwind.h related
Jens Verwiebe [Sun, 11 Mar 2012 11:23:30 +0000 (11:23 +0000)]
OSX/libmv: added a ahck to fix compiling with 10.6.sdk, unwind.h related

9 years agobmesh python api additions:
Campbell Barton [Sun, 11 Mar 2012 05:58:22 +0000 (05:58 +0000)]
bmesh python api additions:
- BMesh.is_wrapped
- BMesh.copy()
- BMesh.clear()
- BMesh.from_object(obj, apply_modifiers=True)
- BMEdge.calc_length()
- BMLoop.calc_normal()
- BMLoop.calc_tangent()

9 years agobmesh py api - correct class references in docs and rename mesh conversion funcs...
Campbell Barton [Sun, 11 Mar 2012 04:07:22 +0000 (04:07 +0000)]
bmesh py api - correct class references in docs and rename mesh conversion funcs to ne less confusing.

9 years agobmesh py api: change .from_mesh() / .to_mesh() to be class methods of BMesh rather...
Campbell Barton [Sun, 11 Mar 2012 02:45:27 +0000 (02:45 +0000)]
bmesh py api: change .from_mesh() / .to_mesh() to be class methods of BMesh rather than functions in the module.

added example script which converts a mesh to a bmesh, edits and converts back again.

9 years agocode cleanup: remove unused externs.
Campbell Barton [Sun, 11 Mar 2012 00:00:27 +0000 (00:00 +0000)]
code cleanup: remove unused externs.

9 years agostyle cleanup: + some warning fixes, also remove unused metaelem extern.
Campbell Barton [Sat, 10 Mar 2012 22:00:55 +0000 (22:00 +0000)]
style cleanup: + some warning fixes, also remove unused metaelem extern.

9 years ago[#30373] Which part to snap in volume snapping is removed
Martin Poirier [Sat, 10 Mar 2012 21:40:35 +0000 (21:40 +0000)]
[#30373] Which part to snap in volume snapping is removed

By Bug reported by Pep Ribal

Also fixed an object mode bug with volume snapping and made it compatible with the edit mode "Snap on self" option

9 years agobmesh:
Campbell Barton [Sat, 10 Mar 2012 20:41:19 +0000 (20:41 +0000)]
- moved mesh conversion functions into their own file.

bmesh py api:
- can now create a new empty bmesh without first creating mesh data.
- added function to copy bmesh data back to a mesh.
- bmesh.from_mesh() can now get a mesh which isnt in editmode.

9 years ago2.6 UI:
Thomas Dinges [Sat, 10 Mar 2012 20:30:05 +0000 (20:30 +0000)]
2.6 UI:
World Context:
* Made world id block wider
* Don't show texture user when Cycles engine is used
* Change Dopesheet > DopeSheet in User Preferences Theme section for consistency.

9 years ago2.6 UI:
Thomas Dinges [Sat, 10 Mar 2012 20:08:25 +0000 (20:08 +0000)]
2.6 UI:
* Hide Modifier and Contraint Panel header, this gives a bit space.
As it's the only panel in these context tabs it does not make sense to close them anyways.

9 years agopatch [#30511] Save/load window state (allows Blender to start maximised)
Campbell Barton [Sat, 10 Mar 2012 17:49:26 +0000 (17:49 +0000)]
patch [#30511] Save/load window state (allows Blender to start maximised)
from Tom Edwards (artfunkel)

This patch fixes bug [#20791]

9 years agoRemove remained part of debug code.
Sergey Sharybin [Sat, 10 Mar 2012 17:14:50 +0000 (17:14 +0000)]
Remove remained part of debug code.

9 years agoForgot to remove code used for debuggning in previous commit.
Sergey Sharybin [Sat, 10 Mar 2012 16:55:09 +0000 (16:55 +0000)]
Forgot to remove code used for debuggning in previous commit.

9 years agoOSX/cmake: added a comment on method used
Jens Verwiebe [Sat, 10 Mar 2012 16:39:51 +0000 (16:39 +0000)]
OSX/cmake: added a comment on method used

9 years agoFinally 2D stabilization auto scale factor should be calculated perfectly
Sergey Sharybin [Sat, 10 Mar 2012 16:31:12 +0000 (16:31 +0000)]
Finally 2D stabilization auto scale factor should be calculated perfectly

9 years agoOSX/cmake: ensure newest Xcode compatibility, important: still needs a patched cmake...
Jens Verwiebe [Sat, 10 Mar 2012 16:21:48 +0000 (16:21 +0000)]
OSX/cmake: ensure newest Xcode compatibility, important: still needs a patched cmake ( see error you will get if missed ), patched cmake provided here:

9 years agofix for own error in recent commit with UV texture layers. - was shadowing variable...
Campbell Barton [Sat, 10 Mar 2012 15:55:25 +0000 (15:55 +0000)]
fix for own error in recent commit with UV texture layers. - was shadowing variable so assignment failed.

9 years agostyle cleanup
Campbell Barton [Sat, 10 Mar 2012 14:43:12 +0000 (14:43 +0000)]
style cleanup

9 years agostyle cleanup: unit code
Campbell Barton [Sat, 10 Mar 2012 14:20:55 +0000 (14:20 +0000)]
style cleanup: unit code

9 years agoFix an infinite loop in get_levels_from_disps().
Nicholas Bishop [Sat, 10 Mar 2012 12:26:32 +0000 (12:26 +0000)]
Fix an infinite loop in get_levels_from_disps().

This is called when adding a multiries modifier. BMesh MDisps have
only one loop's displacements rather than a full face's, so don't
multiply by number of corners here.

9 years agostyle cleanup: fly mode.
Campbell Barton [Sat, 10 Mar 2012 06:46:23 +0000 (06:46 +0000)]
style cleanup: fly mode.

9 years agofix [#30500] Mesh.tessface_uv_textures or Mesh.tessface_vertex_colors crash on access...
Campbell Barton [Sat, 10 Mar 2012 05:20:41 +0000 (05:20 +0000)]
fix [#30500] Mesh.tessface_uv_textures or Mesh.tessface_vertex_colors crash on access in editmode

just missing NULL checks on face data.

9 years agoRemove the OBJECT_OT_test_multires operator.
Nicholas Bishop [Sat, 10 Mar 2012 05:15:17 +0000 (05:15 +0000)]
Remove the OBJECT_OT_test_multires operator.

Originated in r35213, appears to have been some test for multires in

9 years agochange fly mode behavior to address issue raised in [#30508] - there being no way...
Campbell Barton [Sat, 10 Mar 2012 04:19:25 +0000 (04:19 +0000)]
change fly mode behavior to address issue raised in [#30508] - there being no way to pause.

now when reversing direction immediately - fly mode translation will pause until pressed again.

9 years agoSpeedup for ngon normal calculation
Campbell Barton [Sat, 10 Mar 2012 03:25:16 +0000 (03:25 +0000)]
Speedup for ngon normal calculation

- BM_mesh_normals_update was looping over all faces to find the largest one, this is no longer needed.
- calculating a face normal was looping over every faces corners twice, now only once - using the loops directly (not an iterator).
- face vert locations were being copied an array, now use directly.
- calculating the normals would copy a float vector for the next point in the face, which was never used (only current and previous used).
- was copying vectors to compute the normal, now just assign the float pointers.

9 years agoRevert changes BMesh changes MDisp loading in readfile.c
Nicholas Bishop [Sat, 10 Mar 2012 03:07:42 +0000 (03:07 +0000)]
Revert changes BMesh changes MDisp loading in readfile.c

These changes originated in r35321, which transfered MDisps to a
different memory allocator; this is no long used, however, so
post-merge it was just making an identical copy.

9 years agopicky changes to mouse cursor text selection behavior, previously as soon as the...
Campbell Barton [Fri, 9 Mar 2012 23:10:07 +0000 (23:10 +0000)]
picky changes to mouse cursor text selection behavior, previously as soon as the mouse was before a character it would select the previous, even if the cursor was closer to the space between the next 2 chars.

now find the closest point inbetween both chars.

9 years agodisable object outline draw when painting (its distracting), also fix for own recent...
Campbell Barton [Fri, 9 Mar 2012 22:00:40 +0000 (22:00 +0000)]
disable object outline draw when painting (its distracting), also fix for own recent mistake in vgroup_blend(). - had bad check for editmesh.

9 years agocode cleanup: remove unused variable assignents and added bmesh submodule links,...
Campbell Barton [Fri, 9 Mar 2012 21:23:15 +0000 (21:23 +0000)]
code cleanup: remove unused variable assignents and added bmesh submodule links, doc correction reported by dfelinto.

9 years agobmesh fix: faces were being created flipped the wrong way compared to surrounding...
Campbell Barton [Fri, 9 Mar 2012 20:29:53 +0000 (20:29 +0000)]
bmesh fix: faces were being created flipped the wrong way compared to surrounding geometry.
also the last edge was mot taken into account when calculating the correct winding.

9 years agostyle cleanup: consistent names for header guards.
Campbell Barton [Fri, 9 Mar 2012 19:17:19 +0000 (19:17 +0000)]
style cleanup: consistent names for header guards.

9 years agoCycles: another tooltip tweak.
Brecht Van Lommel [Fri, 9 Mar 2012 19:01:44 +0000 (19:01 +0000)]
Cycles: another tooltip tweak.

9 years agoFix makesdna error due to poor comment parsing, should be fixed in makesdna
Brecht Van Lommel [Fri, 9 Mar 2012 19:01:30 +0000 (19:01 +0000)]
Fix makesdna error due to poor comment parsing, should be fixed in makesdna
ideally but for now just tweak code in case it causes issues.

ERROR: still 1 structs unknown
*** Unknown structs: bSound

9 years agostyle cleanup: comment blocks
Campbell Barton [Fri, 9 Mar 2012 18:28:30 +0000 (18:28 +0000)]
style cleanup: comment blocks

9 years agoDO not increment image user counter on view3d duplicate and not decrement
Sergey Sharybin [Fri, 9 Mar 2012 13:43:37 +0000 (13:43 +0000)]
DO not increment image user counter on view3d duplicate and not decrement
it's user count on free. That's how other spaces handles ID block (like
image editor, space clip).

This fixes issue when loading file without loading UI when current layout
has got background images set.
Also this hopefully will fix issue #30429: Background Images Lost on Save/Close/Reload

9 years agoPrevious fix for stabilization autoscale actually broke stabilizaiton itself
Sergey Sharybin [Fri, 9 Mar 2012 13:37:42 +0000 (13:37 +0000)]
Previous fix for stabilization autoscale actually broke stabilizaiton itself
(median point was sliding a bit from it's original position)

This happens because of how transformation for stabilization calculates:
image is scaling around it's center, so image translation should be recalculated
after scale was changed, but scale also depends on translation. That's where
tricky things happens. It's still not ideal for case of rotation, but before
fixing this issue better to figure out usecase and see if it's indeed
so needed to scale around image center (it might only be helpful to use
stabilization parameters in compositor nodes).

9 years agoMarkers Tweak for Sequencer
Joshua Leung [Fri, 9 Mar 2012 13:31:20 +0000 (13:31 +0000)]
Markers Tweak for Sequencer

Applied the keymaps hack which is used for other animation editors to allow
markers to be added and renamed anywhere from within the sequencer strips
region, instead of just when the cursor is over the scrollbar.

Other operations where the hotkeys conflict though (delete, move) can still be
done only from the scrollbar, or better still, from the Timeline.

9 years agoTweaks for typos in the Keying Set descriptions commit
Joshua Leung [Fri, 9 Mar 2012 10:24:53 +0000 (10:24 +0000)]
Tweaks for typos in the Keying Set descriptions commit

9 years agoNode socket selection feature reimplemented from 2.49. Sockets can be selected as...
Lukas Toenne [Fri, 9 Mar 2012 10:16:41 +0000 (10:16 +0000)]
Node socket selection feature reimplemented from 2.49. Sockets can be selected as a sub-selection of nodes and are then preferred by the auto-connect operator. This makes it easier to create precise links over long distances as an alternative to the click & hold operator.
Socket selection is indicated by a simple white highlight circle.

Multiple inputs can be selected by holding SHIFTKEY (just like regular node select). Only one output socket can be selected at a time for each node, but several outputs in different nodes are allowed.

The auto-connect operator will prefer selected sockets on nodes for creating links. If either the output or input side have no selected sockets it will fall back to the previous behavior of chosing 'best' sockets first (colors, then vectors, then values). This could be improved in the future, but is out of scope here.

9 years agoSome fixes for 2D stabilization:
Sergey Sharybin [Fri, 9 Mar 2012 10:01:29 +0000 (10:01 +0000)]
Some fixes for 2D stabilization:
- Ron aspect ratio correction after applying location
  There're still some annoynments with rotation stabilization with
  pixel aspect != 1, will be fixed later.
- Joining tracks will update track used for rotation stabilization/

9 years agoOptimize index buffers for multires drawing in sculpt mode.
Nicholas Bishop [Fri, 9 Mar 2012 09:30:03 +0000 (09:30 +0000)]
Optimize index buffers for multires drawing in sculpt mode.

All multires grids have exactly the same ordering, so rather than
allocate a new index buffer for each PBVH node, just allocate one that
can be reused for every grid.

This requires more draw calls (one per grid rather than one per PBVH
node), but less graphics memory.

9 years agocode cleanup: replace macros VECCOPY, VECADD, VECSUB, INPR - with BLI_math funcs.
Campbell Barton [Fri, 9 Mar 2012 06:04:17 +0000 (06:04 +0000)]
code cleanup: replace macros VECCOPY, VECADD, VECSUB, INPR - with BLI_math funcs.

added copy float/double funcs: copy_v3fl_v3db(), copy_v3db_v3fl(). 2d & 4d too.

9 years agosome code cleanup for rip tool.
Campbell Barton [Fri, 9 Mar 2012 04:10:19 +0000 (04:10 +0000)]
some code cleanup for rip tool.

9 years agoBMesh: rewrite edge split code (used by edge split modifier and rip tool)
Campbell Barton [Fri, 9 Mar 2012 03:16:39 +0000 (03:16 +0000)]
BMesh: rewrite edge split code (used by edge split modifier and rip tool)
this fixes but [#30461] where the same vertex was added to some faces twice.

Previous code rebuilt all faces around the split edges, replace this with much simpler code that uses existing bmesh API for splitting.

This also gives a performance boost to the modifier (over 30x faster in the bug-report file).

9 years agostyle cleanup: spelling.
Campbell Barton [Fri, 9 Mar 2012 00:41:09 +0000 (00:41 +0000)]
style cleanup: spelling.

also remove large, duplicate comments from sunsky.h

9 years agoadded API function to C and python
Campbell Barton [Fri, 9 Mar 2012 00:01:38 +0000 (00:01 +0000)]
added API function to C and python

* C:  BM_vert_separate(...)
* py: bmesh.utils.vert_separate(vert, edges)

This splits off regions around the vertex, splitting on connected edges passed in a sequence.

also made minor changes
- rename python api functions _rip to _separate
- fixed bmesh iterator being iterable its self (some parts of python expect this)
- fix memory leak in bmesh python api.

9 years agoUse sqrtf rather than sqrt in CCGSubSurf.c
Nicholas Bishop [Thu, 8 Mar 2012 22:33:34 +0000 (22:33 +0000)]
Use sqrtf rather than sqrt in CCGSubSurf.c

9 years ago- MSVC doesn't have log2f function
Sergey Sharybin [Thu, 8 Mar 2012 21:14:54 +0000 (21:14 +0000)]
- MSVC doesn't have log2f function
- Fix misusage of new [] and delete in BGE.

9 years agoCycles: improve F/Stop number tooltip description.
Brecht Van Lommel [Thu, 8 Mar 2012 20:13:33 +0000 (20:13 +0000)]
Cycles: improve F/Stop number tooltip description.

9 years agobmesh py api, new functions:
Campbell Barton [Thu, 8 Mar 2012 20:00:37 +0000 (20:00 +0000)]
bmesh py api, new functions:
* bmesh.utils.face_vert_rip(f, v)
* bmesh.utils.loop_rip(l)

9 years agoCycles: fix UI when material has nodes but use nodes option is disabled, it
Brecht Van Lommel [Thu, 8 Mar 2012 19:53:01 +0000 (19:53 +0000)]
Cycles: fix UI when material has nodes but use nodes option is disabled, it
didn't show this option then.

9 years agoCycles: support for environment texture "Mirror Ball" projection mode, next to
Brecht Van Lommel [Thu, 8 Mar 2012 19:52:58 +0000 (19:52 +0000)]
Cycles: support for environment texture "Mirror Ball" projection mode, next to
existing "Equirectangular". This projection is useful to create light probes
from a chrome ball placed in a real scene. It expects as input a photograph of
the chrome ball, cropped so the ball just fits inside the image boundaries.

Example setup with panorama camera and mixing two (poor quality) photographs
from different viewpoints to avoid stretching and hide the photographer:

9 years agoFix #30435: 2.62 Torus Batch building "Bug" or A Experimental Feature?
Sergey Sharybin [Thu, 8 Mar 2012 18:50:42 +0000 (18:50 +0000)]
Fix #30435: 2.62 Torus Batch building "Bug" or A Experimental Feature?

Python-defined primitives used to be added to all visible layers instead of
adding to active scene layer as it happens with C-defined primitives.

9 years ago== Python API docs ==
Luca Bonavita [Thu, 8 Mar 2012 18:36:23 +0000 (18:36 +0000)]
== Python API docs ==

- Enhanced the -T option:

  - we can now choose among custom themes (now 'blender-org' and later 'naiad')
    and Sphinx internal themes (use -h option to see which ones)

  - choosing a custom theme will copy the theme dir to the output dir

- Added two new command line options:

  -N: Add the theme name to the html dir name
      For example, if we choose the theme 'haiku'
      with using -N will create html files in sphinx-out_haiku/
      Useful to test separate themes without overwriting the smae folder each time

  -B: Builds the html docs running sphinx-build
      This is useful to avoid runing sphinx with a separate shell command

- Fixed the URL in undocumented_message()

9 years agoFix for Francesco Siddi: ALT+A should always start with the scene start frame!
Ton Roosendaal [Thu, 8 Mar 2012 17:40:55 +0000 (17:40 +0000)]
Fix for Francesco Siddi: ALT+A should always start with the scene start frame!

9 years agoNew operators for clip editor's curve view:
Sergey Sharybin [Thu, 8 Mar 2012 17:06:40 +0000 (17:06 +0000)]
New operators for clip editor's curve view:
- Select All operator for selecting markers
- Disable selected markers operator

9 years agobmesh: fix for edge split allowing marked boundry edges for splitting.
Campbell Barton [Thu, 8 Mar 2012 16:46:14 +0000 (16:46 +0000)]
bmesh: fix for edge split allowing marked boundry edges for splitting.

9 years ago- Clip draw as scene strip background works fine again
Sergey Sharybin [Thu, 8 Mar 2012 16:27:53 +0000 (16:27 +0000)]
- Clip draw as scene strip background works fine again
- Path cleanup performed from curve view now clears only active track
  instead of all selected tracks.

9 years agoFix #30485: TRANSFORM / STABILIZE 2D: First row / column blackness.
Sergey Sharybin [Thu, 8 Mar 2012 14:23:34 +0000 (14:23 +0000)]
Fix #30485: TRANSFORM / STABILIZE 2D: First row / column blackness.

Clamp source coordinates to boundaries so it'll be kind of correct weight
calculated for the pixel.

9 years agoFixing several issues with keyingsets:
Bastien Montagne [Thu, 8 Mar 2012 14:04:06 +0000 (14:04 +0000)]
Fixing several issues with keyingsets:
*Add a new idname to keyingsets, keeping name as label-only (using same string for both made lookup fail when using i18n other than english, as it tried to compare an untranslated static string id against a translated RNA name). Also adding a description string (can be helpful with custom keyingsets, imho).
*Fixed a few other bugs related to that area (namely, you can’t deselect current keyingset from the shift-ctrl-alt-I popup menu, and insert/delete key ops were using a rather strange way to get chosen custom keyingset…).
*Fixed UI code so that it always uses (RNA) enum, and simplified menu-creation code.

9 years agoFix #30489: Loop Cut by Typing Numbers Is Limited to 32?
Sergey Sharybin [Thu, 8 Mar 2012 13:20:06 +0000 (13:20 +0000)]
Fix #30489: Loop Cut by Typing Numbers Is Limited to 32?

Increase numbering input of number of loop cuts to 130 as it was in 2.49.
Also display count of cuts in a header.

9 years agoModified behaviour of the link-insertion operator (drag on link, request by Sebastian...
Lukas Toenne [Thu, 8 Mar 2012 12:04:06 +0000 (12:04 +0000)]
Modified behaviour of the link-insertion operator (drag on link, request by Sebastian Koenig). This would previously attempt to find a socket with exactly matching type to the from/to sockets of the cut link, but this is annoying because it often links to the "secondary" sockets, such as Factor input in the Mix node. New behaviour is to choose the input/output for reconnection based on the "highest" (= most important) socket types (in order color, vector, value), like the autoconnect operator (FKEY) also does. It is far from ideal and will probably not work in all situations either, but until we have a detailed design for "best sockets to auto-link" this will have to do.

9 years agoFix ##30455: Orthographic grid alignment jumps/shifts when zooming
Sergey Sharybin [Thu, 8 Mar 2012 11:57:51 +0000 (11:57 +0000)]
Fix ##30455: Orthographic grid alignment jumps/shifts when zooming

Issue was caused by precision errors with floats.
Made internal grid drawing stuff using doubles and also added some
functions to multiply double vector by float matrix which also makes
all intermediate calculation in doubles.

9 years agoKnifetool: change ESC to mean cancel, not confirm.
Howard Trickey [Thu, 8 Mar 2012 11:56:11 +0000 (11:56 +0000)]
Knifetool: change ESC to mean cancel, not confirm.

This corresponds to the more usual convention.
There was no key connected to Cancel, and we already
have Return, Numpad-Return, and Right-click for confirm.

9 years agoPartial Bugfix [#30097] : Current frame indicator on Motion Paths drawn
Joshua Leung [Thu, 8 Mar 2012 10:53:40 +0000 (10:53 +0000)]
Partial Bugfix [#30097] : Current frame indicator on Motion Paths drawn

When the current frame occurs outside the current visible range a given motion
path, the point lookup was seeking past the ends of the path's point cache,
causing sporadic flickering of current frame indicator at 0,0,0.

9 years agoAdd missing include.
Nathan Letwory [Thu, 8 Mar 2012 10:52:30 +0000 (10:52 +0000)]
Add missing include.

9 years agoFix #30464: Confusing lack of label for Fluid "use"
Sergey Sharybin [Thu, 8 Mar 2012 10:13:31 +0000 (10:13 +0000)]
Fix #30464: Confusing lack of label for Fluid "use"

It was indeed not clear at all what that label-less check box does.
Move it to next row (to prevent fluid type menu be too narrow) and
use label default for it.

Also don't create second column which is empty for outflow fluid type.

9 years agoFix #30467: UV/Image Editor: Scope: Opacity Values maybe wrong
Sergey Sharybin [Thu, 8 Mar 2012 10:01:03 +0000 (10:01 +0000)]
Fix #30467: UV/Image Editor: Scope: Opacity Values maybe wrong

Internally vector and waveform opacities are stored as float in 0..1 range
and the same range is exposed to the UI.
From file compatibility POV decided to change prop's type from percentage
to factor so it'll be nice slider with 0..1 range without confusing percentage
symbols (which should be quite easy to follow) and both forward and backwards
compatibilities are here.