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
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2018-12-10 17:29:04 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-12-10 21:02:17 +0300
commitf7b558cbdc80b9ff45b150605410beaf5c74f158 (patch)
tree286943c49b81bd4dea7c564a471acedf76ea50e9 /source/blender/draw/intern/draw_cache.c
parentae1f563899de458b94d315823fd077ea4002dd86 (diff)
DRW: Batch Cache: Mesh: Port edit mesh batches to batch request method
This also do some renaming/cleanups.
Diffstat (limited to 'source/blender/draw/intern/draw_cache.c')
-rw-r--r--source/blender/draw/intern/draw_cache.c41
1 files changed, 8 insertions, 33 deletions
diff --git a/source/blender/draw/intern/draw_cache.c b/source/blender/draw/intern/draw_cache.c
index 2d047226b07..39e4ecf0520 100644
--- a/source/blender/draw/intern/draw_cache.c
+++ b/source/blender/draw/intern/draw_cache.c
@@ -2998,40 +2998,13 @@ GPUBatch *DRW_cache_mesh_surface_overlay_get(Object *ob)
return DRW_mesh_batch_cache_get_all_triangles(me);
}
-void DRW_cache_mesh_wire_overlay_get(
- Object *ob,
- GPUBatch **r_tris, GPUBatch **r_ledges, GPUBatch **r_lverts)
-{
- BLI_assert(ob->type == OB_MESH);
-
- Mesh *me = ob->data;
-
- *r_tris = DRW_mesh_batch_cache_get_overlay_triangles(me);
- *r_ledges = DRW_mesh_batch_cache_get_overlay_loose_edges(me);
- *r_lverts = DRW_mesh_batch_cache_get_overlay_loose_verts(me);
-}
-
-void DRW_cache_mesh_normals_overlay_get(
- Object *ob,
- GPUBatch **r_tris, GPUBatch **r_tris_lnor, GPUBatch **r_ledges, GPUBatch **r_lverts)
-{
- BLI_assert(ob->type == OB_MESH);
-
- Mesh *me = ob->data;
-
- *r_tris = DRW_mesh_batch_cache_get_overlay_triangles_nor(me);
- *r_tris_lnor = DRW_mesh_batch_cache_get_overlay_triangles_lnor(me);
- *r_ledges = DRW_mesh_batch_cache_get_overlay_loose_edges_nor(me);
- *r_lverts = DRW_mesh_batch_cache_get_overlay_loose_verts(me);
-}
-
GPUBatch *DRW_cache_face_centers_get(Object *ob)
{
BLI_assert(ob->type == OB_MESH);
Mesh *me = ob->data;
- return DRW_mesh_batch_cache_get_overlay_facedots(me);
+ return DRW_mesh_batch_cache_get_edit_facedots(me);
}
GPUBatch *DRW_cache_mesh_wire_outline_get(Object *ob)
@@ -3238,7 +3211,7 @@ GPUBatch *DRW_cache_curve_edge_overlay_get(Object *ob)
BLI_assert(ELEM(ob->type, OB_CURVE, OB_SURF));
struct Curve *cu = ob->data;
- return DRW_curve_batch_cache_get_overlay_edges(cu);
+ return DRW_curve_batch_cache_get_edit_edges(cu);
}
GPUBatch *DRW_cache_curve_vert_overlay_get(Object *ob, bool handles)
@@ -3246,7 +3219,7 @@ GPUBatch *DRW_cache_curve_vert_overlay_get(Object *ob, bool handles)
BLI_assert(ELEM(ob->type, OB_CURVE, OB_SURF));
struct Curve *cu = ob->data;
- return DRW_curve_batch_cache_get_overlay_verts(cu, handles);
+ return DRW_curve_batch_cache_get_edit_verts(cu, handles);
}
GPUBatch *DRW_cache_curve_surface_get(Object *ob)
@@ -3352,14 +3325,14 @@ GPUBatch *DRW_cache_text_cursor_overlay_get(Object *ob)
{
BLI_assert(ob->type == OB_FONT);
struct Curve *cu = ob->data;
- return DRW_curve_batch_cache_get_overlay_cursor(cu);
+ return DRW_curve_batch_cache_get_edit_cursor(cu);
}
GPUBatch *DRW_cache_text_select_overlay_get(Object *ob)
{
BLI_assert(ob->type == OB_FONT);
struct Curve *cu = ob->data;
- return DRW_curve_batch_cache_get_overlay_select(cu);
+ return DRW_curve_batch_cache_get_edit_select(cu);
}
/** \} */
@@ -3429,7 +3402,7 @@ GPUBatch *DRW_cache_lattice_vert_overlay_get(Object *ob)
BLI_assert(ob->type == OB_LATTICE);
struct Lattice *lt = ob->data;
- return DRW_lattice_batch_cache_get_overlay_verts(lt);
+ return DRW_lattice_batch_cache_get_edit_verts(lt);
}
/** \} */
@@ -3758,6 +3731,8 @@ void DRW_vbo_request(GPUBatch *batch, GPUVertBuf **vbo)
batch->verts[0] = *vbo;
}
else {
+ /* HACK: bypass assert */
+ (*vbo)->vertex_len = batch->verts[0]->vertex_len;
GPU_batch_vertbuf_add(batch, *vbo);
}
}