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
2018-11-06Cleanup: rename fast-heap -> heap-simpleCampbell Barton
In general prefer API names don't start with adjectives since it causes grouping of unrelated API's for completion.
2018-11-06Cleanup: move fast heap into own source & headerCampbell Barton
2018-11-05BLI_heap: implement a limited but faster version of heap.Alexander Gavrilov
If the user only needs insertion and removal from top, there is no need to allocate and manage separate HeapNode objects: the data can be stored directly in the main tree array. This measured a 24% FPS increase on a ~50% heap-heavy workload. Reviewers: brecht Differential Revision: https://developer.blender.org/D3898
2018-10-19Partial revert '#if 0' cleanupCampbell Barton
Partially revert 41216d5ad4c722e2ad9f15c968af454fc7566d5e Some of this code had comments to be left as is for readability, or comment the code should be kept. Other functions were only for debugging.
2018-10-18Cleanup: Remove more #if 0 blocksJacques Lucke
Continuation of https://developer.blender.org/D3802 Reviewers: brecht Differential Revision: https://developer.blender.org/D3808
2018-04-03Cleanup: rename BMesh count_ex -> count_at_mostCampbell Barton
2018-02-15Cleanup: use '_len' instead of '_size' w/ BLI APICampbell Barton
- When returning the number of items in a collection use BLI_*_len() - Keep _size() for size in bytes. - Keep _count() for data structures that don't store length (hint this isn't a simple getter). See P611 to apply instead of manually resolving conflicts.
2018-02-01Cleanup: rename BLI_*_empty() -> clear()Campbell Barton
Consistent with other BLI API's
2017-11-05Cleanup: spellingCampbell Barton
2017-10-05Sculpt Mode: 2D falloff optionCampbell Barton
This makes brush influence into a tube instead of a sphere. It can be used along the outline of a mesh to adjust it's silhouette. Note that all this takes advantage of changes from vertex paint, from testing this seems useful so exposing from the brush options.
2017-10-05Vertex Paint: apply when cursor isn't over facesCampbell Barton
This behavior makes more sense for sculpt, less so for painting. Restores non PBVH behavior, adding `BKE_pbvh_find_nearest_to_ray` - similar to ray-cast except it finds the closest point on the surface.
2017-10-05Cleanup: rename dist -> depthCampbell Barton
Prepare to add code that stores distance to the ray, avoid confusion.
2017-05-11Cleanup: GPU PBVH namingCampbell Barton
Use GPU_pbvh prefix.
2016-11-13BMesh: BM_face_exists no longer uses return argCampbell Barton
Just return the face or NULL, like BM_edge_exists(), Also for BM_face_exists_overlap & bm_face_exists_tri_from_loop_vert. No functional changes. Old code did some partial overlap checks where this made some sense, but it's since been removed.
2016-07-11Cleanup: line lengthCampbell Barton
2016-07-11Dyntopo: fix lop-sided edge collapseCampbell Barton
When an edge was collapsed, one of the vertices would be removed. Edges attached to the deleted vertex wouldn't be considered for collapsing again, making the outcome from collapsing edges depend on the edge-vertex order. Use a hash to lookup the final vertex when collapsing edges, instead of skipping them.
2016-07-11Dyntopo: possible modified option was incorrectly setCampbell Barton
2016-07-11Dyntopo: remove redundant existing face checkCampbell Barton
Gives minor speedup
2016-07-06Dyntopo: optimize edge collapsingCampbell Barton
Checking if faces exist was a bottleneck, use a simpler version of this function for triangles. Gives approx 1.6x overall speedup (when many edges are being collapsed).
2016-07-06Cleanup: group dyntopo utility functionsCampbell Barton
2016-07-05Dyntopo: missing PBVH update collapsing an edgeCampbell Barton
PBVH-nodes attached to the vertex to be deleted were updated, but not nodes attached to the other vertex in the edge.
2016-07-05Dyntopo: inline lookups, remove type checkCampbell Barton
This was checking vert/face for every lookup, so far the type is always known, do a direct lookup instead.
2016-07-05Dyntopo: use inline iteratorsCampbell Barton
Gives small performance boost.
2016-07-05Dyntopo: compare masks when collapsingCampbell Barton
Was just checking the value of the first
2016-07-05Dyntopo: verify had over zealous assertsCampbell Barton
2016-07-04Quiet warnings w/ USE_VERIFY defineCampbell Barton
2015-12-12Cleanup: style/spellingCampbell Barton
2015-11-26Fix crash when ding dyntopo sculptingSergey Sharybin
This is a regression introduced by 77ac33d and was caused by use-after-free mistake.
2015-11-26Partial revert of last commitCampbell Barton
Keep index using the outer scope for GHASH iter macros, while its often nice, in some cases to declare in the for loop, it means you cant use as a counter after the loop exits, and in some cases signed/unsigned may matter. API changes should really be split off in their own commits too.
2015-11-26cleanup: C99 and vertex array commentsMike Erwin
GPU_buffer no longer has a fallback to client vertex arrays, so remove comments about it. Changed a few internal structs/function interfaces to use bool where appropriate. Use for-loop scope and flexible declaration placement. PBVH does the same thing but needs ~150 fewer lines to do it! The change to BLI_ghashIterator_init is admittedly hackish but makes GHASH_ITER_INDEX nicer to use.
2015-10-04BLI_Buffer: add BLI_buffer_reinitCampbell Barton
Useful for re-using a buffer when the existing data can be thrown away.
2015-07-16Split ray_face_intersection into quad/tri versionsCampbell Barton
Since many callers only need a single triangle
2015-05-18Fix T44553: Dyntopo ignores front-face optionCampbell Barton
When 'Front Faces' brush option was enabled, dyntop would still adjust detail on back-faces.
2015-05-15Cleanup: style, spellingCampbell Barton
2015-05-12Dyntopo PBVH build optimization:Antony Riakiotakis
Optimize the full rebuild case for now (though same code can be adapted to partial redraws) Main changes here: * Calculate bounding centroid for faces only once (instead of every intermediate node) * Faces do not get added to GSets immediately, instead we track a face array which has faces that belong in a node in consecutive order. Nodes just keep accounting of start and length in the array. * Due to faces not being added to GSets, we can skip doing cleanup of GSets and readdition for each intermediate node and instead only add the faces to the final leafs node GSets when those nodes are created. Results: For a 1.9 million face test model, PBVH generation time (roughly measured by undoing) is dropped from 6 seconds to about 4 seconds. Still too high, but still a nice improvement. TODO: Thread some parts. Unfortunately threading the GSet assignment part might not help much since we'd need a lot of locking to avoid collisions with node assignments, especially for unique vertices.
2015-04-26Correct own error in recent sculpt changesCampbell Barton
mixed up squared nonsquared length, also remove invalid verify check.
2015-04-25Cleanup: use 8 space indent for multi-line argsCampbell Barton
2015-04-19disable verify from last commit (too slow)Campbell Barton
2015-04-19Dyntopo: USE_EDGEQUEUE_TAG broke even subdivCampbell Barton
While adding edges to the queue multiple times is redundant, walking over them is still needed.
2015-04-16Dyntopo: avoid redundant loop collapsing edgesCampbell Barton
2015-04-16Dyntopo: blend vertex normals when collapsingCampbell Barton
2015-04-15BMesh: dyntopo used lopsided normalsCampbell Barton
Normals from subdivided edges were only taken from the edges first vertex. Interpolate between the two to give more even results.
2015-04-15BMesh: avoid ghash lookups splitting the pbvhCampbell Barton
This isn't a bottleneck but may as well avoid the extra ghash overhead.
2015-04-14Dyntopo queue added the same edges multiple timesCampbell Barton
Use tagging to avoid re-evaluating the same edges while sculpting. While gives only minor speedup, it allows for changes to the queue without additional redundant checks.
2015-04-14BMesh: avoid customdata copy for new dyntopo vertsCampbell Barton
2015-04-14BMesh: avoid redundant face-exists check (dyntopo)Campbell Barton
2015-04-13BMesh: resolve skinny face artifacts /w dyntopoCampbell Barton
Dyntopo can currently create skinny faces, especially when the faces are much larger then the resolution. To get the old behavior, set debug value to 1234
2015-04-13error in last commitCampbell Barton
2015-04-13BMesh: diagram for dyntopo edge subdivCampbell Barton
2015-04-12Dyntopo: redundant length check subdividing edgesCampbell Barton