Blender Git Loki

Git Commits -> Revision f68493f

Revision f68493f by Joseph Eagar
October 19, 2020, 11:10 (GMT)
Little design study for new API to replace various pbvh/sculpt
iterators (uncomment PROXY_ADVANCED in BKE_pbvh to enable):
+ Same idea as existing pbvh proxies.
+ Based on "struct of arrays" approach.
+ New ProxyVeryArray structure holds all the coordinates,
normals, indices, neighbor references, color, mask, etc
data--basically everything in PBVHVertIter and SculptNeightborIter.
+ Only the desired data is stored. Client code can pass a mask
stating which data layers it wants; e.g. normals, coordiantes, etc.

There's a lot of advantages to this approach: simpler and more
maintainable code, possibility of SSE/opencl/cuda vectorization down
the line, etc.

More importantly for this branch, it should be a great profiling tool.
No more trying to figure out which bit of API cruft is causing the CPU
cache to go haywire. I can eliminate a lot of performance bugs and
concentrate on the ones related to DynTopo.

Commit Details:

Full Hash: f68493f5bee352d4a7feb90c2488a264607c84ac
Parent Commit: 9f004eb
Lines Changed: +605, -58

Tehnyt: Miika HämäläinenViimeksi p?ivitetty: 07.11.2014 14:18 MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021