blender.git
8 years agobetter not to use rgb_float_to_uchar() from last commit (comment as to why)
Campbell Barton [Sat, 17 Mar 2012 23:37:14 +0000 (23:37 +0000)]
better not to use rgb_float_to_uchar() from last commit (comment as to why)

8 years agofix for weightpaint color with recent loopcolor abgr --> rgba conversion.
Campbell Barton [Sat, 17 Mar 2012 23:26:25 +0000 (23:26 +0000)]
fix for weightpaint color with recent loopcolor abgr --> rgba conversion.

8 years agobmesh py api:
Campbell Barton [Sat, 17 Mar 2012 23:22:44 +0000 (23:22 +0000)]
bmesh py api:

  use different types for bm.verts.layers, bm.faces.layers, otherwise the layers look to have customdata type that isnt compatible, UV's on edges for eg.

8 years agocode cleanup: not all mathutils callback creation functions tool unsigned char for...
Campbell Barton [Sat, 17 Mar 2012 22:31:57 +0000 (22:31 +0000)]
code cleanup: not all mathutils callback creation functions tool unsigned char for type & subtype args.

8 years agofix for invalid use of strncat (N == how many bytes may be appended, not the final...
Campbell Barton [Sat, 17 Mar 2012 22:14:52 +0000 (22:14 +0000)]
fix for invalid use of strncat (N == how many bytes may be appended, not the final string size).

8 years agofix: UV Islands not selected properly with Ctrl-L. A simple misplacement of the BMFac...
Antony Riakiotakis [Sat, 17 Mar 2012 22:12:17 +0000 (22:12 +0000)]
fix: UV Islands not selected properly with Ctrl-L. A simple misplacement of the BMFace iterating variable. Also cleaned up an unused nverts variable.

8 years agoupdate vertex paint code for last commit, was still using ABGR order.
Campbell Barton [Sat, 17 Mar 2012 21:11:28 +0000 (21:11 +0000)]
update vertex paint code for last commit, was still using ABGR order.

8 years agoswap BMLoopCol r/b color, requires subversion bump.
Campbell Barton [Sat, 17 Mar 2012 20:39:28 +0000 (20:39 +0000)]
swap BMLoopCol r/b color, requires subversion bump.

old mesh MCol 'r' was blue, 'b' was red, but theres no reason to keep this for bmesh with MLoopCol.

Loading old files works, saving legacy format works too.

What wont work is loading a file after this revision and loading it in an older revision since the bmesh merge.
(it wont crash but the blue and red will be swapped on vertex color layers).

8 years agobmesh py api:
Campbell Barton [Sat, 17 Mar 2012 19:34:02 +0000 (19:34 +0000)]
bmesh py api:
  access to MLoopCol as mathutils.Color type

8 years ago== Sequencer ==
Peter Schlaile [Sat, 17 Mar 2012 19:31:28 +0000 (19:31 +0000)]
== Sequencer ==

Bugfix: [#28159] sequencer strip crop values on proxy not scene render size

Also: IMB saturation change moved into imbuf-module.

8 years agoUI messages: unification of select/deselect stuff.
Bastien Montagne [Sat, 17 Mar 2012 19:14:08 +0000 (19:14 +0000)]
UI messages: unification of select/deselect stuff.

Previously we had three versions, Select/Deselect, Select or Deselect, and (De)select, choosen the third (shortest) one for now.

8 years agodont disable python when addons aren't found (addons are not needed for python to...
Campbell Barton [Sat, 17 Mar 2012 18:33:51 +0000 (18:33 +0000)]
dont disable python when addons aren't found (addons are not needed for python to run)

8 years agoFix 30562: bevel was infinite looping when adjacent faces had incompatible normals
Howard Trickey [Sat, 17 Mar 2012 15:47:48 +0000 (15:47 +0000)]
Fix 30562: bevel was infinite looping when adjacent faces had incompatible normals

The fix is to check for cases where BME_Bevel_Dissolve_Disk was trying
to join faces with opposite normals and reverse one.  This isn't a great
fix, and the example blend has strange corners at the top after beveling,
but at least it stops the infinite loops.

8 years agoBig step forward nodes UI translation:
Bastien Montagne [Sat, 17 Mar 2012 14:42:44 +0000 (14:42 +0000)]
Big step forward nodes UI translation:
*Add menu is now translated.
*Nodes' title is now translated.
*Nodes' sockets' labels are now translated.

However, about the last point, and unless I’m mistaking, we’ll have to add the "i18n tag" N_() to all sockets' names, in the input/ouput templates declaration, in all nodes' files, as those sockets are collections created at runtime, I think po-generating script has no way to access that from bpy.types... Quite a piece of (borring) work. :/

8 years agoMinor UI messages fixes, and enabling i18n for all modifier_setError() error messages.
Bastien Montagne [Sat, 17 Mar 2012 14:27:46 +0000 (14:27 +0000)]
Minor UI messages fixes, and enabling i18n for all modifier_setError() error messages.

8 years agocompile fix for 44939
Jens Verwiebe [Sat, 17 Mar 2012 12:32:36 +0000 (12:32 +0000)]
compile fix for 44939

8 years agoFix for yesterday i18n own commit (r44924): we now need to define WITH_INTERNATIONAL...
Bastien Montagne [Sat, 17 Mar 2012 12:07:58 +0000 (12:07 +0000)]
Fix for yesterday i18n own commit (r44924): we now need to define WITH_INTERNATIONAL everywhere TIP_/IFACE_ macros are used (else, we get non-international, dummy NOP macros instead!).

Also fixed in main CMakeList file, when no addon dir found, we want to disable WITH_PYTHON (I guess, certainly not WITH_INTERNATIONAL ;) ).

8 years agominor mathutils code cleanup - use mathutils callbacks as unsigned chars everywhere.
Campbell Barton [Sat, 17 Mar 2012 10:46:02 +0000 (10:46 +0000)]
minor mathutils code cleanup - use mathutils callbacks as unsigned chars everywhere.

8 years agoMake grumpy gcc happy again! :p
Bastien Montagne [Sat, 17 Mar 2012 10:23:44 +0000 (10:23 +0000)]
Make grumpy gcc happy again! :p

8 years agobmesh py api:
Campbell Barton [Sat, 17 Mar 2012 06:40:44 +0000 (06:40 +0000)]
bmesh py api:

added per loop UV layer access

8 years ago#collada instance_node import, partially fixes #27629
Arystanbek Dyussenov [Sat, 17 Mar 2012 06:37:26 +0000 (06:37 +0000)]
#collada instance_node import, partially fixes #27629

Patch applied in r37663 caused loss of <instance_node>s.

All parts of the smaller test file attached in the report now import.

8 years agobmesh py api:
Campbell Barton [Sat, 17 Mar 2012 04:43:32 +0000 (04:43 +0000)]
bmesh py api:
 split up BMElemSeq into BMVertSeq, BMEdgeSeq, BMFaceSeq and BMLoopSeq

 Was becoming cumbersome since each needed their own new() function, and other methods only worked for some of these types.

Added BMesh.loops - since you cant iterate over loops this is for customdata access only.

8 years agoReduce poly map memory usage (used by sculpt smooth brush.)
Nicholas Bishop [Sat, 17 Mar 2012 04:41:36 +0000 (04:41 +0000)]
Reduce poly map memory usage (used by sculpt smooth brush.)

Changed the create_vert_poly_map function to return a more compact
structure. Memory saved will vary depending on the mesh, but typically
it should be about one third of the old size.

8 years agominor improvement to image info color sample drawing, draw a grey outline.
Campbell Barton [Fri, 16 Mar 2012 23:44:08 +0000 (23:44 +0000)]
minor improvement to image info color sample drawing, draw a grey outline.

8 years agoFix for size of VBO index type when drawing multires in sculpt mode.
Nicholas Bishop [Fri, 16 Mar 2012 23:21:40 +0000 (23:21 +0000)]
Fix for size of VBO index type when drawing multires in sculpt mode.

The VBO index type can be either ushort or uint depending on the grid
size. The comparison was checking how many quads are in the array, but
this was incorrect; the size of the index elements should depend on
the maximum value they reference, i.e. the maximum coord/normal
element.

8 years agoadd select invert for lattice
Campbell Barton [Fri, 16 Mar 2012 23:01:37 +0000 (23:01 +0000)]
add select invert for lattice

8 years agofix for own silly mistake with face creation (wasnt checking more then 1 vert was...
Campbell Barton [Fri, 16 Mar 2012 22:24:56 +0000 (22:24 +0000)]
fix for own silly mistake with face creation (wasnt checking more then 1 vert was selected)

8 years agostyle cleanup: py/capi
Campbell Barton [Fri, 16 Mar 2012 21:39:56 +0000 (21:39 +0000)]
style cleanup: py/capi

8 years agobugfix. Brush zoom could fail if uv sculpting was on
Antony Riakiotakis [Fri, 16 Mar 2012 21:26:18 +0000 (21:26 +0000)]
bugfix. Brush zoom could fail if uv sculpting was on

8 years agoFollow up to fix in r44919: use standard stats in paint modes.
Nicholas Bishop [Fri, 16 Mar 2012 20:42:29 +0000 (20:42 +0000)]
Follow up to fix in r44919: use standard stats in paint modes.

Removed the special case for header statistics in sculpt/paint
modes. The information provided was less useful, and less accurate
even because it didn't reflect multires.

8 years agoPatch by Psy-Fi + my minor changes
Alexander Kuznetsov [Fri, 16 Mar 2012 17:37:45 +0000 (17:37 +0000)]
Patch by Psy-Fi + my minor changes

Adds conformation on exit for windows. Needs to be enabled in user perf.

Tried to edit blender.exe.manifest for more modern dialog look, but didn't work out.

8 years agoi18n stuff: adds translation_context to RNA structs (used for there ui name), and...
Bastien Montagne [Fri, 16 Mar 2012 15:39:25 +0000 (15:39 +0000)]
i18n stuff: adds translation_context to RNA structs (used for there ui name), and a first default "Operator" one for all operators' label.

The fact is, operators' label are nearly always verbs, while properties labels are nearly always nouns. So this should already solve many translations' problems regarding noun/verb confusion.

This commit also simplifies a bit i18n usage:
*Now IFACE_ and TIP_ macros (or there context versions, CTX_IFACE_/TIP_) are used nearly everywhere (with one exception, where code is a bit complex and needs to manually test whether ui/tip translations is allowed, so no need to redo it later through those macros).
*Also, those macros are now defined to NOP in case WITH_INTERNATIONAL is false, which avoid testing that define everywhere in code!

8 years ago== Python API docs ==
Luca Bonavita [Fri, 16 Mar 2012 14:49:16 +0000 (14:49 +0000)]
== Python API docs ==

Small fixes (thanks Terry Wallwork for reporting)
- adding logger filehandler in main () so that ARGS.output_dir exists, otherwise we get an IOError
- the zip was not including files in a container directory

8 years agoAllow merging two tracks in cases when they've got overlapping tracked/keyframed
Sergey Sharybin [Fri, 16 Mar 2012 14:06:43 +0000 (14:06 +0000)]
Allow merging two tracks in cases when they've got overlapping tracked/keyframed
frame ranges using average position of both tracks as position/

8 years agoFix #30561 Modifiers with use_apply_on_spline = True do not work on curve with shapekeys
Sergey Sharybin [Fri, 16 Mar 2012 11:46:08 +0000 (11:46 +0000)]
Fix #30561 Modifiers with use_apply_on_spline = True do not work on curve with shapekeys

8 years ago== Python API docs ==
Luca Bonavita [Fri, 16 Mar 2012 10:49:39 +0000 (10:49 +0000)]
== Python API docs ==

Committing a patch similar to revision 44887 with fixes to my own bugs
(sorry Campbell, and thanks for reviewing :)

Fixes
------
- examples/ svn directory not removed anymore (in-source builds possible again)
- fixed "include references somehow stopped working"
+ using shutils.makearchive() to zip the file

New command line options
------------------------

-l: Log the output of the api dump and sphinx|latex warnings and errors
    If given, save logs in:
    * OUTPUT_DIR/.bpy.log
    * OUTPUT_DIR/.sphinx-build.log
    * OUTPUT_DIR/.sphinx-build_pdf.log
    * OUTPUT_DIR/.latex_make.log

    (using only one log directive instead of -l for bpy and -L for sphinx)

-P: builds the pdf

-R: pack the files in a dir ready for online deployment
    (including the zip and the pdf eventually)

Example usage:
./blender.bin -b -P doc/python_api/sphinx_doc_gen.py -- -p bmesh* -o ./<OUTPUTDIR> -B -P -R -l

8 years agoFix object mode check in stats_update.
Nicholas Bishop [Fri, 16 Mar 2012 08:46:55 +0000 (08:46 +0000)]
Fix object mode check in stats_update.

Was checking object flag rather than mode.

8 years agobmesh py api:
Campbell Barton [Fri, 16 Mar 2012 08:26:22 +0000 (08:26 +0000)]
bmesh py api:
initial support for editing bmesh customdata per vert/edge/face/loop

shapes, crease, bevel weights working, missing UVs and Vertex Colors still.

8 years agofix for building bmesh bevel with scons (source file was left out)
Campbell Barton [Fri, 16 Mar 2012 05:25:02 +0000 (05:25 +0000)]
fix for building bmesh bevel with scons (source file was left out)

8 years agobmesh py api:
Campbell Barton [Fri, 16 Mar 2012 05:03:13 +0000 (05:03 +0000)]
bmesh py api:

Wrap customdata, so far you can access the data layers in a pythonic way but not manipulate the customdata yet.

provides dictionary like access to customdata layers, eg:
  texpoly = bm.faces.tex["UVMap"]
  print(bm.verts.shape.keys())  # un-intended pun, keys() works on all layers.
  print("MyInt" in bm.edges.int)  # __contains__
  layer = bm.faces.get("CheckForLayer")

8 years agopy api:
Campbell Barton [Fri, 16 Mar 2012 04:14:57 +0000 (04:14 +0000)]
py api:
  modify bpy.path.display_name_from_filepath() to accept bytes

8 years agoFix for multires VBO drawing in sculpt mode.
Nicholas Bishop [Fri, 16 Mar 2012 04:11:35 +0000 (04:11 +0000)]
Fix for multires VBO drawing in sculpt mode.

Forgot to use return value of function creating the index buffer.

8 years agobmesh: being back bevel modifier from 2.62 stable.
Campbell Barton [Thu, 15 Mar 2012 23:56:46 +0000 (23:56 +0000)]
bmesh: being back bevel modifier from 2.62 stable.

this is no big improvement but at least its not a regression.

using the new operator for the bevel modifier can be enabled again be uncommenting a define.

8 years ago*picky* fix for edge rotate
Campbell Barton [Thu, 15 Mar 2012 23:23:04 +0000 (23:23 +0000)]
*picky* fix for edge rotate

- Edge rotate would leave verts selected, this would give problems because those selections would leave edges that would try to rotate when run again. now de-select old verts on edge rotate.

- Rotating into hidden verts gave odd results, now make sure hidden state is ok.

- BMO_slot_buffer_hflag_disable / BMO_slot_buffer_hflag_enable now have flushing for the hide flag too.

8 years agoCommit patch from Nicholas Bishop with some small modifications
Sergey Sharybin [Thu, 15 Mar 2012 21:11:14 +0000 (21:11 +0000)]
Commit patch from Nicholas Bishop with some small modifications
to make nicer displaying of brush names.

8 years agoquiet debug print(), reported as [#30552], but infact is harmless.
Campbell Barton [Thu, 15 Mar 2012 20:25:07 +0000 (20:25 +0000)]
quiet debug print(), reported as [#30552], but infact is harmless.

8 years agomesh_validate code for bmesh (i.e. polys/loops).
Bastien Montagne [Thu, 15 Mar 2012 20:10:07 +0000 (20:10 +0000)]
mesh_validate code for bmesh (i.e. polys/loops).

Everything seems to work well (many tests making random changes over various meshes went good), but the code is a bit complex and hard to follow, due to the various possibilities of invalid poly/loop combinations… Code also makes more operations than previous tri/quad faces version (hence is a bit slower), but I don’t think we can do otherwise, it’s just the price for bmesh flexibility. ;)

Note: added the py script I used to make the tests, under source/tests/...

8 years agoadd missing break statement from recent brush code refactor,
Campbell Barton [Thu, 15 Mar 2012 19:24:16 +0000 (19:24 +0000)]
add missing break statement from recent brush code refactor,
selecting texture paint brush would never run brush_generic_tool_set()

8 years agoOSX/cmake: move the xcode 4.3 warning up, it was not shown due error happened before...
Jens Verwiebe [Thu, 15 Mar 2012 15:32:56 +0000 (15:32 +0000)]
OSX/cmake: move the xcode 4.3 warning up, it was not shown due error happened before, masking it

8 years agoOSX/scons: also allow for omp-builds with gcc-4.6.2 and 4.6.3 ( tested ), TODO: check...
Jens Verwiebe [Thu, 15 Mar 2012 14:57:51 +0000 (14:57 +0000)]
OSX/scons: also allow for omp-builds with gcc-4.6.2 and 4.6.3 ( tested ), TODO: check if we can compile objC/objC++ with newer gcc too

8 years ago2.6 User Interface:
Thomas Dinges [Thu, 15 Mar 2012 14:36:54 +0000 (14:36 +0000)]
2.6 User Interface:
* New Icons for the File menu, patch by David Klein (cgeffex). Thanks a lot!
* This patch also adds a new icon for the use_filter_text in Filebrowser.

8 years agoMove brush tool/paint-mode from toolbar to brush menu.
Nicholas Bishop [Thu, 15 Mar 2012 09:11:24 +0000 (09:11 +0000)]
Move brush tool/paint-mode from toolbar to brush menu.

8 years agoUse Brush.sculpt_capabilities in Python UI code for sculpt toolbar.
Nicholas Bishop [Thu, 15 Mar 2012 09:11:16 +0000 (09:11 +0000)]
Use Brush.sculpt_capabilities in Python UI code for sculpt toolbar.

8 years agoAdd RNA for brush capabilities (sculpt-only for now.)
Nicholas Bishop [Thu, 15 Mar 2012 09:10:54 +0000 (09:10 +0000)]
Add RNA for brush capabilities (sculpt-only for now.)

Added a new RNA-only nested structure, Brush.SculptCapabilities. It
contains read-only properties that use the current sculpt tool (and
occasionally other brush properties) to determine whether some feature
is available.

For example, the grab and snake-hook brushes don't support the
strength property. Querying brush.sculpt_capabilities.has_strength
will return false only if one of these brushes is selected.

8 years agomissed these last commit
Campbell Barton [Thu, 15 Mar 2012 06:51:09 +0000 (06:51 +0000)]
missed these last commit

8 years agoUn-abbreviate 'use_space_atten' (Brush RNA) to 'use_space_attenuation'.
Nicholas Bishop [Thu, 15 Mar 2012 06:39:54 +0000 (06:39 +0000)]
Un-abbreviate 'use_space_atten' (Brush RNA) to 'use_space_attenuation'.

8 years agoprepare for adding bmesh py api for customdata layer access - no functional changes.
Campbell Barton [Thu, 15 Mar 2012 06:08:27 +0000 (06:08 +0000)]
prepare for adding bmesh py api for customdata layer access - no functional changes.

8 years agoCode cleanup: simplify brush tool selection operators.
Nicholas Bishop [Thu, 15 Mar 2012 05:59:44 +0000 (05:59 +0000)]
Code cleanup: simplify brush tool selection operators.

Created a single unifed operator, PAINT_OT_brush_select, to replace
BRUSH_OT_sculpt_tool_set, BRUSH_OT_vertex_tool_set,
BRUSH_OT_weight_tool_set, and BRUSH_OT_image_tool_set.

8 years agofixes for vertex color (found when brining X3D import back)
Campbell Barton [Thu, 15 Mar 2012 05:40:33 +0000 (05:40 +0000)]
fixes for vertex color (found when brining X3D import back)
- tessface vertex color had the wrong sized array passing to rna_iterator_array_begin
- re-calculating tessface's would clear them if they were already created (own mistake)
- ED_mesh_color_add initialized tessface vertex colors from the loop color array

also made rna's mesh.tessface_vertex_colors.new() work like tessface_uv_textures.new()
where layers can be added as long as polygons are not present.

8 years agoRemove unused parameter from multires_dm_create_from_derived.
Nicholas Bishop [Thu, 15 Mar 2012 04:08:57 +0000 (04:08 +0000)]
Remove unused parameter from multires_dm_create_from_derived.

8 years agorevert r44887, changes were OK but caused too many problems, better do this as a...
Campbell Barton [Thu, 15 Mar 2012 03:50:52 +0000 (03:50 +0000)]
revert r44887, changes were OK but caused too many problems, better do this as a smaller patch.
sphinx_doc_gen.sh broke building docs -
- examples/ svn directory was being removed since it assumed an out-of-source build.
- include references somehow stopped working (didnt find why).

also fixed an unrelated error with building docs in object_utils.py

8 years agofix [#30542] Shear Vertical Seg Faults Blender
Campbell Barton [Thu, 15 Mar 2012 00:57:14 +0000 (00:57 +0000)]
fix [#30542] Shear Vertical Seg Faults Blender
honor the T_FREE_CUSTOMDATA flag.

8 years ago== Python API docs ==
Luca Bonavita [Thu, 15 Mar 2012 00:12:31 +0000 (00:12 +0000)]
== Python API docs ==

New command line options:

-l: logs bpy dumping problems in OUTPUT_DIR/.bpy.log

-L: logs sphinx|latex problems in:
    * OUTPUT_DIR/.sphinx-build.log      (sphinx building html problems)
    * OUTPUT_DIR/.sphinx-build_pdf.log  (sphinx building latex problems)
    * OUTPUT_DIR/.latex_make.log        (latex make problems)

-P: builds the pdf

-R: pack the files in a dir ready for online deployment
    (including the zip and the pdf eventually)

Example usage:
./cmake/bin/blender -b -P ./blender/doc/python_api/sphinx_doc_gen.py -- -p bmesh* -l -o ./python_api -B -P -R -L

8 years agoOSX/cmake: enable clang compiler with xcode >= 4.3, tested o.k.now
Jens Verwiebe [Wed, 14 Mar 2012 23:42:46 +0000 (23:42 +0000)]
OSX/cmake: enable clang compiler with xcode >= 4.3, tested o.k.now

8 years agobmesh: Fkey now creates faces from 5 or more disconnected vertices.
Campbell Barton [Wed, 14 Mar 2012 22:57:15 +0000 (22:57 +0000)]
bmesh: Fkey now creates faces from 5 or more disconnected vertices.

Added function: BM_face_create_ngon_vcloud
creating quads and tris use this too since it finds the best face winding direction based on surrounding face (if any)

8 years agocomment cleanup
Campbell Barton [Wed, 14 Mar 2012 22:39:56 +0000 (22:39 +0000)]
comment cleanup

8 years agoFix #30549: Error adding mesh object to scene
Sergey Sharybin [Wed, 14 Mar 2012 22:34:25 +0000 (22:34 +0000)]
Fix #30549: Error adding mesh object to scene

8 years agoUse helper functions in node_select when selecting/deselecting nodes and sockets...
Lukas Toenne [Wed, 14 Mar 2012 18:10:57 +0000 (18:10 +0000)]
Use helper functions in node_select when selecting/deselecting nodes and sockets in operators. This ensure that sockets are not selected on their own (parent node is always selected too).

8 years agoMake extension mode (shiftkey) mandatory for socket selection. Otherwise the user...
Lukas Toenne [Wed, 14 Mar 2012 17:52:50 +0000 (17:52 +0000)]
Make extension mode (shiftkey) mandatory for socket selection. Otherwise the user can end up with unexpectedly selected nodes, since socket selection allows selecting inputs and outputs from different nodes, which in turn also mean the parent nodes are selected. This fits the workflow better, you already needed to press shiftkey before to use the auto-connect operator. It will also solve some problems with the upcoming reroute nodes, where the node is basically a single socket.

8 years agoFix crash on edge extrude from textured view
Sergey Sharybin [Wed, 14 Mar 2012 14:09:56 +0000 (14:09 +0000)]
Fix crash on edge extrude from textured view

Issue was caused by MFACE layer adding for even DM without tessellated faces
which lead to adding new layer but with NULL data. This causes issues when layer
with faces (after extrude) was attempting to add because currently CD only checks
if layer type exists but does not check for size of the layer.

Solved by not adding MFACE layer if there's no tessellated faces.

8 years agofix hang when loop selecting an ngon. We need to check if edge currently walked on...
Antony Riakiotakis [Wed, 14 Mar 2012 13:52:17 +0000 (13:52 +0000)]
fix hang when loop selecting an ngon. We need to check if edge currently walked on has already been added

8 years agoAvoid a sigsev after 44830 when reports is empty, clang compile work
Jens Verwiebe [Wed, 14 Mar 2012 12:03:49 +0000 (12:03 +0000)]
Avoid a sigsev after 44830 when reports is empty, clang compile work

8 years agoSwitch *nix fileops from calling external commands via system() to posix api calls
Sergey Sharybin [Wed, 14 Mar 2012 09:39:43 +0000 (09:39 +0000)]
Switch *nix fileops from calling external commands via system() to posix api calls
which resolves some possible issues with operating files with quotes and backslashes.

Also this might resolve (or at least help) resolving compilation error on GNU Hurd platform
which will help a lot maintaining Blender for Debian.

8 years agoChanges to python-defined add object operators:
Sergey Sharybin [Wed, 14 Mar 2012 08:55:57 +0000 (08:55 +0000)]
Changes to python-defined add object operators:

- Reset rotation value when toggling Align to View property
  which correctly re-alignes object on continuous property
  toggling and fixes issue
  #30510: [2.62] Add Mesh - Torus - "Align to View" cannot be switched back when toggling off

- Moves all generic object-add properties into a helper function
  which might be easily re-used.

8 years agoFix for multires undo with partial visibility.
Nicholas Bishop [Wed, 14 Mar 2012 08:14:03 +0000 (08:14 +0000)]
Fix for multires undo with partial visibility.

8 years agoFix some errors in partial visibility drawing.
Nicholas Bishop [Wed, 14 Mar 2012 07:37:47 +0000 (07:37 +0000)]
Fix some errors in partial visibility drawing.

Also changed show-in-border key to SHIFT+H as suggested by Daniel
Salazar.

8 years agoAdd partial visibility operator including keymaps and menu items.
Nicholas Bishop [Wed, 14 Mar 2012 06:32:43 +0000 (06:32 +0000)]
Add partial visibility operator including keymaps and menu items.

Uses HKEY for border hide, CTRL+HKEY for border show, and ALT+HKEY for
show all.

Documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/PartialVisibility

Code review:
http://codereview.appspot.com/5695043

8 years agoSkip hidden elements in PBVH iterator, raycast, and drawing.
Nicholas Bishop [Wed, 14 Mar 2012 06:32:25 +0000 (06:32 +0000)]
Skip hidden elements in PBVH iterator, raycast, and drawing.

8 years agoCopy hidden flag to vertices when applying multires modifier.
Nicholas Bishop [Wed, 14 Mar 2012 06:32:13 +0000 (06:32 +0000)]
Copy hidden flag to vertices when applying multires modifier.

8 years agoSkip hidden elements in PBVH iterator, raycast, and drawing.
Nicholas Bishop [Wed, 14 Mar 2012 06:32:03 +0000 (06:32 +0000)]
Skip hidden elements in PBVH iterator, raycast, and drawing.

8 years agoAdd DerivedMesh.gridHidden and CCGDM implementation.
Nicholas Bishop [Wed, 14 Mar 2012 06:31:49 +0000 (06:31 +0000)]
Add DerivedMesh.gridHidden and CCGDM implementation.

8 years agoAdd MDisps.hidden bitmap.
Nicholas Bishop [Wed, 14 Mar 2012 06:31:38 +0000 (06:31 +0000)]
Add MDisps.hidden bitmap.

Updates SDNA, customdata functions, and file read/write. Also adds
accessor functions to BKE paint.

8 years agoAdd new CCG accessor functions.
Nicholas Bishop [Wed, 14 Mar 2012 06:31:24 +0000 (06:31 +0000)]
Add new CCG accessor functions.

ccg_gridsize() converts a level into gridsize, ccg_factor() is for
converting coordinates between different multires levels.

8 years agoAdd BKE mesh function to update edge/poly hidden flags from verts.
Nicholas Bishop [Wed, 14 Mar 2012 06:31:14 +0000 (06:31 +0000)]
Add BKE mesh function to update edge/poly hidden flags from verts.

8 years agoDon't wait for sculpt stroke to create PBVH.
Nicholas Bishop [Wed, 14 Mar 2012 06:30:55 +0000 (06:30 +0000)]
Don't wait for sculpt stroke to create PBVH.

This idea is borrowed from the multires modifier, which already
checked if the object was in sculpt mode and, if so, created the
PBVH. That check is now moved higher up the chain into
mesh_build_data(), so that it occurs for CDDerivedMesh too.

This also replaces an assert in cdDM_getPBVH for tesselated mesh faces
with a call to create them if missing.

8 years agomathutils py api:
Campbell Barton [Wed, 14 Mar 2012 06:14:15 +0000 (06:14 +0000)]
mathutils py api:

  Vector.angle_signed(other)
  for 2D vectors to get the clockwise angle between them.

  in BLI math its called - angle_signed_v2v2()

shorthand for...

  atan2f((v1[1] * v2[0]) - (v1[0] * v2[1]), dot_v2v2(v1, v2))

also corrects compile error in last commit.

8 years agobmesh py api: finished todo - editable select_history
Campbell Barton [Wed, 14 Mar 2012 04:46:12 +0000 (04:46 +0000)]
bmesh py api: finished todo - editable select_history

eg:
  bm.select_history = vert, face, edge

  bm.select_history.add(edge)

8 years agoAdd 'level' field to struct MDisps, companion to 'totdisp'.
Nicholas Bishop [Wed, 14 Mar 2012 03:10:18 +0000 (03:10 +0000)]
Add 'level' field to struct MDisps, companion to 'totdisp'.

Gets initialized when loading old files and updated at the same places
totdisp is updated. Saves having to do log+sqrt to extract level from
totdisp.

8 years agodocumentation edit to address bmesh py api bug [#30453]
Campbell Barton [Wed, 14 Mar 2012 00:30:20 +0000 (00:30 +0000)]
documentation edit to address bmesh py api bug [#30453]

warn when addons are not found when running cmake.

8 years agofix [#30493] GE crashes on exit because of using freed mtfaces from tessfaces
Campbell Barton [Tue, 13 Mar 2012 23:28:02 +0000 (23:28 +0000)]
fix [#30493] GE crashes on exit because of using freed mtfaces from tessfaces

prevent gpu_draw.c holding a pointer to a freed array.

8 years agoprint warning when release/datafiles/locale is missing when building with cmake ...
Campbell Barton [Tue, 13 Mar 2012 22:27:21 +0000 (22:27 +0000)]
print warning when release/datafiles/locale is missing when building with cmake (git-svn causes this).

8 years agoSDL ghost update to work with SDL2.
Campbell Barton [Tue, 13 Mar 2012 20:24:05 +0000 (20:24 +0000)]
SDL ghost update to work with SDL2.

this gives some problems because SDL2 Needs a window before fullscreen is set, the player currently doesnt have a window created when fullscreen is called.

8 years agoloopwalker support for selecting the sides of ngons
Campbell Barton [Tue, 13 Mar 2012 18:37:31 +0000 (18:37 +0000)]
loopwalker support for selecting the sides of ngons
see: wiki.blender.org/uploads/d/dc/BMesh_NGon_Loop_Select.png

8 years agocode/style cleanup for loop walker which was is fairly confusing and hard to extend.
Campbell Barton [Tue, 13 Mar 2012 17:13:44 +0000 (17:13 +0000)]
code/style cleanup for loop walker which was is fairly confusing and hard to extend.
- only have one return at the end of the function.
- break up functionality more clearly between wire/face walk.
- remove unused struct member.

8 years agopatch [#30511] from r44792, broke setting the window state from the command line...
Campbell Barton [Tue, 13 Mar 2012 15:44:48 +0000 (15:44 +0000)]
patch [#30511] from r44792, broke setting the window state from the command line (-W / -w).

Fix this by storing if the border is set - before this was only done for the window dimensions.
also move these variables into a static struct so this logic is easier to follow.

8 years agoWITH_GHOST_SDL working again (missing std:: update)
Campbell Barton [Tue, 13 Mar 2012 14:28:58 +0000 (14:28 +0000)]
WITH_GHOST_SDL working again (missing std:: update)

8 years agoFix possible usage of NULL function reported by clang
Sergey Sharybin [Tue, 13 Mar 2012 10:31:42 +0000 (10:31 +0000)]
Fix possible usage of NULL function reported by clang

8 years agobmesh py api: more comprehensive intro page, also fix some spelling errors.
Campbell Barton [Tue, 13 Mar 2012 06:22:43 +0000 (06:22 +0000)]
bmesh py api: more comprehensive intro page, also fix some spelling errors.

8 years agobmesh python api:
Campbell Barton [Tue, 13 Mar 2012 02:59:42 +0000 (02:59 +0000)]
bmesh python api:
BMesh.select_history.remove/clear/validate functions.

8 years agobmesh: Pressing Fkey when a face cant be made falls back to the selection history...
Campbell Barton [Tue, 13 Mar 2012 02:18:46 +0000 (02:18 +0000)]
bmesh: Pressing Fkey when a face cant be made falls back to the selection history and creates edges in the order of verts selected, pressing F again will make an NGon.

(fun feature while our bug tracker is down)