Blender V4.3
overlay_wireframe.cc File Reference
#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.hh"
#include "BKE_displist.h"
#include "BKE_duplilist.hh"
#include "BKE_editmesh.hh"
#include "BKE_global.hh"
#include "BKE_mesh_types.hh"
#include "BKE_object.hh"
#include "BKE_paint.hh"
#include "BKE_particle.h"
#include "BLI_hash.h"
#include "BLI_math_base.hh"
#include "DRW_render.hh"
#include "GPU_shader.hh"
#include "ED_view3d.hh"
#include "overlay_private.hh"

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)

Function Documentation

◆ OVERLAY_wireframe_cache_init()

void OVERLAY_wireframe_cache_init ( OVERLAY_Data * vedata)

Definition at line 45 of file overlay_wireframe.cc.

References blender::math::abs(), OVERLAY_PrivateData::antialiasing, 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_int_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, blender::math::interpolate(), OB_SOLID, OVERLAY_PrivateData::overlay, OVERLAY_shader_wireframe(), OVERLAY_shader_wireframe_select(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, View3D::shading, OVERLAY_PrivateData::shdata, blender::math::sqrt(), state, OVERLAY_Data::stl, OVERLAY_TextureList::temp_depth_tx, OVERLAY_Data::txl, View3DShading::type, DRWContextState::v3d, 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().

◆ OVERLAY_wireframe_cache_populate()

void OVERLAY_wireframe_cache_populate ( OVERLAY_Data * vedata,
Object * ob,
OVERLAY_DupliData * dupli,
bool init_dupli )

Definition at line 164 of file overlay_wireframe.cc.

References Object::base_flag, OVERLAY_DupliData::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::edges_num, ELEM, OVERLAY_ExtraCallBuffers::extra_loose_points, OVERLAY_ExtraCallBuffers::extra_wire, ListBase::first, View3DOverlay::flag, is_mesh(), Object::mode, ParticleSystem::next, OB_CURVES_LEGACY, OB_DRAW_ALL_EDGES, OB_DRAW_IN_FRONT, OB_DRAWWIRE, OB_FONT, OB_GPENCIL_LEGACY, OB_GREASE_PENCIL, OB_MESH, OB_MODE_SCULPT, OB_POINTCLOUD, OB_SURF, OB_VOLUME, OB_WIRE, 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, Mesh::runtime, DRWContextState::rv3d, DRWContextState::scene, Object::sculpt, OVERLAY_Data::stl, Object::type, V3D_OVERLAY_WIREFRAMES, Mesh::verts_num, 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().

◆ OVERLAY_wireframe_draw()

void OVERLAY_wireframe_draw ( OVERLAY_Data * data)

◆ OVERLAY_wireframe_in_front_draw()

void OVERLAY_wireframe_in_front_draw ( OVERLAY_Data * data)

◆ OVERLAY_wireframe_init()

◆ wireframe_hair_cache_populate()