|
Blender V5.0
|
Functions | |
| pbvh::Tree & | pbvh_ensure (Depsgraph &depsgraph, Object &object) |
| pbvh::Tree * | pbvh_get (Object &object) |
| const pbvh::Tree * | pbvh_get (const Object &object) |
| pbvh::Tree & blender::bke::object::pbvh_ensure | ( | Depsgraph & | depsgraph, |
| Object & | object ) |
Definition at line 3017 of file paint.cc.
References BKE_object_get_mesh_deform_eval(), BLI_assert, SculptSession::bm, blender::bke::build_pbvh_for_dynamic_topology(), blender::bke::build_pbvh_from_ccg(), blender::bke::build_pbvh_from_regular_mesh(), Object::data, DEG_get_evaluated(), depsgraph, SculptSession::pbvh, pbvh_get(), and Mesh::runtime.
Referenced by blender::ed::sculpt_paint::hide::hide_show_all_exec(), blender::ed::sculpt_paint::hide::hide_show_begin(), blender::ed::sculpt_paint::hide::hide_show_masked_exec(), blender::ed::sculpt_paint::paint_cursor_sculpt_session_update_and_init(), blender::ed::sculpt_paint::color::sculpt_color_filter_init(), sculpt_update_object(), blender::ed::sculpt_paint::hide::visibility_filter_exec(), and blender::ed::sculpt_paint::hide::visibility_invert_exec().
| const pbvh::Tree * blender::bke::object::pbvh_get | ( | const Object & | object | ) |
| pbvh::Tree * blender::bke::object::pbvh_get | ( | Object & | object | ) |
Access the acceleration structure for ray-casting, nearest queries, and spatially contiguous mesh updates and drawing. The BVH tree is used by sculpt, vertex paint, and weight paint object modes. This just accesses the BVH, to ensure it's built, use pbvh_ensure.
Definition at line 3052 of file paint.cc.
References BLI_assert, and OB_MESH.
Referenced by blender::ed::sculpt_paint::face_set::active_face_set_get(), blender::ed::sculpt_paint::expand::active_face_set_id_get(), blender::ed::sculpt_paint::expand::any_nonzero_mask(), blender::ed::sculpt_paint::mask::apply_new_mask_bmesh(), blender::ed::sculpt_paint::mask::apply_new_mask_grids(), blender::ed::sculpt_paint::mask::apply_new_mask_mesh(), blender::ed::sculpt_paint::average_mask_border_position(), blender::ed::sculpt_paint::average_unmasked_position(), BKE_pbvh_get_grid_num_faces(), BKE_pbvh_get_grid_num_verts(), BKE_pbvh_sync_visibility_from_verts(), BKE_sculpt_update_object_before_eval(), BKE_sculptsession_use_pbvh_draw(), blender::ed::sculpt_paint::smooth::blur_geometry_data_array(), blender::ed::sculpt_paint::undo::bmesh_restore_generic(), blender::ed::sculpt_paint::expand::boundary_from_enabled(), blender::ed::sculpt_paint::cloth::brush_affected_nodes_gather(), blender::ed::sculpt_paint::brush_delta_update(), blender::bke::pbvh::build_pixels(), blender::ed::sculpt_paint::filter::cache_init(), blender::bke::pbvh::cache_source_get(), blender::ed::sculpt_paint::calc_area_center(), blender::ed::sculpt_paint::calc_area_normal(), blender::ed::sculpt_paint::calc_area_normal_and_center(), blender::ed::sculpt_paint::pose::calc_average_face_set_center(), blender::ed::sculpt_paint::calc_brush_node_mask(), blender::ed::sculpt_paint::auto_mask::Cache::calc_cavity_factor(), blender::ed::sculpt_paint::cloth::calc_constraint_factors(), blender::ed::sculpt_paint::filter::calc_enhance_details_filter(), blender::ed::sculpt_paint::filter::calc_erase_displacement_filter(), blender::ed::sculpt_paint::expand::calc_falloff_from_vert_and_symmetry(), blender::ed::sculpt_paint::filter::calc_inflate_filter(), blender::draw::pbvh::calc_material_indices(), blender::ed::sculpt_paint::brushes::clay_strips::calc_node_mask(), blender::ed::sculpt_paint::brushes::plane::calc_node_mask(), blender::ed::sculpt_paint::pose::calc_pose_data(), blender::ed::sculpt_paint::filter::calc_random_filter(), blender::ed::sculpt_paint::filter::calc_relax_face_sets_filter(), blender::ed::sculpt_paint::filter::calc_relax_filter(), blender::ed::sculpt_paint::filter::calc_scale_filter(), blender::ed::sculpt_paint::filter::calc_sharpen_filter(), blender::ed::sculpt_paint::filter::calc_smooth_filter(), blender::ed::sculpt_paint::calc_smooth_translations(), blender::ed::sculpt_paint::filter::calc_sphere_filter(), blender::ed::sculpt_paint::filter::calc_surface_smooth_filter(), blender::ed::sculpt_paint::expand::calc_topology_falloff_from_verts(), blender::ed::sculpt_paint::islands::calc_topology_islands_bmesh(), blender::draw::pbvh::calc_use_flat_layout(), calculate_average_weight(), blender::ed::sculpt_paint::islands::calculate_cache(), blender::ed::sculpt_paint::trim::can_exec(), blender::ed::sculpt_paint::cancel_modal_transform(), blender::ed::sculpt_paint::face_set::change_visibility_exec(), blender::ed::sculpt_paint::face_set::clear_face_sets(), blender::ed::sculpt_paint::cloth::cloth_brush_apply_brush_forces(), blender::ed::sculpt_paint::cloth::cloth_sim_initialize_default_node_state(), blender::ed::sculpt_paint::cloth::copy_normals_to_array(), blender::ed::sculpt_paint::cloth::copy_positions_to_array(), blender::ed::sculpt_paint::face_set::create_op_exec(), blender::ed::sculpt_paint::cursor_geometry_info_update(), blender::ed::sculpt_paint::boundary::data_init(), blender::ed::sculpt_paint::expand::diagonals_falloff_create(), blender::ed::sculpt_paint::boundary::do_bend_brush(), blender::ed::sculpt_paint::brushes::do_bmesh_topology_rake_brush(), blender::ed::sculpt_paint::boundary::do_boundary_brush(), blender::ed::sculpt_paint::do_brush_action(), blender::ed::sculpt_paint::brushes::do_clay_brush(), blender::ed::sculpt_paint::brushes::do_clay_strips_brush(), blender::ed::sculpt_paint::brushes::do_clay_thumb_brush(), blender::ed::sculpt_paint::brushes::do_displacement_eraser_brush(), blender::ed::sculpt_paint::brushes::do_displacement_smear_brush(), blender::ed::sculpt_paint::brushes::do_draw_face_sets_brush(), blender::ed::sculpt_paint::brushes::do_draw_vector_displacement_brush(), blender::ed::sculpt_paint::brushes::do_elastic_deform_brush(), blender::ed::sculpt_paint::brushes::do_enhance_details_brush(), blender::ed::sculpt_paint::boundary::do_grab_brush(), blender::ed::sculpt_paint::brushes::do_grab_brush(), blender::ed::sculpt_paint::boundary::do_inflate_brush(), blender::ed::sculpt_paint::brushes::do_inflate_brush(), blender::ed::sculpt_paint::brushes::do_layer_brush(), blender::ed::sculpt_paint::brushes::do_mask_brush(), blender::ed::sculpt_paint::brushes::do_multiplane_scrape_brush(), blender::ed::sculpt_paint::color::do_paint_brush(), blender::ed::sculpt_paint::paint::image::do_paint_pixels(), blender::ed::sculpt_paint::brushes::do_pinch_brush(), blender::ed::sculpt_paint::brushes::do_plane_brush(), blender::ed::sculpt_paint::pose::do_pose_brush(), blender::ed::sculpt_paint::brushes::do_relax_face_sets_brush(), blender::ed::sculpt_paint::brushes::do_rotate_brush(), blender::ed::sculpt_paint::cloth::do_simulation_step(), blender::ed::sculpt_paint::boundary::do_slide_brush(), blender::ed::sculpt_paint::color::do_smear_brush(), blender::ed::sculpt_paint::boundary::do_smooth_brush(), blender::ed::sculpt_paint::brushes::do_smooth_brush(), blender::ed::sculpt_paint::brushes::do_smooth_mask_brush(), blender::ed::sculpt_paint::brushes::do_snake_hook_brush(), blender::ed::sculpt_paint::brushes::do_surface_smooth_brush(), blender::ed::sculpt_paint::brushes::do_thumb_brush(), blender::ed::sculpt_paint::brushes::do_topology_relax_brush(), blender::ed::sculpt_paint::brushes::do_topology_slide_brush(), blender::ed::sculpt_paint::boundary::do_twist_brush(), do_wpaint_brush_blur(), do_wpaint_brush_draw(), do_wpaint_brush_smear(), blender::draw::DRW_mesh_batch_cache_create_requested(), blender::ed::sculpt_paint::mask::duplicate_mask(), blender::ed::sculpt_paint::dynamic_topology_update(), blender::ed::sculpt_paint::face_set::edit_fairing(), blender::ed::sculpt_paint::face_set::edit_grow_shrink(), blender::ed::sculpt_paint::face_set::edit_is_operation_valid(), blender::ed::sculpt_paint::face_set::edit_modify_coordinates(), blender::ed::sculpt_paint::expand::enabled_state_to_bitmap(), blender::draw::pbvh::DrawCacheImpl::ensure_lines_batches(), blender::draw::pbvh::DrawCacheImpl::ensure_material_indices(), blender::ed::sculpt_paint::cloth::ensure_nodes_constraints(), blender::draw::pbvh::DrawCacheImpl::ensure_tris_batches(), blender::ed::sculpt_paint::ensure_valid_pivot(), blender::draw::pbvh::ensure_vbos_allocated_bmesh(), blender::draw::pbvh::ensure_vbos_allocated_grids(), blender::draw::pbvh::ensure_vbos_allocated_mesh(), blender::ed::sculpt_paint::face_set::face_hide_update(), blender::bke::pbvh::face_normals_cache_eval(), blender::ed::sculpt_paint::expand::face_sets_update(), blender::ed::sculpt_paint::face_set::face_sets_update(), blender::ed::sculpt_paint::fake_neighbor_search(), blender::draw::pbvh::fill_face_sets_grids(), blender::ed::sculpt_paint::mask::fill_mask(), blender::ed::sculpt_paint::mask::fill_mask_bmesh(), blender::ed::sculpt_paint::mask::fill_mask_grids(), blender::ed::sculpt_paint::mask::fill_mask_mesh(), blender::draw::pbvh::fill_masks_grids(), blender::draw::pbvh::fill_normals_grids(), blender::draw::pbvh::fill_positions_grids(), blender::ed::sculpt_paint::auto_mask::fill_topology_automasking_factors(), blender::ed::sculpt_paint::face_set::find_next_available_id(), blender::ed::sculpt_paint::find_symm_verts(), blender::ed::sculpt_paint::find_symm_verts_bmesh(), blender::ed::sculpt_paint::find_symm_verts_grids(), blender::ed::sculpt_paint::find_symm_verts_mesh(), blender::ed::sculpt_paint::paint::image::fix_non_manifold_seam_bleeding(), blender::ed::sculpt_paint::flush_update_done(), blender::ed::sculpt_paint::flush_update_step(), blender::ed::sculpt_paint::expand::geodesics_from_state_boundary(), blender::ed::sculpt_paint::geometry_preview_lines_update(), blender::ed::sculpt_paint::face_set::gesture_apply_bmesh(), blender::ed::sculpt_paint::face_set::gesture_apply_for_symmetry_pass(), blender::ed::sculpt_paint::mask::gesture_apply_for_symmetry_pass(), blender::ed::sculpt_paint::project::gesture_apply_for_symmetry_pass(), blender::ed::sculpt_paint::face_set::gesture_apply_mesh(), blender::ed::sculpt_paint::trim::gesture_begin(), blender::ed::sculpt_paint::mask::gesture_end(), blender::ed::geometry::get_original_geometry_eval_copy(), blender::ed::sculpt_paint::hide::grid_hide_update(), blender::ed::sculpt_paint::hide::grids_show_all(), blender::ed::sculpt_paint::pose::grow_pose_factor(), blender::ed::sculpt_paint::hide::grow_shrink_visibility_grid(), blender::ed::sculpt_paint::hide::grow_shrink_visibility_mesh(), blender::ed::sculpt_paint::hide::hide_show_apply_for_symmetry_pass(), blender::ed::sculpt_paint::pose::ik_chain_init_face_sets(), blender::ed::sculpt_paint::pose::ik_chain_init_face_sets_fk(), blender::ed::sculpt_paint::pose::ik_chain_init_topology(), blender::ed::sculpt_paint::boundary::init_boundary_bmesh(), blender::ed::sculpt_paint::boundary::init_boundary_grids(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking(), blender::ed::sculpt_paint::boundary::init_boundary_mesh(), blender::ed::sculpt_paint::auto_mask::init_face_sets_masking(), blender::ed::sculpt_paint::expand::init_from_face_set_boundary(), blender::ed::sculpt_paint::mask::init_mask_grids(), blender::ed::sculpt_paint::face_set::init_op_exec(), blender::ed::sculpt_paint::mask::invert_mask(), blender::ed::sculpt_paint::mask::invert_mask_bmesh(), blender::ed::sculpt_paint::mask::invert_mask_grids(), blender::ed::sculpt_paint::hide::invert_visibility_bmesh(), blender::ed::sculpt_paint::hide::invert_visibility_grids(), blender::ed::sculpt_paint::hide::invert_visibility_mesh(), blender::ed::sculpt_paint::expand::is_face_in_active_component(), blender::ed::sculpt_paint::mask::mask_by_color_contiguous_mesh(), blender::ed::sculpt_paint::mask::mask_by_color_full_mesh(), blender::ed::sculpt_paint::mask::mask_from_boundary_exec(), blender::ed::sculpt_paint::mask::mask_from_cavity_exec(), blender::ed::sculpt_paint::filter::mesh_filter_sharpen_init(), blender::ed::sculpt_paint::hide::mesh_show_all(), blender::draw::overlay::Sculpts::mesh_sync(), multires_flush_sculpt_updates(), multires_stitch_grids(), blender::ed::sculpt_paint::no_multires_poll(), blender::ed::sculpt_paint::auto_mask::normal_occlusion_automasking_fill(), blender::ed::sculpt_paint::expand::normals_falloff_create(), blender::workbench::ObjectState::ObjectState(), blender::ed::sculpt_paint::brushes::offset_positions(), blender::ed::sculpt_paint::paint_cursor_draw_3d_view_brush_cursor_inactive(), blender::ed::sculpt_paint::hide::partialvis_update_bmesh_nodes(), pbvh_ensure(), blender::ed::sculpt_paint::pbvh_gather_cursor_update(), blender::ed::sculpt_paint::pbvh_gather_generic(), blender::ed::sculpt_paint::vwpaint::pbvh_gather_generic(), blender::ed::sculpt_paint::boundary::preview_data_init(), blender::ed::sculpt_paint::undo::push_begin_ex(), blender::ed::sculpt_paint::undo::push_node(), blender::ed::sculpt_paint::undo::push_nodes(), blender::ed::sculpt_paint::face_set::randomize_colors_exec(), blender::ed::sculpt_paint::raycast_init(), blender::ed::sculpt_paint::expand::reposition_pivot(), blender::ed::sculpt_paint::expand::restore_color_data(), blender::ed::sculpt_paint::undo::restore_color_from_undo_step(), blender::ed::sculpt_paint::expand::restore_face_set_data(), blender::ed::sculpt_paint::undo::restore_face_set_from_undo_step(), blender::ed::sculpt_paint::undo::restore_from_undo_step(), blender::ed::sculpt_paint::undo::restore_list(), blender::ed::sculpt_paint::undo::restore_mask_from_undo_step(), blender::ed::sculpt_paint::undo::restore_position_from_undo_step(), blender::ed::sculpt_paint::expand::resursion_step_add(), blender::ed::sculpt_paint::dyntopo::sample_detail(), blender::ed::sculpt_paint::dyntopo::sample_detail_dyntopo(), blender::ed::sculpt_paint::brushes::sample_surface(), blender::draw::sculpt_batches_get_ex(), blender::ed::sculpt_paint::sculpt_brush_stroke_invoke(), blender::ed::sculpt_paint::cloth::sculpt_cloth_filter_modal(), blender::ed::sculpt_paint::color::sculpt_color_filter_apply(), blender::ed::sculpt_paint::color::sculpt_color_presmooth_init(), blender::ed::sculpt_paint::dyntopo::sculpt_detail_flood_fill_exec(), SCULPT_do_paint_brush_image(), blender::ed::sculpt_paint::expand::sculpt_expand_invoke(), blender::ed::sculpt_paint::sculpt_find_nearest_to_ray_cb(), blender::ed::sculpt_paint::sculpt_geometry_preview_lines_draw(), blender::ed::sculpt_paint::mask::sculpt_mask_filter_exec(), blender::ed::sculpt_paint::mask::sculpt_mask_init_exec(), blender::ed::sculpt_paint::filter::sculpt_mesh_filter_apply(), blender::ed::sculpt_paint::filter::sculpt_mesh_filter_cancel(), blender::ed::sculpt_paint::filter::sculpt_mesh_filter_start(), blender::ed::sculpt_paint::sculpt_needs_connectivity_info(), blender::ed::sculpt_paint::sculpt_raycast_cb(), blender::ed::sculpt_paint::sculpt_transform_all_vertices(), SCULPT_vertex_count_get(), blender::ed::sculpt_paint::set_persistent_base_exec(), blender::ed::sculpt_paint::face_set::show_all(), blender::ed::sculpt_paint::cloth::sim_activate_nodes(), blender::ed::sculpt_paint::expand::snap_init_from_enabled(), blender::ed::sculpt_paint::expand::spherical_falloff_create(), stats_object_sculpt(), blender::ed::sculpt_paint::store_mesh_from_eval(), blender::ed::sculpt_paint::stroke_get_location_bvh_ex(), blender::ed::sculpt_paint::dyntopo::stroke_is_dyntopo(), blender::ed::sculpt_paint::symmetrize_exec(), blender::ed::sculpt_paint::hide::sync_all_from_faces(), blender::ed::sculpt_paint::tag_mesh_positions_changed(), transform_active_color(), blender::ed::sculpt_paint::transform_radius_elastic(), blender::ed::sculpt_paint::mask::try_remove_mask_mesh(), blender::ed::sculpt_paint::expand::undo_push(), blender::draw::Manager::unique_handle_for_sculpt(), blender::ed::sculpt_paint::gesture::update_affected_nodes_by_clip_planes(), blender::ed::sculpt_paint::gesture::update_affected_nodes_by_line_plane(), blender::ed::sculpt_paint::vwpaint::update_cache_variants(), blender::draw::pbvh::update_face_sets_bmesh(), blender::draw::pbvh::update_face_sets_mesh(), blender::ed::sculpt_paint::expand::update_for_vert(), blender::draw::pbvh::update_generic_attribute_bmesh(), blender::draw::pbvh::update_generic_attribute_mesh(), blender::ed::sculpt_paint::mask::update_mask_mesh(), blender::draw::pbvh::update_masks_bmesh(), blender::draw::pbvh::update_masks_mesh(), blender::draw::pbvh::update_normals_bmesh(), blender::draw::pbvh::update_normals_mesh(), blender::draw::pbvh::update_positions_bmesh(), blender::draw::pbvh::update_positions_mesh(), blender::ed::sculpt_paint::hide::update_undo_state(), blender::ed::sculpt_paint::hide::vert_hide_update(), blender::bke::pbvh::vert_normals_cache_eval(), blender::bke::pbvh::vert_positions_eval(), blender::bke::pbvh::vert_positions_eval_for_write(), blender::ed::sculpt_paint::vert_positions_for_grab_active_get(), blender::ed::sculpt_paint::vert_random_access_ensure(), blender::ed::sculpt_paint::expand::vert_to_face_falloff(), vertex_color_set_exec(), blender::ed::sculpt_paint::vertex_is_occluded(), vpaint_do_paint(), blender::ed::sculpt_paint::expand::write_mask_data(), and blender::ed::sculpt_paint::mask::write_mask_mesh().