Commit Graph

30661 Commits

Author SHA1 Message Date
Campbell Barton
753056d4e8 BMesh utility functions, not used yet,
- BM_edge_loop_pair incase you need the loops rather then the faces.
- BM_edge_ordered_verts_ex() - accepts a loop argument.
- BM_edge_length_calc() - simple length calc, useful if the edge is in some array, saves assigning a var and using len_v3v2().
2012-03-19 01:57:42 +00:00
Campbell Barton
ef2dc9b175 better error reporting when a bmesh operator fails. (give reason and show char number that fails) 2012-03-18 23:38:31 +00:00
Joerg Mueller
727f586a0d Fix for [#30495] Framerate goes crazy after changing Sync mode from "Frame Dropping" to "no Sync" while playing anim 2012-03-18 22:21:29 +00:00
Bastien Montagne
53b7078343 Fix [#30234] Various problems with CD layers and tesselation, related to modifiers stack.
Should also fix [#30266], [#29451], and partly [#30316].

Here are the changes made by this commit:
* It adds a "dirty" flag to DerivedMesh struct (for now, only DM_DIRTY_TESS_CDLAYERS, but more might be added as needed).
* It adds a new func, DM_update_tessface_data, which assumes tessfaces themselves are valid, but updates tessellated customdata from their poly/loop counter parts.
* At end of modstack, when valid tessellated faces are present in finaldm , but the cdlayers dirty flag is set, call that function (instead of recomputing the whole tessellation).
* Edits to the codes concerned (UVProject, DynamicPaint, and Subsurf modifiers).
* Also add to subsurf dm generation code the creation of a CD_POLYINDEX layer (mandatory for DM_update_tessface_data to work well, and imho all tessellated dm should have one).

Note: some pieces of old code are just #if 0’ed, will clean them later.
2012-03-18 22:06:57 +00:00
Janne Karhu
709ca0ece9 "Fix" for [#30098] Particle rotation wrong / explode modifier
- The main problem was that in order to be accurate all particle
  rotations have to be calculated incrementally so the only working
  solution is to store rotations to the point cache (previously
  this was only done for dynamic rotations). This can nearly double
  the point cache size so it's not ideal to have this as a default
  as in many cases you don't care about particle rotations.
- Particle rotation panel now has a new "enable" checkbox that
  enables rotation calculations and the storing of rotations to
  point cache.
- Old files will have rotations enabled via do_versions so that in
  the worst case old files will only get bigger point caches, but no
  sudden loss of particle rotations.
2012-03-18 21:33:00 +00:00
Bastien Montagne
2635d78ec1 Grumph, more fixes in this Select menu (Invert had default op name for metaball and particules...). Also fixed "(De)select All" name of particule op. 2012-03-18 20:04:41 +00:00
Peter Schlaile
90bc26631c == Sequencer ==
Small fix for the last fix. Mixed up x and y scale... oh dear.
2012-03-18 19:32:26 +00:00
Thomas Dinges
24ea793c27 Release cycle
* BCon3: Beta. Ongoing module work, bug fixes and polishing features.
2012-03-18 16:01:11 +00:00
Sv. Lockal
8720f2b512 Allow dropping image files from outside blender, or image datablocks from inside blender to the shader and texture node editors, to add an image node. Earlier this was possible only for compositing node editor. 2012-03-18 15:12:11 +00:00
Nicholas Bishop
110fa100ff Re-enable the clay strips sculpt brush.
Most of the tool code was already in place, only significant
functionality change is that anchored stroke works now.

TODO:
* Gave it a new icon, but could use a better one
* Default .blend should have a clay strips brush
2012-03-18 11:44:14 +00:00
Nicholas Bishop
c5860e6c5d Rename 'clay tubes' to 'clay strips' and include it in the capabilities RNA. 2012-03-18 11:44:00 +00:00
Nicholas Bishop
bb8bbc817e Use enums for brush flags and sculpt tools. 2012-03-18 11:43:51 +00:00
Peter Schlaile
982396425b == Sequencer ==
Fixes typos in RECORD_RUN_NO_GAPS timecode description.
2012-03-18 11:43:22 +00:00
Peter Schlaile
450685b156 == Sequencer ==
Fix for:
[#29758] Sequencer `Image Offset` error with render percentage

also:
* make preprocess parameters completely independent from render resolution
  (they are always relative to *final* resolution now)
* fix yesterdays fix for proxy resolution rendering (the case of unbuild
  proxies wasn't handled correctly)
2012-03-18 11:13:28 +00:00
Nicholas Bishop
7bea13ccd8 Style cleanup in sculpt.c, no functional changes. 2012-03-18 09:35:09 +00:00
Bastien Montagne
ed43b652ee Code style edits (mostly spliting long lines, and removing trailing spaces).
Note about long lines: I did not touch to two pieces of code (because I don’t see any way to keep a nicely formated, compact code, with shorter lines):
* The node types definitions into rna_nodetree_types.h
* The vgroup name functions into rna_particle.c
2012-03-18 09:27:36 +00:00
Campbell Barton
1fa0b86c28 fix for own mistake when refactoring bmesh - was treating the iterator as a type flag. 2012-03-18 09:21:24 +00:00
Campbell Barton
4f19c1a995 spelling cleanup 2012-03-18 07:38:51 +00:00
Campbell Barton
e56f714000 ngons draw with uniform normals in object mode now, I had this code disabled for speed (it was being called when it didnt need to), but for CDDM meshes without face normal layers this should still be called. 2012-03-18 06:49:32 +00:00
Campbell Barton
3633858fdb code cleanup:
* replace 2D vector copy with copy_v2_v2().
* use puts rather then printf for single strings.
* style cleanup for drawobject.c indentation.
2012-03-18 06:01:33 +00:00
Campbell Barton
b786d0d47c better not to use rgb_float_to_uchar() from last commit (comment as to why) 2012-03-17 23:37:14 +00:00
Campbell Barton
b0c0626cb0 fix for weightpaint color with recent loopcolor abgr --> rgba conversion. 2012-03-17 23:26:25 +00:00
Campbell Barton
560d8ad12c 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.
2012-03-17 23:22:44 +00:00
Campbell Barton
05612c0419 code cleanup: not all mathutils callback creation functions tool unsigned char for type & subtype args. 2012-03-17 22:31:57 +00:00
Campbell Barton
6075a24fc4 fix for invalid use of strncat (N == how many bytes may be appended, not the final string size). 2012-03-17 22:14:52 +00:00
Antony Riakiotakis
be4b29b849 fix: UV Islands not selected properly with Ctrl-L. A simple misplacement of the BMFace iterating variable. Also cleaned up an unused nverts variable. 2012-03-17 22:12:17 +00:00
Campbell Barton
98b784a931 update vertex paint code for last commit, was still using ABGR order. 2012-03-17 21:11:28 +00:00
Campbell Barton
91580c0929 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).
2012-03-17 20:39:28 +00:00
Campbell Barton
8b7ea6fc90 bmesh py api:
access to MLoopCol as mathutils.Color type
2012-03-17 19:34:02 +00:00
Peter Schlaile
8bf1615ce3 == Sequencer ==
Bugfix: [#28159] sequencer strip crop values on proxy not scene render size

Also: IMB saturation change moved into imbuf-module.
2012-03-17 19:31:28 +00:00
Bastien Montagne
02abb636a3 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.
2012-03-17 19:14:08 +00:00
Howard Trickey
8d3e79ddc9 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.
2012-03-17 15:47:48 +00:00
Bastien Montagne
7bc693d107 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. :/
2012-03-17 14:42:44 +00:00
Bastien Montagne
1f6ae5e4fb Minor UI messages fixes, and enabling i18n for all modifier_setError() error messages. 2012-03-17 14:27:46 +00:00
Jens Verwiebe
e4cc4b3e95 compile fix for 44939 2012-03-17 12:32:36 +00:00
Bastien Montagne
788b47b788 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 ;) ).
2012-03-17 12:07:58 +00:00
Campbell Barton
02f707e9da minor mathutils code cleanup - use mathutils callbacks as unsigned chars everywhere. 2012-03-17 10:46:02 +00:00
Bastien Montagne
1fc345cd32 Make grumpy gcc happy again! :p 2012-03-17 10:23:44 +00:00
Campbell Barton
29831ca087 bmesh py api:
added per loop UV layer access
2012-03-17 06:40:44 +00:00
Arystanbek Dyussenov
8634d0e9c1 #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.
2012-03-17 06:37:26 +00:00
Campbell Barton
757c0af9c6 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.
2012-03-17 04:43:32 +00:00
Nicholas Bishop
3d87c23f4f 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.
2012-03-17 04:41:36 +00:00
Campbell Barton
681e023cb0 minor improvement to image info color sample drawing, draw a grey outline. 2012-03-16 23:44:08 +00:00
Nicholas Bishop
52418868eb 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.
2012-03-16 23:21:40 +00:00
Campbell Barton
fa17b0a911 add select invert for lattice 2012-03-16 23:01:37 +00:00
Campbell Barton
875b69fa52 fix for own silly mistake with face creation (wasnt checking more then 1 vert was selected) 2012-03-16 22:24:56 +00:00
Campbell Barton
70d3d1aca6 style cleanup: py/capi 2012-03-16 21:39:56 +00:00
Antony Riakiotakis
56da174b14 bugfix. Brush zoom could fail if uv sculpting was on 2012-03-16 21:26:18 +00:00
Nicholas Bishop
fd2ea6b966 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.
2012-03-16 20:42:29 +00:00
Alexander Kuznetsov
ed44ddd816 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.
2012-03-16 17:37:45 +00:00