Blender
V3.3
|
#include "DNA_collection_types.h"
#include "DNA_mesh_types.h"
#include "DNA_particle_types.h"
#include "DNA_view3d_types.h"
#include "DNA_volume_types.h"
#include "BKE_curve.h"
#include "BKE_displist.h"
#include "BKE_duplilist.h"
#include "BKE_editmesh.h"
#include "BKE_global.h"
#include "BKE_object.h"
#include "BKE_paint.h"
#include "BKE_particle.h"
#include "BLI_hash.h"
#include "DRW_render.h"
#include "GPU_shader.h"
#include "ED_view3d.h"
#include "overlay_private.h"
Go to the source code of this file.
Functions | |
void | OVERLAY_wireframe_init (OVERLAY_Data *vedata) |
void | OVERLAY_wireframe_cache_init (OVERLAY_Data *vedata) |
static void | wireframe_hair_cache_populate (OVERLAY_Data *vedata, Object *ob, ParticleSystem *psys) |
void | OVERLAY_wireframe_cache_populate (OVERLAY_Data *vedata, Object *ob, OVERLAY_DupliData *dupli, bool init_dupli) |
void | OVERLAY_wireframe_draw (OVERLAY_Data *data) |
void | OVERLAY_wireframe_in_front_draw (OVERLAY_Data *data) |
void OVERLAY_wireframe_cache_init | ( | OVERLAY_Data * | vedata | ) |
Definition at line 40 of file overlay_wireframe.c.
References OVERLAY_PrivateData::antialiasing, DRW_Global::block_ubo, OVERLAY_PrivateData::clipping_state, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_create(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_texture_ref(), DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_FIRST_VERTEX_CONVENTION, DRW_state_is_depth(), DRW_state_is_fbo(), DRW_state_is_select(), DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, OVERLAY_TextureList::dummy_depth_tx, OVERLAY_PrivateData::enabled, G, G_draw, G_TRANSFORM_OBJ, if(), NULL, OB_SOLID, OB_WIRE, OVERLAY_PrivateData::overlay, OVERLAY_shader_wireframe(), OVERLAY_shader_wireframe_select(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, View3D::shading, OVERLAY_PrivateData::shdata, state, OVERLAY_Data::stl, OVERLAY_TextureList::temp_depth_tx, OVERLAY_Data::txl, View3DShading::type, DRWContextState::v3d, V3D_SHADING_OBJECT_COLOR, V3D_SHADING_RANDOM_COLOR, View3DShading::wire_color_type, OVERLAY_ShadingData::wire_opacity, OVERLAY_ShadingData::wire_step_param, View3DOverlay::wireframe_opacity, OVERLAY_PassList::wireframe_ps, View3DOverlay::wireframe_threshold, OVERLAY_PassList::wireframe_xray_ps, OVERLAY_PrivateData::wires_all_grp, OVERLAY_PrivateData::wires_grp, OVERLAY_PrivateData::wires_hair_grp, OVERLAY_PrivateData::wires_sculpt_grp, OVERLAY_PrivateData::xray_enabled, and OVERLAY_PrivateData::xray_opacity.
Referenced by OVERLAY_cache_init().
void OVERLAY_wireframe_cache_populate | ( | OVERLAY_Data * | vedata, |
Object * | ob, | ||
OVERLAY_DupliData * | dupli, | ||
bool | init_dupli | ||
) |
Definition at line 155 of file overlay_wireframe.c.
References OVERLAY_DupliData::base_flag, Object::base_flag, BASE_FROM_DUPLI, BKE_object_get_editmesh_eval_cage(), BKE_object_get_editmesh_eval_final(), BKE_sculptsession_use_pbvh_draw(), BLI_assert, color, Object::data, Volume::display, ParticleSettings::draw_as, DRW_cache_curve_edge_wire_get(), DRW_cache_mesh_all_verts_get(), DRW_cache_mesh_loose_edges_get(), DRW_cache_object_face_wireframe_get(), DRW_cache_surf_edge_wire_get(), DRW_cache_text_edge_wire_get(), DRW_context_state_get(), DRW_object_get_dupli_parent(), DRW_object_is_in_edit_mode(), DRW_object_is_visible_psys_in_active_context(), DRW_object_wire_theme_get(), DRW_shgroup_call, DRW_shgroup_call_no_cull, DRW_shgroup_call_sculpt(), DRW_state_is_image_render(), Object::dt, Object::dtx, Mesh::edit_mesh, ELEM, OVERLAY_ExtraCallBuffers::extra_loose_points, OVERLAY_ExtraCallBuffers::extra_wire, ListBase::first, View3DOverlay::flag, GPUBatch, if(), Object::mode, NULL, OB_CURVES_LEGACY, OB_DRAW_ALL_EDGES, OB_DRAW_IN_FRONT, OB_DRAWWIRE, OB_FONT, OB_GPENCIL, OB_MESH, OB_MODE_SCULPT, OB_POINTCLOUD, OB_SURF, OB_VOLUME, OB_WIRE, Object::obmat, OVERLAY_PrivateData::overlay, OVERLAY_extra_call_buffer_get(), OVERLAY_extra_loose_points(), OVERLAY_extra_wire(), PART_DRAW_PATH, PART_DRAW_REND, Object::particlesystem, OVERLAY_StorageList::pd, ParticleSettings::ren_as, DRWContextState::rv3d, Object::sculpt, OVERLAY_Data::stl, Mesh::totedge, Mesh::totvert, Object::type, V3D_OVERLAY_WIREFRAMES, DRWContextState::view_layer, VOLUME_WIREFRAME_POINTS, OVERLAY_DupliData::wire_geom, OVERLAY_DupliData::wire_shgrp, wireframe_hair_cache_populate(), OVERLAY_PrivateData::wireframe_mode, VolumeDisplay::wireframe_type, OVERLAY_PrivateData::wires_all_grp, OVERLAY_PrivateData::wires_grp, and OVERLAY_PrivateData::wires_sculpt_grp.
Referenced by OVERLAY_cache_populate().
void OVERLAY_wireframe_draw | ( | OVERLAY_Data * | data | ) |
Definition at line 338 of file overlay_wireframe.c.
References data, DRW_draw_pass(), DRW_view_set_active(), NULL, OVERLAY_PrivateData::view_wires, and OVERLAY_PassList::wireframe_ps.
Referenced by OVERLAY_draw_scene().
void OVERLAY_wireframe_in_front_draw | ( | OVERLAY_Data * | data | ) |
Definition at line 349 of file overlay_wireframe.c.
References data, DRW_draw_pass(), DRW_view_set_active(), NULL, OVERLAY_PrivateData::view_wires, and OVERLAY_PassList::wireframe_xray_ps.
Referenced by OVERLAY_draw_scene().
void OVERLAY_wireframe_init | ( | OVERLAY_Data * | vedata | ) |
Definition at line 32 of file overlay_wireframe.c.
References DRW_context_state_get(), DRW_view_create_with_zoffset(), DRW_view_default_get(), OVERLAY_StorageList::pd, DRWContextState::rv3d, OVERLAY_Data::stl, and OVERLAY_PrivateData::view_wires.
Referenced by OVERLAY_engine_init().
|
static |
Definition at line 119 of file overlay_wireframe.c.
References copy_m4_m4(), DRW_cache_particles_get_hair(), DRW_object_get_dupli(), DRW_object_get_dupli_parent(), DRW_shgroup_call_no_cull, DRW_shgroup_create_sub(), DRW_shgroup_uniform_mat4_copy(), Object::dtx, GPUBatch, Object::instance_collection, Collection::instance_offset, invert_m4(), mul_m4_m4m4(), NULL, DupliObject::ob, OB_DRAW_IN_FRONT, OB_DUPLICOLLECTION, Object::obmat, OVERLAY_StorageList::pd, OVERLAY_Data::stl, sub_v3_v3(), DupliObject::type, unit_m4(), and OVERLAY_PrivateData::wires_hair_grp.
Referenced by OVERLAY_wireframe_cache_populate().