2017-02-07 11:20:15 +01:00
|
|
|
/*
|
|
|
|
* Copyright 2016, Blender Foundation.
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU General Public License
|
|
|
|
* as published by the Free Software Foundation; either version 2
|
|
|
|
* of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License
|
|
|
|
* along with this program; if not, write to the Free Software Foundation,
|
|
|
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
*
|
|
|
|
* Contributor(s): Blender Institute
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
/** \file draw_cache.h
|
|
|
|
* \ingroup draw
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __DRAW_CACHE_H__
|
|
|
|
#define __DRAW_CACHE_H__
|
|
|
|
|
|
|
|
struct Batch;
|
|
|
|
struct Object;
|
|
|
|
|
|
|
|
void DRW_shape_cache_free(void);
|
|
|
|
|
|
|
|
/* Common Shapes */
|
|
|
|
struct Batch *DRW_cache_fullscreen_quad_get(void);
|
|
|
|
struct Batch *DRW_cache_single_vert_get(void);
|
2017-02-09 17:27:01 +01:00
|
|
|
struct Batch *DRW_cache_single_line_get(void);
|
2017-03-04 00:09:22 +01:00
|
|
|
struct Batch *DRW_cache_single_line_endpoints_get(void);
|
2017-04-10 22:22:37 +02:00
|
|
|
struct Batch *DRW_cache_screenspace_circle_get(void);
|
2017-02-07 11:20:15 +01:00
|
|
|
|
2017-04-21 02:18:14 +10:00
|
|
|
/* Common Object */
|
2017-04-28 23:04:29 +10:00
|
|
|
struct Batch *DRW_cache_object_wire_outline_get(struct Object *ob);
|
2017-04-21 02:18:14 +10:00
|
|
|
struct Batch *DRW_cache_object_surface_get(struct Object *ob);
|
2017-04-25 18:46:59 +02:00
|
|
|
struct Batch **DRW_cache_object_surface_material_get(struct Object *ob);
|
2017-04-21 02:18:14 +10:00
|
|
|
|
2017-02-07 11:20:15 +01:00
|
|
|
/* Empties */
|
|
|
|
struct Batch *DRW_cache_plain_axes_get(void);
|
2017-02-09 17:27:01 +01:00
|
|
|
struct Batch *DRW_cache_single_arrow_get(void);
|
2017-02-07 11:20:15 +01:00
|
|
|
struct Batch *DRW_cache_cube_get(void);
|
|
|
|
struct Batch *DRW_cache_circle_get(void);
|
2017-03-05 05:22:40 +01:00
|
|
|
struct Batch *DRW_cache_square_get(void);
|
2017-02-07 11:20:15 +01:00
|
|
|
struct Batch *DRW_cache_empty_sphere_get(void);
|
|
|
|
struct Batch *DRW_cache_empty_cone_get(void);
|
|
|
|
struct Batch *DRW_cache_arrows_get(void);
|
2017-02-15 02:54:52 +01:00
|
|
|
struct Batch *DRW_cache_axis_names_get(void);
|
2017-02-07 11:20:15 +01:00
|
|
|
|
2017-04-10 22:22:37 +02:00
|
|
|
/* Force Field */
|
|
|
|
struct Batch *DRW_cache_field_wind_get(void);
|
|
|
|
struct Batch *DRW_cache_field_force_get(void);
|
|
|
|
struct Batch *DRW_cache_field_vortex_get(void);
|
|
|
|
struct Batch *DRW_cache_field_tube_limit_get(void);
|
|
|
|
struct Batch *DRW_cache_field_cone_limit_get(void);
|
|
|
|
|
2017-02-07 11:20:15 +01:00
|
|
|
/* Lamps */
|
|
|
|
struct Batch *DRW_cache_lamp_get(void);
|
|
|
|
struct Batch *DRW_cache_lamp_sunrays_get(void);
|
2017-03-05 05:22:40 +01:00
|
|
|
struct Batch *DRW_cache_lamp_area_get(void);
|
|
|
|
struct Batch *DRW_cache_lamp_hemi_get(void);
|
|
|
|
struct Batch *DRW_cache_lamp_spot_get(void);
|
|
|
|
struct Batch *DRW_cache_lamp_spot_square_get(void);
|
2017-02-07 11:20:15 +01:00
|
|
|
|
2017-03-04 00:09:22 +01:00
|
|
|
/* Camera */
|
|
|
|
struct Batch *DRW_cache_camera_get(void);
|
|
|
|
struct Batch *DRW_cache_camera_tria_get(void);
|
|
|
|
|
2017-02-15 03:38:21 +01:00
|
|
|
/* Speaker */
|
|
|
|
struct Batch *DRW_cache_speaker_get(void);
|
|
|
|
|
2017-02-22 13:00:15 +01:00
|
|
|
/* Bones */
|
|
|
|
struct Batch *DRW_cache_bone_octahedral_get(void);
|
|
|
|
struct Batch *DRW_cache_bone_octahedral_wire_outline_get(void);
|
2017-05-03 08:34:24 +02:00
|
|
|
struct Batch *DRW_cache_bone_box_get(void);
|
|
|
|
struct Batch *DRW_cache_bone_box_wire_outline_get(void);
|
|
|
|
struct Batch *DRW_cache_bone_wire_wire_outline_get(void);
|
2017-02-22 13:00:15 +01:00
|
|
|
struct Batch *DRW_cache_bone_point_get(void);
|
|
|
|
struct Batch *DRW_cache_bone_point_wire_outline_get(void);
|
|
|
|
struct Batch *DRW_cache_bone_arrows_get(void);
|
|
|
|
|
2017-02-07 11:20:15 +01:00
|
|
|
/* Meshes */
|
2017-04-21 21:14:11 +10:00
|
|
|
struct Batch *DRW_cache_mesh_surface_overlay_get(struct Object *ob);
|
2017-04-12 18:08:07 +10:00
|
|
|
void DRW_cache_mesh_wire_overlay_get(
|
2017-04-15 14:07:57 +10:00
|
|
|
struct Object *ob,
|
|
|
|
struct Batch **r_tris, struct Batch **r_ledges, struct Batch **r_lverts);
|
2017-03-02 01:07:03 +01:00
|
|
|
struct Batch *DRW_cache_face_centers_get(struct Object *ob);
|
2017-04-12 18:08:07 +10:00
|
|
|
struct Batch *DRW_cache_mesh_wire_outline_get(struct Object *ob);
|
|
|
|
struct Batch *DRW_cache_mesh_surface_get(struct Object *ob);
|
2017-05-03 18:55:40 +02:00
|
|
|
struct Batch *DRW_cache_mesh_surface_weights_get(struct Object *ob);
|
2017-05-04 19:59:27 +02:00
|
|
|
struct Batch *DRW_cache_mesh_surface_vert_colors_get(struct Object *ob);
|
2017-04-12 18:08:07 +10:00
|
|
|
struct Batch *DRW_cache_mesh_surface_verts_get(struct Object *ob);
|
2017-04-28 22:30:21 +10:00
|
|
|
struct Batch *DRW_cache_mesh_edges_get(struct Object *ob);
|
2017-04-12 18:08:07 +10:00
|
|
|
struct Batch *DRW_cache_mesh_verts_get(struct Object *ob);
|
2017-05-05 14:25:43 +02:00
|
|
|
struct Batch *DRW_cache_mesh_edges_paint_overlay_get(struct Object *ob, bool use_wire, bool use_sel);
|
2017-05-03 18:55:40 +02:00
|
|
|
struct Batch *DRW_cache_mesh_faces_weight_overlay_get(struct Object *ob);
|
|
|
|
struct Batch *DRW_cache_mesh_verts_weight_overlay_get(struct Object *ob);
|
2017-04-25 18:46:59 +02:00
|
|
|
struct Batch **DRW_cache_mesh_surface_shaded_get(struct Object *ob);
|
2017-02-07 11:20:15 +01:00
|
|
|
|
2017-04-15 16:46:17 +10:00
|
|
|
/* Curve */
|
2017-04-21 17:58:18 +10:00
|
|
|
struct Batch *DRW_cache_curve_surface_get(struct Object *ob);
|
|
|
|
struct Batch *DRW_cache_curve_surface_verts_get(struct Object *ob);
|
2017-04-15 16:46:17 +10:00
|
|
|
struct Batch *DRW_cache_curve_edge_wire_get(struct Object *ob);
|
2017-04-21 17:58:18 +10:00
|
|
|
/* edit-mode */
|
2017-04-20 05:23:48 +10:00
|
|
|
struct Batch *DRW_cache_curve_edge_normal_get(struct Object *ob, float normal_size);
|
2017-04-15 16:46:17 +10:00
|
|
|
struct Batch *DRW_cache_curve_edge_overlay_get(struct Object *ob);
|
|
|
|
struct Batch *DRW_cache_curve_vert_overlay_get(struct Object *ob);
|
2017-04-21 02:18:14 +10:00
|
|
|
|
|
|
|
/* Font */
|
2017-04-21 17:58:18 +10:00
|
|
|
struct Batch *DRW_cache_text_edge_wire_get(struct Object *ob);
|
2017-04-21 02:18:14 +10:00
|
|
|
struct Batch *DRW_cache_text_surface_get(struct Object *ob);
|
2017-04-21 17:58:18 +10:00
|
|
|
/* edit-mode */
|
|
|
|
struct Batch *DRW_cache_text_cursor_overlay_get(struct Object *ob);
|
|
|
|
struct Batch *DRW_cache_text_select_overlay_get(struct Object *ob);
|
2017-04-21 02:18:14 +10:00
|
|
|
|
|
|
|
/* Surface */
|
|
|
|
struct Batch *DRW_cache_surf_surface_get(struct Object *ob);
|
2017-04-15 16:46:17 +10:00
|
|
|
|
2017-04-13 22:09:59 +10:00
|
|
|
/* Lattice */
|
|
|
|
struct Batch *DRW_cache_lattice_verts_get(struct Object *ob);
|
|
|
|
struct Batch *DRW_cache_lattice_wire_get(struct Object *ob);
|
2017-04-13 23:29:45 +10:00
|
|
|
struct Batch *DRW_cache_lattice_vert_overlay_get(struct Object *ob);
|
2017-04-13 22:09:59 +10:00
|
|
|
|
2017-04-20 05:23:48 +10:00
|
|
|
#endif /* __DRAW_CACHE_H__ */
|