Commit Graph

6785 Commits

Author SHA1 Message Date
Campbell Barton
6d2cd24010 fix memory leak in validating mesh and remove unneeded knife operator settings store. 2012-04-26 15:20:26 +00:00
Campbell Barton
2f74471dd9 fix invalid memcpy() use in text editor (backspace would call memcpy with overlapping source and destination). 2012-04-26 02:24:55 +00:00
Campbell Barton
6cc48ec555 mesh.validate() / BKE_mesh_validate() --- functions now check for duplicate vertices used within the same polygon.
(which would crash otherwise)
2012-04-25 07:23:20 +00:00
Campbell Barton
ee6aaafd31 code cleanup: typos and set gcc attributes for string formatting. 2012-04-25 06:06:40 +00:00
Campbell Barton
48893dba24 style cleanup: no functional changes 2012-04-24 22:50:49 +00:00
Campbell Barton
4ff038c411 screenshot operator now adds file extension in the file selector and has its own save options rather then using the render options (works like image save a copy). 2012-04-24 02:01:23 +00:00
Campbell Barton
b8c4c54ff0 corrected more issues from [#31069] Analyzing the Blender project with PVS-Studio 2012-04-23 16:29:13 +00:00
Campbell Barton
ceffa6e1fa code cleanup: comment unused functions (removed one which isnt useful anymore). 2012-04-23 07:32:13 +00:00
Campbell Barton
4c4389f6a4 code cleanup: remove editbutflag flag from toolsettings & related defines. 2012-04-23 02:48:05 +00:00
Campbell Barton
e26ef899c3 clear the FGON edge flag when updating old meshes to polygons. (we may wan't to reuse the flag later) 2012-04-23 00:58:17 +00:00
Campbell Barton
5c89138684 style cleanup: comments 2012-04-22 11:54:53 +00:00
Campbell Barton
cd2b142ba0 small speedup to VertDataMulN(av, n), when passed expressions to 'n' they were calculated 3 times, cuts 78 instructions from resulting assembly (gcc -O2). 2012-04-22 03:25:48 +00:00
Campbell Barton
ac5058b281 subsurf - avoid 'for' loop finding the edge index in a face multiple times when calling _face_getIFCoEdge. add asset so passing wrong value errors out in debug mode. gives small speedup to subsurf. 2012-04-22 03:07:21 +00:00
Campbell Barton
e57d258169 - fix memory leak in mesh_strip_loose_polysloops(), occurred during 3ds import.
- updating normals in py/api's mesh.transform() wasn't working and gave annoying print, disable this, script authors can call calc_normals explicitly if they need.
2012-04-22 00:27:38 +00:00
Campbell Barton
126f766b4c style cleanup 2012-04-22 00:20:58 +00:00
Campbell Barton
b56aabf815 style cleanup: multi-line if statements. 2012-04-21 15:11:03 +00:00
Campbell Barton
8765dfccf7 style cleanup: correct typos 2012-04-21 14:14:58 +00:00
Campbell Barton
1615b46963 style cleanup 2012-04-21 13:37:26 +00:00
Campbell Barton
7e7d28e3ad fix [#31048] converting curve object to mesh makes object disapper from 3D view 2012-04-21 13:08:26 +00:00
Campbell Barton
6701933f5c style cleanup 2012-04-21 12:51:47 +00:00
Campbell Barton
f627745053 aparently yards are not used a lot, suppress their use in button display (input still knows about them) - was reported as a bug.
also fix minor rip bug where active selection was lost.
2012-04-20 14:59:24 +00:00
Lukas Toenne
71ac500fc2 Fix for particle dupli group relative offsets. The relative transforms of objects in the instanced group were not scaled according to the particle size, which would be expected when rendering as 'Whole Group'. Requested by Francesco Siddi (fsiddi) over IRC. 2012-04-20 12:55:57 +00:00
Campbell Barton
475ecbb0ce remove BM_ITER, BM_ITER_INDEX macros, use ELEM or MESH variants only (the maceros had unused args in both cases). 2012-04-19 13:47:58 +00:00
Campbell Barton
3ef7943910 code cleanup: first step to replace BM_ITER BM_ITER_INDEX macros. 2012-04-19 12:45:56 +00:00
Campbell Barton
75b869e428 style cleanup: BM_ITER / BM_ITER_INDEX / BMO_ITER 2012-04-19 11:44:12 +00:00
Brecht Van Lommel
2e734e4735 Fix #31007: text editor delete at end of last line did unnecessary undo push.
Patch by Justin Dailey, simplified a bit.
2012-04-19 09:27:11 +00:00
Campbell Barton
40f4a4b6ba style cleanup: mesh validate.
also add code cleanup script which runs uncrustify and then undoes trailing whitespace edits (reducing diff noise)
2012-04-18 09:16:30 +00:00
Brecht Van Lommel
e4734d3d01 Fix part of #30982: dupliface object with modifiers did not show duplis correct
while in edit mode.
2012-04-17 13:07:13 +00:00
Brecht Van Lommel
3d2f1fd8f9 Fix crash with texture draw in edit mode after commit 45672.
Don't create empty tesselated faces layers in edit derivedmesh, these are
being created on the fly so this will conflicted, and use loop data for
opengl attributes for edit derivedmesh drawing.
2012-04-17 11:02:32 +00:00
Campbell Barton
195d6c1b1a minor speedup for scanfill, dont calculate the normal if its already known - use for editmode ngon filling. 2012-04-16 18:24:49 +00:00
Sergey Sharybin
caafc8184b Fix #30720: Creating Navmesh crashes blender
In fact there were several issues fixed (all of them regressions since bmesh merge):

- Creating navmesh crashed because creating new faces for mesh was trying to set
  default values for all customdata layers in this face. This requires memory
  pool created for this datablock.
  Usually this pool is creating on creating datablock if there're some elements
  to be stored in this block. In cases of regular primitive creating it wasn't
  an issue because they doesn't create customdata layers, they only creates
  geometry.
  Navigation mesh creates geometry and customdata layers (CD_RECAST layer)
  which used to confuse a bit custom data functions. Solved by ensuring there's
  memory pool created for polygons datablock after adding new custom data layer.
  Most probably it's better to be resolved on CD level (like smarter track on
  changed amount of stored data and so) but prefer not to make such global changes
  so close to the release.
- Toggling edit mode lead to loosing recast datalayer. Solved by adding recast
  layer to bmesh mask so it'll be copied to/from edit mesh.
- Some part of code assumed raycast layer is in face datablock, some that it's in
  polygon datablock. Made it to be in polygons datablock.
  Kind of temporary solution to make navmesh working, probably it'll fail if one
  will want to edit navmesh by hand after it was generated.
  Proper way would be to ensure the whole navmesh things are using ngons.
2012-04-16 13:53:30 +00:00
Lukas Toenne
f4498e62a7 Dynamic output sockets for the image input node. This is needed to enable the node to read arbitrary multilayer exr files. Output sockets of this node are now generated dynamically when the image is updated. The image buffer has to be loaded to detect multilayer files on update. 2012-04-16 13:49:33 +00:00
Sergey Sharybin
34814e4755 Port multires_topology_changed to new bmesh api
This call is still needed when loading editmesh because some operations
are not creating CD layer for new loops (like crating new face) and
to prevent loosing all sculpted data when running disps correct
displacement maps should be allocated on loading edit mesh.
2012-04-16 11:03:42 +00:00
Lukas Toenne
5c646e7e3a Reverted r43219 "Improved auto-hiding of unused sockets for collapsed nodes."
This feature did have a number of flaws and caused some controversy, so removal is the better option. Hiding nodes without prior connections would just hide all the sockets, leaving an unusable node. Better way is to use the ctrl+h shortcut to explicitly hide unused sockets when necessary.
2012-04-16 10:50:57 +00:00
Campbell Barton
0635f8101c make scanfill threadsafe (wasnt threadsafe before BMesh merge but before the merge it didn't need to be) - now rendering uses its better if its threadsafe. 2012-04-16 06:48:57 +00:00
Campbell Barton
79693e4543 code cleanup: avoid confusion with incorrectly named argument to BLI_edgefill(), was 'mat_nr', now 'do_quad_tri_speedup' 2012-04-16 05:03:04 +00:00
Campbell Barton
d89db25c53 bmesh api todo:
emDM_getTessFaceDataArray now returns UV's and Colors from editmode loops.
2012-04-16 04:17:33 +00:00
Brecht Van Lommel
ac07f89838 Fix #30948: add scene > copy settings did not copy settings like units, audio, game
data, and tool settings.

What exactly should be copied is a bit up to interpretation, but I think these make
sense, and things like audio or game data used to be part of render settings which
do get copied so at least for those it was a regression.
2012-04-15 08:48:11 +00:00
Campbell Barton
a73d0d3e72 code cleanup: dont include BLI_winstuff.h on non windows systems, also cleanup some defines/includes for windows. 2012-04-15 07:54:07 +00:00
Campbell Barton
969a079aeb code cleanup: comment (almost) all members of KeyBlock & Key. 2012-04-14 03:58:08 +00:00
Campbell Barton
289f627f63 code cleanup: when extending name length Key.elemstr was incorrectly extended to 64 chars, added comment and set back to original length. 2012-04-14 02:48:56 +00:00
Campbell Barton
c8a1ef78c0 style cleanup: key.c 2012-04-14 02:32:32 +00:00
Nicholas Bishop
60d3b8f27b Fix loading external MDisps, BMesh merge bug.
* When converting mfaces to mpolys, load external MDisp data in, add
  CustomDataExternal struct to loopdata if needed.

* Fix multires modifier's filepath RNA functions to use ldata rather
  than fdata.
2012-04-13 05:39:27 +00:00
Campbell Barton
d17efa64a6 improve mesh error prints and quiet a print in mesh_ensure_tessellation_customdata() which happened too often. 2012-04-12 14:36:57 +00:00
Brecht Van Lommel
02cf29d8b0 Fix: subsurf UV was not working correct with n-gons, it still had hardcoded
4 vertices per face code in some places.
2012-04-12 12:23:25 +00:00
Campbell Barton
405c9d9a95 code cleanup: remove unused KeyBlock.adrcode 2012-04-12 11:50:43 +00:00
Campbell Barton
4c9486f13d change add_keyblock() not to sort keyblocks by time since this can be a problem when using the function in lower level parts of the code, instead add add_keyblock_ctime() which sets time and sorts on absolute shape keys. 2012-04-12 11:05:16 +00:00
Campbell Barton
c74ace03e0 fix [#30907] Inset tool with Select Outer disabled does not allow translation of new faces
inset with select-inner faces gave invalid selection.

also correct spelling in some comments.
2012-04-12 07:40:47 +00:00
Campbell Barton
5aaf3ede76 code cleanup: remove unused var for windows and style edit (remove spaces between 'var[num]') 2012-04-12 00:15:02 +00:00
Campbell Barton
b4a0152e76 code cleanup: float formatting was confusing in some cases - eg: (0.,0.,0.) 2012-04-11 08:15:13 +00:00