tornavis/source/blender/geometry
Hans Goudey e7339bdd5f Geometry: Use implicit sharing for deformed positions
Avoid copying the positions array into the evaluated edit hints array
that's used to support editing with deformed positions when there is
a topology-changing procedural operation. In a simple test in sculpt
mode with 706k curve points, memory usage went from 78 to 70 MB.

This adds more duplication would be ideal, mainly because retrieving
the data with write access and making implicit sharing info for arbitrary
arrays aren't abstracted by implicit sharing utilities. It may be possible
to improve both of those aspects, either now or in the future.

Pull Request: https://projects.blender.org/blender/blender/pulls/120146
2024-04-03 14:14:34 +02:00
..
intern Geometry: Use implicit sharing for deformed positions 2024-04-03 14:14:34 +02:00
CMakeLists.txt Curves: Add `simplify_curve_attribute` function 2024-03-26 15:28:11 +01:00
GEO_add_curves_on_mesh.hh Sculpt: Add interpolate radius option for curve radius 2024-02-27 18:22:03 +01:00
GEO_curve_constraints.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_extend_curves.hh Revert changes from main commits that were merged into blender-v4.1-release 2024-02-19 15:59:59 +01:00
GEO_fillet_curves.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_join_geometries.hh Cleanup: move join geometry functionality to separate file 2023-10-06 18:31:44 +02:00
GEO_mesh_boolean.hh Cleanup: spelling in comments 2024-03-21 10:02:53 +11:00
GEO_mesh_copy_selection.hh Cleanup: Use forward declarations to replace includes of BKE_attribute.hh 2023-12-20 13:25:28 -05:00
GEO_mesh_merge_by_distance.hh Mesh: Rename totvert, totedge, and totloop fields 2023-12-20 02:21:48 +01:00
GEO_mesh_primitive_cuboid.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_mesh_primitive_cylinder_cone.hh Cleanup: Use forward declarations to replace includes of BKE_attribute.hh 2023-12-20 13:25:28 -05:00
GEO_mesh_primitive_grid.hh Geometry: Move mesh primitives from nodes to geometry module 2023-09-11 22:49:41 +02:00
GEO_mesh_primitive_line.hh Geometry: Move mesh primitives from nodes to geometry module 2023-09-11 22:49:41 +02:00
GEO_mesh_primitive_uv_sphere.hh Geometry: Move mesh primitives from nodes to geometry module 2023-09-11 22:49:41 +02:00
GEO_mesh_selection.hh Refactor: GEO: Mesh selection header file 2023-11-25 13:41:17 +01:00
GEO_mesh_split_edges.hh Cleanup: Use forward declarations to replace includes of BKE_attribute.hh 2023-12-20 13:25:28 -05:00
GEO_mesh_to_curve.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_mesh_to_volume.hh Geometry Nodes: Add volume grid creation nodes 2024-02-28 22:15:10 +01:00
GEO_mix_geometries.hh Cleanup: merge simulation input and output nodes and extract mix geometries function 2024-02-01 11:16:29 +01:00
GEO_point_merge_by_distance.hh Cleanup: Use forward declarations to replace includes of BKE_attribute.hh 2023-12-20 13:25:28 -05:00
GEO_points_to_volume.hh Geometry Nodes: Add volume grid creation nodes 2024-02-28 22:15:10 +01:00
GEO_randomize.hh Cleanup: Use "vert" term consistently in mesh randomization debug code 2023-10-06 16:50:52 -04:00
GEO_realize_instances.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_reorder.hh Fix: build failure with WITH_UNITY_BUILD=OFF 2024-02-01 17:33:28 +02:00
GEO_resample_curves.hh Curves: Provide resample functions that don't depend on field evaluation 2024-02-29 12:51:15 +01:00
GEO_reverse_uv_sampler.hh Geometry: speedup reverse UV sampler 2024-02-29 16:42:36 +01:00
GEO_separate_geometry.hh Geometry Nodes: extract separate geometry code to separate file 2024-02-01 13:33:06 +01:00
GEO_set_curve_type.hh Revert changes from main commits that were merged into blender-v4.1-release 2024-02-19 15:59:59 +01:00
GEO_simplify_curves.hh Curves: Add `simplify_curve_attribute` function 2024-03-26 15:28:11 +01:00
GEO_smooth_curves.hh Cleanup: spelling in comments, remote debug print 2024-01-19 17:28:14 +11:00
GEO_subdivide_curves.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_transform.hh Geometry Nodes: extract geometry transform functions to separate file 2024-02-01 13:18:39 +01:00
GEO_trim_curves.hh License Headers: Set copyright to "Blender Authors", add AUTHORS 2023-08-16 00:20:26 +10:00
GEO_uv_pack.hh UV: restore axis alignment support for Smart UV Project 2024-01-10 12:31:38 +11:00
GEO_uv_parametrizer.hh Cleanup: default initialize members of ParamHandle 2023-11-24 19:13:51 +01:00