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
2014-05-13Fix T39196, Dynamic Topology Undo Applied to Wrong MeshAntony Riakiotakis
Undoing nodes that do not belong to the current object will cause the saved bmesh log entry to be reverted instead. This entry can belong to another object though. This is easy to fix by enforcing name matching (this was borrowed by edit mode but can definitely be improved) between current object name and undo node name and deleting older entries. However there are complications. Deleting dyntopo entries in this way can leave a brush stroke as first dyntopo log entry. This can present issues if we attempt to delete that entry since it's deleted mesh elements may now have had their ids (which would still be valid at the time) cleaned up. This can result in crashing if we attempt to resculpt on the mesh. To fix this I have disabled releasing the deleted entries. This entanglement between bm_log and undo is quite volatile but I hope the system works better now. Also minor cleanup, fix unneeded check warning
2014-04-17Recreating a bmesh log did not account for modified faces.Antony Riakiotakis
It shouldn't create issues in practice because modified face ids should have been reclaimed from an added face on a previous entry, but add for completeness.
2014-04-11Fix redraw and undo issues with hidden parts in dyntopo after recentAntony Riakiotakis
changes.
2014-04-11Support logging of modified faces in dyntopo.Antony Riakiotakis
This is meant to support undo when hiding parts of the mesh. Also avoid rebuilding the PBVH in that case as well (no nodes split)
2014-04-08Mempool: delay allocating an initial chunk, its not always usedCampbell Barton
2014-04-07Dyntopo: avoid mask layer lookups while adding/removing vertsCampbell Barton
2014-04-05Mempool: remove BLI_MEMPOOL_SYSMALLOC, MEM_* allocs are more efficient nowCampbell Barton
2014-04-04Code cleanup: no need to use calloc when memory is initialized afterCampbell Barton
also replace AT with __func__ since AT expands the full pathname
2014-04-03Code cleanup: strict flags for bmesh_logCampbell Barton
2013-09-12code cleanup: headers - doxy comments.Campbell Barton
2013-08-24ghash: reserve size when its known or can be guessed close enough.Campbell Barton
also avoid allocs per node in pbvh_bmesh_node_limit_ensure()
2013-08-21rename recently added BLI_ghash_assign() -> BLI_ghash_reinsert()Campbell Barton
2013-08-21bmesh api cleanup, face creation args now accept an example face (as with ↵Campbell Barton
vertex and edge), also replace BM_face_create_quad_tri_v with BM_face_create_verts
2013-08-21use BM_CREATE_NOP arg rather then zero, with pointer and bool args in either ↵Campbell Barton
side in some cases it gets a bit confusing. also correct edge-rotate where bool->flag conversion worked by accident.
2013-08-19Dyntopo:Antony Riakiotakis
Turn off pbvh normal update flag after recalculation, saves recalculating normals every frame when not stroking the mesh. For this to work reliably with undo we need to support original normals in the bm_log (was marked as a TODO already in the code), so that undoing avoids having invalid normals in the mesh (since we don't update every frame anymore). This was added in this commit as well. Also added some (disabled) quite paranoid checks in the bmesh valication code for dyntopo hoping to catch the real normal update issue. No luck there yet.
2013-08-18add hash function BLI_ghash_assign, BLI_edgehash_assignCampbell Barton
avoids remove,insert and only hashes the key once.
2013-03-04patch [#34103] use boolean in path functions and add comments.Campbell Barton
path_util_1.patch from Lawrence D'Oliveiro (ldo)
2013-02-03style cleanup & some spellingCampbell Barton
2013-02-03improve BMesh api use from r54265, no need to do edge lookups from the faces ↵Campbell Barton
verts since the face stores these already. also remove ScrArea.cursor, historic runtime variable.
2013-02-02Remove loose edges created during undo in dynamic-topology sculpt modeNicholas Bishop
Fixes [#34043] "Dyntopo: noise appear during sculpting (parasite edges)" projects.blender.org/tracker/index.php?func=detail&aid=34043&group_id=9&atid=498
2013-01-28minor optimization - don't do double lookups on vertex mask layer for ↵Campbell Barton
vert_mask_get(), vert_mask_set(). add an assert because if the mesh is in an invalid state the mask layer can exist but the mask pointer still be NULL (noticed this while looking into a different bug).
2013-01-28style cleanup: also remove unneeded NULL check.Campbell Barton
2013-01-21code cleanup: style & warnings.Campbell Barton
2013-01-19minor dyntopo speedup: was doing 2x ghash lookups for BM_log_face_removed(), ↵Campbell Barton
BM_log_vert_removed(), only one needed.
2013-01-17optimize bmesh operations that use triangle BMFace's (dyn-topo and mesh ↵Campbell Barton
conversion).
2013-01-14use booleans for bmesh api.Campbell Barton
2013-01-09style cleanupCampbell Barton
2012-12-31style cleanupCampbell Barton
2012-12-30Add BMLog for efficiently storing changes to vertices and facesNicholas Bishop
The BMLog is an interface for storing undo/redo steps as a BMesh is modified. It only stores changes to the BMesh, not full copies. Currently it supports the following types of changes: - Adding and removing vertices - Adding and removing faces - Moving vertices - Setting vertex paint-mask values - Setting vertex hflags