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-04-22fix [#35026] Curve build modifierCampbell Barton
2013-03-26style cleanup:Campbell Barton
also rename mesh_getVertexCos() --> BKE_mesh_vertexCos_get() to match curve function.
2013-03-20code cleanup: use booleans for mesh and selection code.Campbell Barton
2013-03-17code cleanup: name mesh functions more consistently, also use bools for mesh ↵Campbell Barton
args.
2013-03-16object converting curve/mball to a mesh would give invalid selection state ↵Campbell Barton
(edges selected but nothing else). add arg to BKE_mesh_calc_edges() so selecting newly created edges is optional.
2013-03-15code cleanup: rename BKE_mesh_to_curve_ex --> BKE_mesh_to_curve_nurblist,Campbell Barton
also correct odd indentation.
2013-03-14split up BKE_mesh_to_curve() into 2 functions, adding BKE_mesh_to_curve_ex() ↵Campbell Barton
which doesn't do object type conversion.
2013-03-14converting a mesh to a curve was unnecessarily using tessface's.Campbell Barton
use mpolys instead and simplify checks for wire edges. Also rename BKE_mesh_from_curve() --> BKE_mesh_to_curve() since this function converts a mesh into a curve.
2013-02-05Fix #34040: Moving Normal Node with enabled Cycles Material Preview crashesSergey Sharybin
Issue was caused by couple of circumstances: - Normal Map node requires tesselated faces to compute tangent space - All temporary meshes needed for Cycles export were adding to G.main - Undo pushes would temporary set meshes tessfaces to NULL - Moving node will cause undo push and tree re-evaluate fr preview All this leads to threading conflict between preview render and undo system. Solved it in way that all temporary meshes are adding to that exact Main which was passed to Cycles via BlendData. This required couple of mechanic changes like adding extra parameter to *_add() functions and adding some *_ex() functions to make it possible RNA adds objects to Main passed to new() RNA function. This was tricky to pass Main to RNA function and IMO that's not so nice to pass main to function, so ended up with such decision: - Object.to_mesh() will add temp mesh to G.main - Added Main.meshes.new_from_object() which does the same as to_mesh, but adds temporary mesh to specified Main. So now all temporary meshes needed for preview render would be added to preview_main which does not conflict with undo pushes. Viewport render shall not be an issue because object sync happens from main thread in this case. It could be some issues with final render, but that's not so much likely to happen, so shall be fine. Thanks to Brecht for review!
2013-01-24add 'deform - integrate' option to mesh-cache,Campbell Barton
This means the deformation on the input to the modifier can be re-applied ontop of the mesh cache. In practice this is most useful for using corrective shape-keys with mesh-cache.
2013-01-10Fix #33752: UV Orco coordinates were wrong for Cycles (and other externalBrecht Van Lommel
render engines). Replaced generating orco_index by filling the UV loop data directly which is easier and all that needed to be done anyway.
2013-01-10don't store bevel weights or edge crease customdata layers in editmode ↵Campbell Barton
unless they are needed. configurable in 'Geometry Data' panel, will be added when running crease edges transform for example.
2012-12-28code cleanup:Campbell Barton
- free_dverts -> BKE_defvert_array_free - copy_dverts -> BKE_defvert_array_copy also move the functions from BKE_mesh into BKE_deform
2012-12-22flush selection from vertex paint and weight paint modes when exiting, this ↵Campbell Barton
isnt fool-proof, will need more work.
2012-12-22flush selection when switching weight paint vertex/face selection modes.Campbell Barton
2012-12-22function for flushing polygon -> vert,edge selection (in object mode), ↵Campbell Barton
currently unused.
2012-12-22code cleanup and minor changesCampbell Barton
- use DummyRNA_NULL_items to replace empty enums. - replace calloc with malloc in copy_dverts since its copied over after. - add wmGesture->userdata, so operators that use gestures have somewhere to store their own data (not used yet).
2012-12-21minor bmesh improvementsCampbell Barton
- use 2 omp sections for vert -> (edge, face) selection flushing. - dont use face-loop iterator for cddm_from_bmesh_ex conversion to give some speedup (some modifiers use this). - use float(*)[3] for functions that return coords.
2012-12-18uv edge based stitch. Useful to disambiguate betwen islandsAntony Riakiotakis
when uvs are shared by more than two islands. Uv edges usually belong to only two islands, making for much cleaner stitches. To change between stitch modes, press TAB. Initial mode depends on the selection mode of the image editor. Documentation can also be found on the release wiki
2012-11-09style cleanup: indentationCampbell Barton
2012-10-20Add option to set object origin to the center of massSergej Reich
This uses the weighted average of polygon centroids based on area It work well in most cases but will be slightly wrong when polygons have many vertices.
2012-10-15code cleanup: define sizes of vectors for function args and use C style commentsCampbell Barton
2012-09-25small improvement to previous commit, use pre-calculated ngon normal to ↵Campbell Barton
avoid calculating twice when dupli-scale is enabled.
2012-09-25fix [#32646] Duplifaces can have wrong orientation with ngonsCampbell Barton
concave ngons could flip the dupliface, now use the faces normal when calculating the dupli-face.
2012-07-31resolve glitch in the image space where mask editing and UVs would conflict.Campbell Barton
now UV editing overrides mask.
2012-07-31support for curve orco uv's as UV's in cycles.Campbell Barton
ideally these would be used as generated coordinates, but this is tricly because cycles calculates its own orco's and doesnt know about curve settings.
2012-07-14Fix #31021: Render settings are not taken into account for curvesSergey Sharybin
Refactored code a bit to make naming a bit more clear and added a function to create mesh from given display list rather than from object's displist. Tested using plain curves (which doesn't imply using derived meshes) and curves with constructive modifiers (which are using derived meshed).
2012-06-28Fix #31835: OBJ Importer corrupts a model (crash in edit mode)Sergey Sharybin
Added back face validation to BKE_mesh_validate_arrays. This is needed because some addons (like OBJ importer) are reading tessfaces and then converting them to ngons and validation of tessfaces is needed before such a conversion. Validation of faces would happen only if there's no polys in mesh.
2012-06-07Fix #31725: UV map order is ignored when opening in 2.6+ versionsSergey Sharybin
Issue was caused by do_versions being used pdata as reference for active/render/ stencil/clone layer indices instead of fdata. Added some utility functions used only by do_versions to be sure this indices are set from fdata for pre-bmesh files.
2012-06-04Fix #31172: applying boolean removes uv mapsSergey Sharybin
The issue was caused by CDDM_tessfaces_to_faces not dealing with CD layers. There was already function BKE_mesh_convert_mfaces_to_mpolys which converted mfaces to mpolys with converting all CD layers. Made it a bit more general so it might work with given arrays of faces/polys and re-used it from CDDM module. Checked with UV and sculpt data from Blender 2.61 and it loaded nice, so hopefully there's no regressions in loading older files.
2012-05-22Add Mesh equivalent to BM_edge_other_vert().Nicholas Bishop
/* Return the index of the edge vert that is not equal to 'v'. If * neither edge vertex is equal to 'v', returns -1. */ int BKE_mesh_edge_other_vert(const struct MEdge *e, int v);
2012-05-15Update create_vert_edge_map() to match create_vert_poly_map().Nicholas Bishop
2012-05-13code cleanup: header cleanup and remove some duplicate defines.Campbell Barton
2012-05-08optimize ngon angle calculation in solidify modifier (was doing prev/next ↵Campbell Barton
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-06code cleanup: naming - BKE_mesh_*Campbell Barton
2012-05-05code cleanup: naming - pose/armature/image Campbell Barton
also use ..._find_name(..., name) rather then ..._find_named(..., name) --- both were used.
2012-05-05code cleanup: function naming, use BKE_*type* prefix.Campbell Barton
2012-04-29style cleanup: whitespace / commasCampbell Barton
2012-04-22style cleanup: commentsCampbell Barton
2012-03-27bmesh todo, unlikly but possible - entering editmode with faces and no polys.Campbell Barton
rather then printing a warning and failing - convert them to polys.
2012-03-22Renaming CD_WEIGHT_MCOL/MLOOPCOL and their masks from WEIGHT to PREVIEW, as ↵Bastien Montagne
this layer is now also used for various preview tasks in Object mode. “Cleanup” commit, no functional changes.
2012-03-19Fix [#30234] Various problems with CD layers and tesselation, related to ↵Bastien Montagne
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-17Reduce poly map memory usage (used by sculpt smooth brush.)Nicholas Bishop
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-16mesh_validate code for bmesh (i.e. polys/loops).Bastien Montagne
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/...
2012-03-14Add BKE mesh function to update edge/poly hidden flags from verts.Nicholas Bishop
2012-03-04style cleanup / comment formatting for bli/bke/bmeshCampbell Barton
2012-03-02style cleanupCampbell Barton
- spelling - turns out we had tessellation spelt wrong all over. - use \directive for doxy (not @directive) - remove BLI_sparsemap.h - was from bmesh merge IIRC but entire file commented and not used.
2012-02-29Code Cleanup: remove non existing function declarations.Campbell Barton
added some missing functions too - which are not used yep but should be there for api completeness. * CDDM_set_mloop * CDDM_set_mpoly * BLI_mempool_count
2012-02-29Code cleanup for the neighbor_average() sculpt function.Nicholas Bishop
Moved some of the code into a couple new mesh functions for searching in poly loops to simplify the function, the rest is just cosmetic changes.
2012-02-28code cleanup: use float vector size in function definitions, and const's ↵Campbell Barton
where the values are unchanged.