Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-06-03fix [#35555] Collada: export destroys mesh in some casesCampbell Barton
add arguments to calculate normals when converting to bmesh: BM_mesh_bm_from_me, DM_to_bmesh This gives some speedup to undo (which didnt need to re-calculate vertex normals), and array modifier which doesnt need to calculate face normals at all
2013-05-30modifier stack: lazy initialize normalsCampbell Barton
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-29Make sure bool will always have the same size in C and C++Sergey Sharybin
There were an issues with data structures defined in headers and being used by both C and C++ on systems with stdbool unavailable. This happened because bool in this case will be defined as unsigned int, which is 4 bytes. But C++'s bool is only 1 byte and this lead to alignment issues. Now bool is always 1 byte, also made sure there's no situation like bool foo = BitField & BitFlag, which could give overflow issues. Use (BitField & BitFlag) != 0 instead. Fixes #35553: Compositor broken (Backdrop & Preview)
2013-05-02Fix #35174: dynamic paint displacement missing in render.Brecht Van Lommel
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-04-24Fix bug #34611: bevel overlap limitHoward Trickey
The previous fix limited overlap, but is sometimes too conservative, and artists want way to turn off the limiting, so added 'Allow Overlap' option to modifier.
2013-03-13Fix bevel modifier bug #34611, limit bevel amount needed.Howard Trickey
This is a quick fix that perhaps overestimates the point of first geometry collision, but at least for now it should allow models that used the old modifier and a too-big bevel amount to not look awful. The correct solution to this problem is much more involved and I'll get to it later.
2013-02-21Enable new bevel tool code in bevel modifier.Howard Trickey
Now modifier takes a segments parameter. Bevel edge weights will multiply the overall amount. For vertex-only, you can give a vertex group name, and the weights in that will multiply the overall amount.
2012-12-28Add 'vertex_only' option to bevel tool.Howard Trickey
Right now, changing segments to > 1 doesn't do anything, but intend to work on making that cause rounded corners.
2012-11-18bmesh: lazy initialize bmesh tool flag pool, has the advantage that ↵Campbell Barton
modifiers that dont use bmesh operators can skip allocating it.
2012-11-18bmesh: move internal API flags out of BMFlagLayer, into BMHeader which was ↵Campbell Barton
being padded up anyway, added static assert to make sure it stays <=16 bytes.
2012-11-18bevel now only takes manifold edges (so it doesnt need to check for them)Campbell Barton
2012-11-18commented bevel modifier code now calls bevel direct rather then the bevel ↵Campbell Barton
operator.
2012-11-16minor edits so new bevel operator can be used from the modifier (testing ↵Campbell Barton
only, still disabled by default)
2012-10-24add CDDM_from_bmesh(), avoids using BMEditMesh in modifiers.Campbell Barton
2012-10-24style cleanup: modifier structsCampbell Barton
2012-10-22code cleanup: check defgroup_name_index() return value != -1, rather then ↵Campbell Barton
checking >= 0. also remove unused bmesh decimator code.
2012-09-20code cleanup: remove unused macros, commet some which may be useful later - ↵Campbell Barton
or good to keep for completeness. quieted some warnings and add flags -Wmissing-include-dirs and -Wno-div-by-zero to cmake/gcc
2012-07-21add option so operators can be called with a flag, currently the only flag ↵Campbell Barton
is to respect hidden geometry. this is useful for bmesh tools that operate in object mode or for modifiers which would previously use hidden faces in some cases.
2012-05-09Refactor of modifiers' apply function: now use a single bit-flag parameter ↵Bastien Montagne
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-06style cleanup: modifiersCampbell Barton
2012-04-19remove BM_ITER, BM_ITER_INDEX macros, use ELEM or MESH variants only (the ↵Campbell Barton
maceros had unused args in both cases).
2012-04-19style cleanup: BM_ITER / BM_ITER_INDEX / BMO_ITERCampbell Barton
2012-04-19fix bevel edge angle (wasnt hooked up to new code), vertex-bevel angle isnt ↵Campbell Barton
working still
2012-03-26fix [#30598] Bad 3D view display & render with smooth meshCampbell Barton
Sergey's suggestion - just call calc normals fixes.
2012-03-24style cleanup: follow style guide for formatting of if/for/while loops, and ↵Campbell Barton
else if's
2012-03-16bmesh: being back bevel modifier from 2.62 stable.Campbell Barton
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.
2012-03-11remove Object member from BMesh struct - was only used for undo and ↵Campbell Barton
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.
2012-03-09style cleanup: comment blocksCampbell Barton
2012-02-24bmesh py api (some api changes and doc additions)Campbell Barton
* remove 'select' and 'hide' from BMLoop * remove BMesh.update * add BMesh.normal_update(skip_hidden=False) * add BMElemSet.index_update(), eg: bm.verts.index_update() bmesh api * BM_mesh_normals_update() now takes skip_hidden as an argument (previously this was default behavior), however this isnt good when using BMesh modifiers, where you want all normals to be recalculated. * add bm_iter_itype_htype_map[], to get the iter type from a BMesh iterator.
2012-02-20added boolean type for bmesh operators, will make python wrapping clearer ↵Campbell Barton
and also makes existing calls more obvious. also corrected some error reports.
2012-02-13own error - mixup with BMO_slot_mat_get/setCampbell Barton
2012-02-12BMesh api function naming.Campbell Barton
`_set` suffix was used in two ways (confusing) * to set a flag to be enabled. * to set a value passed as an argument. now use enable/disable rather then set/clear for functions which change flags. also remove BME_weld.c, the file didnt contain much code and the current extrude works well
2012-02-12bmesh minor refactorCampbell Barton
* add DM_to_bmesh_ex, DM_to_bmesh for converting a derived mesh to a BMesh (rather than a BMEditMesh) * have a generic variable for allocsize: bm_mesh_allocsize_default, rather than copying the values about.
2012-02-12rename CDDM_To_BMesh to DM_to_editbmesh, since theres no requirement forCampbell Barton
the input to be a CDDM. remove conversions to CDDM for edge split and bevel (will give some speedup).
2012-02-12code refactor, function renaming for bmesh.Campbell Barton
These changes are to make the bmesh api more consistent and easier to learn, grouping similar functions which is convenient for autocomplete. This uses similar convention to RNA. * use face/loop/edge/vert as a prefix for functions. * use 'elem' as a prefix too for functions that can take any type with a BMHeader. * changed from camel case to underscore separated (like RNA).
2012-01-30remove CDDM_copy second argument, added CDDM_copy_from_tessface instead.Campbell Barton
this function caused too many conflicts and in most cases was zero anyway.
2012-01-23disable re-tesselation for modifiers that use bmesh, array/bevel/edge split ↵Campbell Barton
- were tesselating 2 times and didnt need to. also comment array modifier from flushing selection flags.
2012-01-20replace CDDM_calc_normals_mapping with CDDM_calc_normals when used within ↵Campbell Barton
modifiers. this way modifiers wont be calculating tessface's which CDDM_calc_normals_mapping will do if not already calculated.
2012-01-18call CDDM_from_BMEditMesh without creating tessface data for modifiers.Campbell Barton
- in the case of deform modifiers this is very safe (assuming the mods themselves dont need tessface data), since the DM is freed right after, so this is an easy speedup. - in the case of bevel and split edge modifiers this should still work out fine since mods that need tessface data will generate it.
2012-01-18argument for CDDM_from_BMEditMesh() so creating tessface data is optional, ↵Campbell Barton
no functional changes since all callers use this so far.
2012-01-11svn merge ^/trunk/blender -r43278:43294Campbell Barton
2012-01-11Longer names support for all ID and other object namesSergey Sharybin
This commit extends limit of ID and objects to 64 (it means 63 meaning characters and 1 for zero-terminator). CustomData layers names are also extended. Changed DNA structures and all places where length constants were hardcoded. All names which are "generating" from ID block should be limited by MAX_ID_NAME-2, all non-id names now has got own define called MAX_NAME which should be used all over for non-id names to make further name migration stuff easier. All name fields in DNA now have comment with constant which corresponds to hardcoded numeric value which should make it easier to further update this limits or even switch to non-hardcoded values in DNA. Special thanks to Campbell who helped figuring out some issues and helped a lot in finding all cases where hardcoded valued were still used in code. Both of forwards and backwards compatibility is stored with blender versions newer than January 5, 2011. Older versions had issue with placing null-terminator to DNA strings on file load which will lead to some unpredictable behavior or even crashes.
2012-01-06rename CDDM_calc_normals() --> CDDM_calc_normals_mappingCampbell Barton
2011-12-132 new bevel options for the operator and the modifier.Campbell Barton
* even offset, uses same shell distance method as solidify to give even with beveled faces. * distance offset, this is mostly for compatibility with the modifier in trunk which uses the bevel width as a distance rather then a percentage. at the moment this is awkward for the operator since it makes percent act differently where the 0-1 range doesnt make sense. still need to bring back more options from trunks bevel modifier.
2011-11-28basic bevel modifier working again in bmesh, closely matches the edge split ↵Campbell Barton
modifier since it calls out to the bevel operator. - edge angles are ok - width is interpreted as percent added BMESH_TODO comments with details about what needs working on.
2011-10-24svn merge ^/trunk/blender -r41226:41227 .Campbell Barton
2011-10-24svn merge ^/trunk/blender -r41100:41150Campbell Barton
2011-10-23remove $Id: tags after discussion on the mailign list: ↵Campbell Barton
http://markmail.org/message/fp7ozcywxum3ar7n
2011-10-20BLI_ghash.h was including BLI_blenlib.h, remove from ghash header and ↵Campbell Barton
include in each file
2011-09-27svn merge ^/trunk/blender -r40511:40587Campbell Barton