|
Blender V4.3
|
#include "BLI_math_vector.hh"#include "DRW_render.hh"#include "BKE_curves.hh"#include "BKE_global.hh"#include "BKE_gpencil_legacy.h"#include "BKE_grease_pencil.hh"#include "BKE_object.hh"#include "DNA_gpencil_legacy_types.h"#include "ED_grease_pencil.hh"#include "UI_resources.hh"#include "overlay_private.hh"Go to the source code of this file.
Classes | |
| struct | iterData |
Functions | |
| static void | gpencil_depth_plane (Object *ob, float r_plane[4]) |
| void | OVERLAY_outline_init (OVERLAY_Data *vedata) |
| void | OVERLAY_outline_cache_init (OVERLAY_Data *vedata) |
| static void | OVERLAY_outline_grease_pencil (OVERLAY_PrivateData *pd, Scene *scene, Object *ob) |
| static void | OVERLAY_outline_volume (OVERLAY_PrivateData *pd, Object *ob) |
| static void | OVERLAY_outline_curves (OVERLAY_PrivateData *pd, Object *ob) |
| static void | OVERLAY_outline_pointcloud (OVERLAY_PrivateData *pd, Object *ob) |
| void | OVERLAY_outline_cache_populate (OVERLAY_Data *vedata, Object *ob, OVERLAY_DupliData *dupli, bool init_dupli) |
| void | OVERLAY_outline_draw (OVERLAY_Data *vedata) |
Definition at line 29 of file overlay_outline.cc.
References add_v3_fl(), BKE_object_boundbox_get(), bounds(), copy_v3_v3(), DRW_view_is_persp_get(), DRW_view_viewmat_get(), invert_m4(), blender::math::midpoint(), mul_m4_m4m4(), mul_mat3_m4_v3(), normalize_v3(), plane_from_point_normal_v3(), rescale_m4(), sub_v3_v3v3(), transpose_m4(), and unit_m4().
Referenced by OVERLAY_outline_grease_pencil().
| void OVERLAY_outline_cache_init | ( | OVERLAY_Data * | vedata | ) |
Definition at line 115 of file overlay_outline.cc.
References OVERLAY_PrivateData::antialiasing, DRW_Global::block_ubo, OVERLAY_PrivateData::clipping_state, DefaultTextureList::depth, DRW_PASS_CREATE, DRW_shgroup_call_procedural_triangles(), DRW_shgroup_create(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_texture_ref(), DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_viewport_texture_list_get(), OVERLAY_PrivateData::enabled, G, G_draw, G_TRANSFORM_OBJ, OVERLAY_PrivateData::outlines_curves_grp, OVERLAY_PassList::outlines_detect_ps, OVERLAY_PrivateData::outlines_gpencil_grp, OVERLAY_PrivateData::outlines_grp, OVERLAY_TextureList::outlines_id_tx, OVERLAY_PassList::outlines_prepass_ps, OVERLAY_PrivateData::outlines_ptcloud_grp, OVERLAY_shader_outline_detect(), OVERLAY_shader_outline_prepass(), OVERLAY_shader_outline_prepass_curves(), OVERLAY_shader_outline_prepass_gpencil(), OVERLAY_shader_outline_prepass_pointcloud(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, state, OVERLAY_Data::stl, OVERLAY_TextureList::temp_depth_tx, TH_OUTLINE_WIDTH, OVERLAY_Data::txl, UI_GetThemeValuef(), OVERLAY_PrivateData::v3d_flag, V3D_SELECT_OUTLINE, OVERLAY_PrivateData::xray_enabled, and OVERLAY_PrivateData::xray_enabled_and_not_wire.
Referenced by OVERLAY_cache_init().
| void OVERLAY_outline_cache_populate | ( | OVERLAY_Data * | vedata, |
| Object * | ob, | ||
| OVERLAY_DupliData * | dupli, | ||
| bool | init_dupli ) |
Definition at line 309 of file overlay_outline.cc.
References DRW_cache_object_edge_detection_get(), DRW_cache_object_surface_get(), DRW_context_state_get(), DRW_object_axis_orthogonal_to_view(), DRW_object_is_flat(), DRW_shgroup_call, Object::dt, OB_BOUNDBOX, OB_CURVES, OB_GREASE_PENCIL, OB_POINTCLOUD, OB_VOLUME, OVERLAY_DupliData::outline_geom, OVERLAY_DupliData::outline_shgrp, OVERLAY_PrivateData::outlines_grp, OVERLAY_outline_curves(), OVERLAY_outline_grease_pencil(), OVERLAY_outline_pointcloud(), OVERLAY_outline_volume(), OVERLAY_StorageList::pd, RegionView3D::persp, DRWContextState::rv3d, RV3D_ORTHO, DRWContextState::scene, OVERLAY_Data::stl, Object::type, and OVERLAY_PrivateData::xray_enabled_and_not_wire.
Referenced by OVERLAY_cache_populate().
|
static |
Definition at line 289 of file overlay_outline.cc.
References OVERLAY_PrivateData::outlines_curves_grp.
Referenced by OVERLAY_outline_cache_populate().
| void OVERLAY_outline_draw | ( | OVERLAY_Data * | vedata | ) |
Definition at line 378 of file overlay_outline.cc.
References DRW_draw_pass(), DRW_pass_is_empty(), DRW_state_is_fbo(), DRW_stats_group_end(), DRW_stats_group_start(), OVERLAY_Data::fbl, GPU_framebuffer_bind(), GPU_framebuffer_clear_color_depth_stencil(), OVERLAY_PassList::outlines_detect_ps, OVERLAY_FramebufferList::outlines_prepass_fb, OVERLAY_PassList::outlines_prepass_ps, OVERLAY_FramebufferList::outlines_resolve_fb, and OVERLAY_Data::psl.
Referenced by OVERLAY_draw_scene().
|
static |
Definition at line 189 of file overlay_outline.cc.
References BKE_gpencil_material_settings(), color_tx, Object::data, DRW_shgroup_buffer_texture(), DRW_shgroup_call_range(), DRW_shgroup_create_sub(), DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_vec4_copy(), blender::bke::CurvesGeometry::evaluated_points_by_curve(), GreasePencil::flag, MaterialGPencilStyle::flag, GP_MATERIAL_FILL_SHOW, GP_MATERIAL_HIDE, GP_MATERIAL_STROKE_SHOW, gpencil_depth_plane(), GREASE_PENCIL_STROKE_ORDER_3D, int, mat4_to_scale(), Object::mode, OB_MODE_OBJECT, and OVERLAY_PrivateData::outlines_gpencil_grp.
Referenced by OVERLAY_outline_cache_populate().
| void OVERLAY_outline_init | ( | OVERLAY_Data * | vedata | ) |
Definition at line 81 of file overlay_outline.cc.
References OVERLAY_PrivateData::antialiasing, DRW_state_is_fbo(), DRW_texture_ensure_fullscreen_2d(), DRW_viewport_texture_list_get(), OVERLAY_PrivateData::enabled, OVERLAY_Data::fbl, GPU_DEPTH24_STENCIL8, GPU_framebuffer_ensure_config, GPU_R16UI, OVERLAY_TextureList::outlines_id_tx, OVERLAY_FramebufferList::outlines_prepass_fb, OVERLAY_FramebufferList::outlines_resolve_fb, OVERLAY_StorageList::pd, OVERLAY_Data::stl, OVERLAY_TextureList::temp_depth_tx, and OVERLAY_Data::txl.
Referenced by OVERLAY_engine_init().
|
static |
Definition at line 296 of file overlay_outline.cc.
References OVERLAY_PrivateData::outlines_ptcloud_grp, and OVERLAY_PrivateData::wireframe_mode.
Referenced by OVERLAY_outline_cache_populate().
|
static |
Definition at line 277 of file overlay_outline.cc.
References DRW_shgroup_call, and OVERLAY_PrivateData::outlines_grp.
Referenced by OVERLAY_outline_cache_populate().