|
Blender V5.0
|
#include "MEM_guardedalloc.h"#include "BLI_array_utils.hh"#include "BLI_math_base.h"#include "BLI_utildefines.h"#include "gpu_backend.hh"#include "GPU_index_buffer.hh"#include "GPU_capabilities.hh"#include "GPU_compute.hh"#include "GPU_platform.hh"#include "GPU_state.hh"#include <algorithm>#include <cstring>Go to the source code of this file.
Namespaces | |
| namespace | blender |
| namespace | blender::gpu |
GPU element list (AKA index buffer)
Definition in file gpu_index_buffer.cc.
| void GPU_indexbuf_add_generic_vert | ( | GPUIndexBufBuilder * | builder, |
| uint | v ) |
Definition at line 108 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, GPUIndexBufBuilder::max_index_len, and v.
Referenced by blender::draw::curve_create_curves_lines(), GPU_indexbuf_add_line_adj_verts(), GPU_indexbuf_add_line_verts(), GPU_indexbuf_add_point_vert(), GPU_indexbuf_add_tri_verts(), blender::draw::particle_batch_cache_fill_segments(), blender::draw::particle_batch_cache_fill_segments_edit(), and pygpu_IndexBuf__tp_new().
| void GPU_indexbuf_add_line_adj_verts | ( | GPUIndexBufBuilder * | builder, |
| uint | v1, | ||
| uint | v2, | ||
| uint | v3, | ||
| uint | v4 ) |
Definition at line 149 of file gpu_index_buffer.cc.
References BLI_assert, GPU_indexbuf_add_generic_vert(), GPU_PRIM_LINES_ADJ, GPUIndexBufBuilder::prim_type, and v2.
Referenced by blender::draw::create_lines_for_remaining_edges(), blender::draw::lines_adjacency_triangle(), and blender::draw::overlay::ShapeCache::ShapeCache().
| void GPU_indexbuf_add_line_verts | ( | GPUIndexBufBuilder * | builder, |
| uint | v1, | ||
| uint | v2 ) |
Definition at line 132 of file gpu_index_buffer.cc.
References BLI_assert, GPU_indexbuf_add_generic_vert(), GPU_PRIM_LINES, GPUIndexBufBuilder::prim_type, and v2.
Referenced by blender::draw::curve_create_edit_data_and_handles(), and blender::draw::drw_volume_wireframe_cb().
| void GPU_indexbuf_add_point_vert | ( | GPUIndexBufBuilder * | builder, |
| uint | v ) |
Definition at line 126 of file gpu_index_buffer.cc.
References BLI_assert, GPU_indexbuf_add_generic_vert(), GPU_PRIM_POINTS, GPUIndexBufBuilder::prim_type, and v.
Referenced by blender::draw::curve_create_edit_data_and_handles(), blender::draw::extract_edituv_points_bm(), blender::draw::extract_edituv_points_mesh(), blender::draw::extract_edituv_points_subdiv_bm(), and blender::draw::extract_edituv_points_subdiv_mesh().
| void GPU_indexbuf_add_primitive_restart | ( | GPUIndexBufBuilder * | builder | ) |
Definition at line 118 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::max_index_len, GPUIndexBufBuilder::restart_index_value, and GPUIndexBufBuilder::uses_restart_indices.
Referenced by blender::draw::curve_create_curves_lines(), blender::draw::particle_batch_cache_fill_segments(), and blender::draw::particle_batch_cache_fill_segments_edit().
| void GPU_indexbuf_add_tri_verts | ( | GPUIndexBufBuilder * | builder, |
| uint | v1, | ||
| uint | v2, | ||
| uint | v3 ) |
Definition at line 140 of file gpu_index_buffer.cc.
References BLI_assert, GPU_indexbuf_add_generic_vert(), GPU_PRIM_TRIS, GPUIndexBufBuilder::prim_type, and v2.
Referenced by blender::ed::vse::create_quads_index_buffer(), blender::draw::drw_volume_selection_surface_cb(), GPU_batch_tris_from_poly_2d_encoded(), GPU_batch_unit_cube(), blender::ed::space_node::nodesocket_batch_init(), ui_batch_roundbox_widget_get(), wm_gizmo_geometryinfo_draw(), and wm_xr_controller_model_batch_create().
| void GPU_indexbuf_bind_as_ssbo | ( | blender::gpu::IndexBuf * | elem, |
| int | binding ) |
Definition at line 534 of file gpu_index_buffer.cc.
References blender::gpu::IndexBuf::bind_as_ssbo().
Referenced by blender::draw::draw_subdiv_build_fdots_buffers(), blender::draw::draw_subdiv_build_lines_buffer(), blender::draw::draw_subdiv_build_lines_loose_buffer(), blender::draw::draw_subdiv_build_tris_buffer(), blender::draw::command::ResourceBind::execute(), GPU_batch_bind_as_resources(), GPU_indexbuf_build_curves_on_device(), and blender::gpu::tests::test_shader_compute_ibo().
| IndexBuf * GPU_indexbuf_build | ( | GPUIndexBufBuilder * | builder | ) |
Definition at line 426 of file gpu_index_buffer.cc.
References GPU_indexbuf_build_in_place(), and GPU_indexbuf_calloc().
Referenced by blender::ed::vse::create_quads_index_buffer(), blender::draw::drw_volume_selection_surface_cb(), blender::draw::drw_volume_wireframe_cb(), blender::draw::extract_edituv_points(), blender::draw::extract_edituv_points_subdiv(), blender::draw::extract_lines_adjacency(), blender::draw::extract_lines_adjacency_subdiv(), GPU_batch_tris_from_poly_2d_encoded(), GPU_batch_unit_cube(), blender::ed::space_node::nodesocket_batch_init(), blender::draw::particle_batch_cache_ensure_edit_pos_and_seg(), blender::draw::particle_batch_cache_ensure_pos_and_seg(), pygpu_IndexBuf__tp_new(), blender::draw::overlay::ShapeCache::ShapeCache(), blender::gpu::tests::test_index_buffer_subbuilders(), ui_batch_roundbox_widget_get(), wm_gizmo_geometryinfo_draw(), and wm_xr_controller_model_batch_create().
| IndexBuf * GPU_indexbuf_build_curves_on_device | ( | GPUPrimType | prim_type, |
| uint | curves_num, | ||
| uint | verts_per_curve ) |
Definition at line 235 of file gpu_index_buffer.cc.
References ceil, ELEM, GPU_BARRIER_ELEMENT_ARRAY, GPU_compute_dispatch(), GPU_indexbuf_bind_as_ssbo(), GPU_indexbuf_build_on_device(), GPU_max_work_group_count(), GPU_memory_barrier(), GPU_PRIM_LINE_STRIP, GPU_PRIM_LINES, GPU_PRIM_TRI_STRIP, GPU_PRIM_TRIS, GPU_shader_bind(), GPU_shader_get_builtin_shader(), GPU_shader_get_ssbo_binding(), GPU_SHADER_INDEXBUF_LINES, GPU_SHADER_INDEXBUF_POINTS, GPU_SHADER_INDEXBUF_TRIS, GPU_shader_unbind(), GPU_shader_uniform_1i(), min_uu(), and sqrt.
| IndexBuf * GPU_indexbuf_build_ex | ( | GPUIndexBufBuilder * | builder, |
| const uint | index_min, | ||
| const uint | index_max, | ||
| const bool | uses_restart_indices ) |
Definition at line 472 of file gpu_index_buffer.cc.
References GPU_indexbuf_build_in_place_ex(), and GPU_indexbuf_calloc().
Referenced by blender::draw::build_tris_from_subdiv_quad_selection(), blender::draw::pbvh::create_lines_index_bmesh(), blender::draw::pbvh::create_lines_index_faces(), blender::draw::pbvh::create_lines_index_grids(), blender::draw::pbvh::create_tri_index_mesh(), blender::draw::extract_edituv_face_dots_bm(), blender::draw::extract_edituv_face_dots_mesh(), blender::draw::extract_edituv_lines_subdiv_bm(), blender::draw::extract_edituv_tris_bm(), blender::draw::extract_edituv_tris_mesh(), blender::draw::extract_lines_bm(), blender::draw::extract_lines_mesh(), blender::draw::extract_lines_paint_mask_subdiv(), blender::draw::extract_points_bm(), blender::draw::extract_points_subdiv_bm(), blender::draw::extract_points_subdiv_mesh(), blender::draw::grease_pencil_edit_batch_ensure(), blender::draw::grease_pencil_geom_batch_ensure(), blender::draw::grease_pencil_weight_batch_ensure(), blender::draw::index_mask_to_ibo(), and blender::draw::lattice_batch_cache_get_edges().
| IndexBuf * GPU_indexbuf_build_from_memory | ( | GPUPrimType | prim_type, |
| const uint32_t * | data, | ||
| int32_t | data_len, | ||
| int32_t | index_min, | ||
| int32_t | index_max, | ||
| bool | uses_restart_indices ) |
Fill an IBO by uploading the referenced data directly to the GPU, bypassing the separate storage in the IBO. This should be used whenever the equivalent indices already exist in a contiguous array on the CPU.
Definition at line 482 of file gpu_index_buffer.cc.
References blender::array_utils::copy(), copy(), data, GPU_indexbuf_calloc(), blender::gpu::indices_per_primitive(), MEM_malloc_arrayN(), and blender::threading::memory_bandwidth_bound_task().
Referenced by blender::draw::extract_edituv_tris_mesh(), and blender::draw::extract_tris_mesh().
| void GPU_indexbuf_build_in_place | ( | GPUIndexBufBuilder * | builder, |
| IndexBuf * | elem ) |
Definition at line 440 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, blender::gpu::IndexBuf::init(), GPUIndexBufBuilder::prim_type, and GPUIndexBufBuilder::uses_restart_indices.
Referenced by blender::draw::pbvh::create_tri_index_grids(), blender::draw::curve_create_curves_lines(), blender::draw::curve_create_edit_data_and_handles(), blender::draw::extract_edituv_lines_bm(), blender::draw::extract_edituv_lines_mesh(), blender::draw::extract_edituv_lines_subdiv_mesh(), and GPU_indexbuf_build().
| void GPU_indexbuf_build_in_place_ex | ( | GPUIndexBufBuilder * | builder, |
| const uint | index_min, | ||
| const uint | index_max, | ||
| const bool | uses_restart_indices, | ||
| IndexBuf * | elem ) |
Definition at line 454 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, blender::gpu::IndexBuf::init(), GPUIndexBufBuilder::max_index_len, and GPUIndexBufBuilder::prim_type.
Referenced by blender::draw::calc_edit_handles_ibo(), blender::draw::create_lines_ibo_no_cyclic(), blender::draw::create_lines_ibo_with_cyclic(), GPU_indexbuf_build_ex(), blender::draw::index_mask_to_ibo(), and blender::draw::pointcloud_extract_indices().
Definition at line 82 of file gpu_index_buffer.cc.
References GPU_indexbuf_calloc(), and GPU_indexbuf_init_build_on_device().
Referenced by blender::draw::extract_face_dots_subdiv(), blender::draw::extract_lines_subdiv(), blender::draw::extract_tris_subdiv(), GPU_indexbuf_build_curves_on_device(), and blender::gpu::tests::test_shader_compute_ibo().
| IndexBuf * GPU_indexbuf_calloc | ( | ) |
Definition at line 421 of file gpu_index_buffer.cc.
References blender::gpu::GPUBackend::get(), and blender::gpu::GPUBackend::indexbuf_alloc().
Referenced by blender::draw::pbvh::create_tri_index_grids(), DRW_ibo_request(), blender::draw::extract_edituv_lines_bm(), blender::draw::extract_edituv_lines_mesh(), blender::draw::extract_edituv_lines_subdiv_mesh(), GPU_indexbuf_build(), GPU_indexbuf_build_ex(), GPU_indexbuf_build_from_memory(), GPU_indexbuf_build_on_device(), and GPU_indexbuf_create_subrange().
Definition at line 433 of file gpu_index_buffer.cc.
References GPU_indexbuf_calloc(), GPU_indexbuf_create_subrange_in_place(), and length().
Referenced by blender::draw::create_material_subranges(), blender::draw::extract_lines_bm(), blender::draw::extract_lines_subdiv(), and blender::draw::extract_tris_subdiv().
| void GPU_indexbuf_create_subrange_in_place | ( | IndexBuf * | elem, |
| IndexBuf * | elem_src, | ||
| uint | start, | ||
| uint | length ) |
Definition at line 501 of file gpu_index_buffer.cc.
References blender::gpu::IndexBuf::init_subrange(), and length().
Referenced by GPU_indexbuf_create_subrange().
| void GPU_indexbuf_discard | ( | IndexBuf * | elem | ) |
Definition at line 514 of file gpu_index_buffer.cc.
Referenced by GPU_batch_clear(), GPU_batch_elembuf_set(), blender::gpu::IndexBufDeleter::operator()(), pygpu_IndexBuf__tp_dealloc(), and blender::gpu::tests::test_shader_compute_ibo().
| blender::MutableSpan< uint32_t > GPU_indexbuf_get_data | ( | GPUIndexBufBuilder * | builder | ) |
Definition at line 95 of file gpu_index_buffer.cc.
References GPUIndexBufBuilder::data, and GPUIndexBufBuilder::max_index_len.
Referenced by blender::draw::build_tris_from_subdiv_quad_selection(), blender::draw::calc_edit_handles_ibo(), blender::draw::create_lines_ibo_no_cyclic(), blender::draw::create_lines_ibo_with_cyclic(), blender::draw::pbvh::create_lines_index_bmesh(), blender::draw::pbvh::create_lines_index_faces(), blender::draw::pbvh::create_lines_index_grids(), blender::draw::pbvh::create_tri_index_grids(), blender::draw::pbvh::create_tri_index_mesh(), blender::draw::extract_edituv_face_dots_bm(), blender::draw::extract_edituv_face_dots_mesh(), blender::draw::extract_edituv_lines_bm(), blender::draw::extract_edituv_lines_mesh(), blender::draw::extract_edituv_lines_subdiv_bm(), blender::draw::extract_edituv_lines_subdiv_mesh(), blender::draw::extract_edituv_tris_bm(), blender::draw::extract_edituv_tris_mesh(), blender::draw::extract_lines_bm(), blender::draw::extract_lines_mesh(), blender::draw::extract_lines_paint_mask(), blender::draw::extract_lines_paint_mask_subdiv(), blender::draw::extract_points_bm(), blender::draw::extract_points_mesh(), blender::draw::extract_points_subdiv_bm(), blender::draw::extract_points_subdiv_mesh(), blender::draw::extract_tris_bmesh(), blender::draw::extract_tris_mesh(), blender::draw::grease_pencil_edit_batch_ensure(), blender::draw::grease_pencil_geom_batch_ensure(), blender::draw::grease_pencil_weight_batch_ensure(), blender::draw::grease_pencil_wire_batch_ensure(), blender::draw::index_mask_to_ibo(), blender::draw::index_mask_to_ibo(), blender::draw::lattice_batch_cache_get_edges(), and blender::draw::pointcloud_extract_indices().
| void GPU_indexbuf_init | ( | GPUIndexBufBuilder * | builder, |
| GPUPrimType | prim_type, | ||
| uint | prim_len, | ||
| uint | vertex_len ) |
Supports only GPU_PRIM_POINTS, GPU_PRIM_LINES and GPU_PRIM_TRIS.
Definition at line 72 of file gpu_index_buffer.cc.
References BLI_assert, GPU_indexbuf_init_ex(), and GPU_indexbuf_primitive_len().
Referenced by blender::draw::build_tris_from_subdiv_quad_selection(), blender::draw::calc_edit_handles_ibo(), blender::draw::create_lines_ibo_no_cyclic(), blender::draw::create_lines_ibo_with_cyclic(), blender::draw::pbvh::create_lines_index_bmesh(), blender::draw::pbvh::create_lines_index_faces(), blender::draw::pbvh::create_lines_index_grids(), blender::ed::vse::create_quads_index_buffer(), blender::draw::pbvh::create_tri_index_grids(), blender::draw::pbvh::create_tri_index_mesh(), blender::draw::curve_create_edit_data_and_handles(), blender::draw::drw_volume_selection_surface_cb(), blender::draw::drw_volume_wireframe_cb(), blender::draw::extract_edituv_face_dots_bm(), blender::draw::extract_edituv_face_dots_mesh(), blender::draw::extract_edituv_lines_bm(), blender::draw::extract_edituv_lines_mesh(), blender::draw::extract_edituv_lines_subdiv_bm(), blender::draw::extract_edituv_lines_subdiv_mesh(), blender::draw::extract_edituv_points(), blender::draw::extract_edituv_points_subdiv(), blender::draw::extract_edituv_tris_bm(), blender::draw::extract_edituv_tris_mesh(), blender::draw::extract_lines_adjacency(), blender::draw::extract_lines_adjacency_subdiv(), blender::draw::extract_lines_bm(), blender::draw::extract_lines_mesh(), blender::draw::extract_lines_paint_mask(), blender::draw::extract_lines_paint_mask_subdiv(), blender::draw::extract_points_bm(), blender::draw::extract_points_mesh(), blender::draw::extract_points_subdiv_bm(), blender::draw::extract_points_subdiv_mesh(), blender::draw::extract_tris_bmesh(), blender::draw::extract_tris_mesh(), GPU_batch_tris_from_poly_2d_encoded(), GPU_batch_unit_cube(), blender::draw::grease_pencil_edit_batch_ensure(), blender::draw::grease_pencil_geom_batch_ensure(), blender::draw::grease_pencil_weight_batch_ensure(), blender::draw::index_mask_to_ibo(), blender::draw::index_mask_to_ibo(), blender::draw::lattice_batch_cache_get_edges(), blender::ed::space_node::nodesocket_batch_init(), blender::draw::pointcloud_extract_indices(), pygpu_IndexBuf__tp_new(), blender::draw::overlay::ShapeCache::ShapeCache(), blender::gpu::tests::test_index_buffer_subbuilders(), ui_batch_roundbox_widget_get(), wm_gizmo_geometryinfo_draw(), and wm_xr_controller_model_batch_create().
Definition at line 89 of file gpu_index_buffer.cc.
References blender::gpu::IndexBuf::init_build_on_device().
Referenced by GPU_indexbuf_build_on_device().
| void GPU_indexbuf_init_ex | ( | GPUIndexBufBuilder * | builder, |
| GPUPrimType | prim_type, | ||
| uint | index_len, | ||
| uint | vertex_len ) |
Supports all primitive types.
Definition at line 36 of file gpu_index_buffer.cc.
References GPUIndexBufBuilder::data, GPU_BACKEND_METAL, GPU_DEVICE_ANY, GPU_DRIVER_ANY, GPU_OS_MAC, GPU_PRIM_POINTS, GPU_type_matches_ex(), GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, is_restart_compatible(), GPUIndexBufBuilder::max_allowed_index, GPUIndexBufBuilder::max_index_len, MEM_malloc_arrayN(), GPUIndexBufBuilder::prim_type, blender::gpu::RESTART_INDEX, GPUIndexBufBuilder::restart_index_value, UINT32_MAX, and GPUIndexBufBuilder::uses_restart_indices.
Referenced by blender::draw::curve_create_curves_lines(), GPU_indexbuf_init(), blender::draw::grease_pencil_edit_batch_ensure(), blender::draw::grease_pencil_weight_batch_ensure(), blender::draw::grease_pencil_wire_batch_ensure(), blender::draw::particle_batch_cache_ensure_edit_pos_and_seg(), and blender::draw::particle_batch_cache_ensure_pos_and_seg().
| bool GPU_indexbuf_is_init | ( | IndexBuf * | elem | ) |
Definition at line 519 of file gpu_index_buffer.cc.
References blender::gpu::IndexBuf::is_init().
Referenced by DRW_ibo_requested().
| void GPU_indexbuf_join | ( | GPUIndexBufBuilder * | builder_to, |
| const GPUIndexBufBuilder * | builder_from ) |
Definition at line 100 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, max_uu(), and min_uu().
Referenced by blender::gpu::tests::test_index_buffer_subbuilders().
| int GPU_indexbuf_primitive_len | ( | GPUPrimType | prim_type | ) |
Definition at line 524 of file gpu_index_buffer.cc.
References blender::gpu::indices_per_primitive().
Referenced by GPU_indexbuf_init(), blender::draw::pointcloud_extract_indices(), and pygpu_IndexBuf__tp_new().
| void GPU_indexbuf_read | ( | blender::gpu::IndexBuf * | elem, |
| uint32_t * | data ) |
(Download and) fill data with the contents of the index buffer.
NOTE: caller is responsible to reserve enough memory.
Definition at line 509 of file gpu_index_buffer.cc.
References data, and blender::gpu::IndexBuf::read().
Referenced by blender::gpu::tests::test_shader_compute_ibo().
| void GPU_indexbuf_set_line_restart | ( | GPUIndexBufBuilder * | builder, |
| uint | elem ) |
Definition at line 212 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPU_PRIM_LINES, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::max_index_len, GPUIndexBufBuilder::prim_type, GPUIndexBufBuilder::restart_index_value, and GPUIndexBufBuilder::uses_restart_indices.
| void GPU_indexbuf_set_line_verts | ( | GPUIndexBufBuilder * | builder, |
| uint | elem, | ||
| uint | v1, | ||
| uint | v2 ) |
Definition at line 170 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPU_PRIM_LINES, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, GPUIndexBufBuilder::max_index_len, GPUIndexBufBuilder::prim_type, and v2.
| void GPU_indexbuf_set_point_restart | ( | GPUIndexBufBuilder * | builder, |
| uint | elem ) |
Definition at line 203 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPU_PRIM_POINTS, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::prim_type, GPUIndexBufBuilder::restart_index_value, and GPUIndexBufBuilder::uses_restart_indices.
| void GPU_indexbuf_set_point_vert | ( | GPUIndexBufBuilder * | builder, |
| uint | elem, | ||
| uint | v1 ) |
Definition at line 160 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPU_PRIM_POINTS, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, and GPUIndexBufBuilder::prim_type.
Referenced by blender::gpu::tests::test_index_buffer_subbuilders().
| void GPU_indexbuf_set_tri_restart | ( | GPUIndexBufBuilder * | builder, |
| uint | elem ) |
Definition at line 223 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPU_PRIM_TRIS, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::max_index_len, GPUIndexBufBuilder::prim_type, GPUIndexBufBuilder::restart_index_value, and GPUIndexBufBuilder::uses_restart_indices.
| void GPU_indexbuf_set_tri_verts | ( | GPUIndexBufBuilder * | builder, |
| uint | elem, | ||
| uint | v1, | ||
| uint | v2, | ||
| uint | v3 ) |
Definition at line 185 of file gpu_index_buffer.cc.
References BLI_assert, GPUIndexBufBuilder::data, GPU_PRIM_TRIS, GPUIndexBufBuilder::index_len, GPUIndexBufBuilder::index_max, GPUIndexBufBuilder::index_min, GPUIndexBufBuilder::max_index_len, GPUIndexBufBuilder::prim_type, and v2.
Definition at line 539 of file gpu_index_buffer.cc.
References data, len, and blender::gpu::IndexBuf::update_sub().
| void GPU_indexbuf_use | ( | IndexBuf * | elem | ) |
Definition at line 529 of file gpu_index_buffer.cc.
References blender::gpu::IndexBuf::upload_data().