3994ad8ced
solidify: remove BLI_array realloc's.
2013-06-12 06:20:24 +00:00
da733a25a5
correct solidify normal calculation logic
...
- always calculate vertex normals since they are used as fallbacks.
- only calculate rim normals if the normals are not already flagged as dirty.
2013-06-12 06:06:19 +00:00
ec30e3f00e
corrections to modifiers from recent normal handling changes
...
- solidify didn't define a dependsOnNormals callback (which it should have)
- build wasn't passing on dirty normals.
- decimate wasnt setting dirty normals.
2013-06-02 04:09:29 +00:00
09e11ad6ef
modifier stack: lazy initialize normals
...
many modifiers were calculating normals, when those normals were ignored by the next modifier.
now flag normals as dirty and recalculate for modifiers that set use `dependsOnNormals()` callback.
Quick test on mesh with 12 modifiers (mostly build type), calculated normals 6 times, now it only runs once - so this will give some speedup too.
2013-05-30 17:36:43 +00:00
28937676f3
fix for out of bounds memory access in solidify (harmless with guardedalloc padding but bad practice)
2013-05-25 00:22:04 +00:00
0ee45c9301
more optimal method of calculating the normal for the solidify modifier.
...
When adding 2 unit length vectors, the length can be used to calculate the angle.
2013-05-08 14:33:02 +00:00
76b1e8bc09
code clenup: rename BKE_mesh_poly_calc_angles -> BKE_mesh_calc_poly_angles
2013-05-08 12:56:51 +00:00
4a4f091155
Fix #35174 : dynamic paint displacement missing in render.
...
A previous bugfix disabled the dynamic paint modifier for orco texture
coordinate evaluation of the modifier stack. However the MOD_APPLY_USECACHE
flag is not a good way to check if the modifier is evaluated for orcos.
Instead I've added a MOD_APPLY_ORCO flag. Also removed a bunch of
applyModifierEM callbacks, none of them served a purpose except for the
subsurf modifier.
2013-05-02 14:42:05 +00:00
4c2c24aac3
Fix #35113 : solidify modifier not preserving clamp option on duplicating the
...
object or modifier.
2013-04-27 12:54:31 +00:00
1a3c59baac
fix for out of bounds memory access in solidify modifier (hidden by guardedalloc).
2013-04-26 11:31:54 +00:00
1d73ee50a4
solidify modifier: thickness clamping helps prevent self intersections when there are small details on a larger model.
2013-03-13 17:31:26 +00:00
8033834573
fix own regression since 2.65 [ #34438 ] Solidify crease bug
2013-02-26 14:32:53 +00:00
b94a5d59bf
fix [ #33742 ] Solidify - Material index problem
...
missed copying material offset values.
2013-01-04 08:17:09 +00:00
af51827dda
add a message when solidify is used with only-edges, this isn't properly supported.
...
also minor edits to py-api-ref
-- This line, and those below, will be ignored--
M doc/python_api/sphinx_doc_gen.py
M doc/python_api/rst/include__bmesh.rst
M source/blender/modifiers/intern/MOD_solidify.c
2012-12-05 01:02:41 +00:00
2bb174cfa4
style cleanup: indentation
2012-11-09 09:33:28 +00:00
23d43396ff
code cleanup: quiet -Wshadow warning, var name changes for splice functions and add assert for BM_edge_splice() when edges don't use the same vertices.
2012-10-20 09:56:40 +00:00
f67de7d805
fix for regression in solidify modifier copying loop customdata to rim faces (UV's and vertex colors).
...
Own fault when fixing rim face flipping r46924
2012-09-25 01:21:21 +00:00
b0bf816ece
fix [ #32646 ] Duplifaces can have wrong orientation with ngons
...
concave ngons could flip the dupliface, now use the faces normal when calculating the dupli-face.
2012-09-25 00:20:42 +00:00
32cf7fcdb1
code cleanup: spelling
2012-07-16 23:23:33 +00:00
5189356d58
style cleanup
2012-06-04 20:11:09 +00:00
c895c0ee23
patch [ #31579 ] Solidify modifier: Add new option "Flip Normals"
...
- previous commit was so similar to the patch Shinsuke wrote, better to add him as contributor, this commit will add to generated credits.
- this commit has no functional changes.
2012-05-26 09:39:04 +00:00
e343a69e76
solidify option to flip normals
2012-05-26 09:18:47 +00:00
29e89dc996
code cleanup: solidify modifier - remove dead assignment and unneeded NULL check.
2012-05-25 06:54:01 +00:00
27220c3340
solidify modifier - replace define, no longer needed since switching to bmesh.
2012-05-23 06:39:29 +00:00
8f886b3958
solidify modifier - replace VECADDFAC with inline function.
2012-05-23 06:32:02 +00:00
f537691c6b
fix solidify modifier flipping of rim polygons.
2012-05-23 06:25:31 +00:00
eb023322ef
style cleanup: mmap_win32
2012-05-22 13:20:01 +00:00
8b2ffc1428
fix for error in last commit and minor speedup to looping over edges.
2012-05-22 10:10:14 +00:00
e7647e1585
solidify modifier - remove a loop on all edges.
2012-05-22 09:53:33 +00:00
305d341ec2
code cleanup: use vector math function minmax_v3v3_v3() and other minor vector function edits.
2012-05-13 11:05:52 +00:00
318b44fe5d
Refactor of modifiers' apply function: now use a single bit-flag parameter to pass options, instead of having one parameter per boolean flag (i.e. replaces current useRenderParams and isFinalCalc by a single ModifierApplyFlag flag. ModifierApplyFlag is an enum defined in BKE_modifier.h). This way we won't anymore have to edit all modifier files when e.g. adding a new control flag!
...
Should have no effect over modifier behavior.
2012-05-09 15:00:26 +00:00
6f20ef6d87
optimize ngon angle calculation in solidify modifier (was doing prev/next vector subtract and normalize for every vertex). now store the previous normalized vector for re-use.
...
also add BKE_mesh_poly_calc_angles() which is mostly a reference for now.
2012-05-08 14:58:38 +00:00
353ef9541a
fix [ #31347 ] solidify modifier > even thickness parameter weired
2012-05-07 18:07:34 +00:00
6291b36d4c
fix for solidify modifier angle calculation (was incorrectly using normalized angle function)
2012-05-07 15:45:41 +00:00
3d8e58751c
style cleanup: modifiers
2012-05-06 13:38:33 +00:00
5da2135eef
code cleanup: double promotion & some style cleanup
2012-05-03 21:35:04 +00:00
8fa17c5362
code cleanup: no functional changes
...
- memset(..., -1) is used incorrectly even though it worked: MOD_solidify.c - thanks Halley from IRC for noticing this. use fill_vn_i() instead.
- quiet warnings in editmesh_slide.c
- cleanup comments in bmesh and some other minor comment additions.
2012-04-07 12:37:15 +00:00
5a90ea77bc
style cleanup: follow style guide for formatting of if/for/while loops, and else if's
2012-03-24 06:24:53 +00:00
4f19c1a995
spelling cleanup
2012-03-18 07:38:51 +00:00
89a963fb7f
style cleanup: comment blocks
2012-03-09 18:28:30 +00:00
c956e5d2d9
modified fix for "Fix [ #30351 ] Solidify Modifier High Quality Normals fails." from r44464.
...
rather then recalc polygon normals - solidify is simple enough to just flip the normals of the copied faces, the rim faces normals are already re-calculated so copy them.
2012-02-26 18:12:01 +00:00
5970adaccf
Fix [ #30351 ] Solidify Modifier High Quality Normals fails.
...
Don't really know why, but appears we need to recalc normals when this option is ON.
Also small perf improvement (avoid to compute twice each face normals).
2012-02-26 15:38:28 +00:00
566464366f
solidify modifier fix for material offset.
2012-02-11 21:39:09 +00:00
12531c5c76
fix for crash applying solidift after subsurf
2012-01-23 21:04:56 +00:00
1b505e6d1b
replace CDDM_calc_normals_mapping with CDDM_calc_normals when used within modifiers.
...
this way modifiers wont be calculating tessface's which CDDM_calc_normals_mapping will do if not already calculated.
2012-01-20 13:25:54 +00:00
afda428b7e
skip converting non CDDM type derived meshes for solidify modifier.
2012-01-19 23:51:40 +00:00
ddefb8a7d7
another fix for bmesh/solidify - was using incorrect poly length when finding the customdata to copy.
2012-01-17 13:26:59 +00:00
7e15c6ef97
remove some complexity in solidify code rim face creation.
...
was doing a loop lookup when the index was already available.
2012-01-17 13:18:23 +00:00
ded0af482b
rename CDDM_calc_normals() --> CDDM_calc_normals_mapping
2012-01-06 00:12:24 +00:00
7d02f986b6
remove re-tesselation after constrictive modifiers, this way we can avoid calculating tessfaces between multiple constructive modifiers to speedup the modifier stack.
2012-01-05 12:50:23 +00:00