|
Blender V4.3
|
#include "DNA_camera_types.h"#include "DNA_gpencil_legacy_types.h"#include "DNA_shader_fx_types.h"#include "DNA_view3d_types.h"#include "BKE_gpencil_legacy.h"#include "BLI_link_utils.h"#include "BLI_memblock.h"#include "DRW_render.hh"#include "BKE_camera.h"#include "gpencil_engine.h"Go to the source code of this file.
Classes | |
| struct | gpIterVfxData |
|
static |
Definition at line 25 of file gpencil_shader_fx.cc.
References eShaderFxMode_Editmode, eShaderFxMode_Realtime, eShaderFxMode_Render, and ShaderFxData::mode.
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 80 of file gpencil_shader_fx.cc.
References GPENCIL_PrivateData::camera, copy_v2_fl(), cos(), GPENCIL_PrivateData::dof_params, DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_STATE_WRITE_COLOR, DRW_view_persmat_get(), DRW_view_winmat_get(), DRW_viewport_size_get(), fabsf, BlurShaderFxData::flag, FX_BLUR_DOF_MODE, GPENCIL_PIXEL_FACTOR, GPENCIL_shader_fx_blur_get(), gpencil_vfx_pass_create(), mat4_to_scale(), max_ii(), min_ii(), mul_project_m4_v3_zfac(), mul_v2_fl(), gpIterVfxData::pd, BlurShaderFxData::radius, BlurShaderFxData::rotation, BlurShaderFxData::samples, state, and w().
Referenced by gpencil_vfx_cache_populate().
| void gpencil_vfx_cache_populate | ( | GPENCIL_Data * | vedata, |
| Object * | ob, | ||
| GPENCIL_tObject * | tgp_ob, | ||
| const bool | is_edit_mode ) |
Definition at line 588 of file gpencil_shader_fx.cc.
References GPENCIL_PrivateData::color_layer_tx, GPENCIL_PrivateData::color_object_tx, GPENCIL_tObject::do_mat_holdout, DRW_shgroup_call_procedural_triangles(), DRW_shgroup_create_sub(), DRW_shgroup_state_disable(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_int_copy(), DRW_STATE_BLEND_ADD_FULL, DRW_STATE_BLEND_MUL, DRW_STATE_WRITE_COLOR, effect_is_active(), eShaderFxType_Blur, eShaderFxType_Colorize, eShaderFxType_Flip, eShaderFxType_Glow, eShaderFxType_Pixel, eShaderFxType_Rim, eShaderFxType_Shadow, eShaderFxType_Swirl, eShaderFxType_Wave, GPENCIL_Data::fbl, GPENCIL_tObject::first, GPENCIL_FramebufferList::gpencil_fb, GPENCIL_shader_fx_composite_get(), gpencil_vfx_blur(), gpencil_vfx_colorize(), gpencil_vfx_flip(), gpencil_vfx_glow(), gpencil_vfx_pass_create(), gpencil_vfx_pixelize(), gpencil_vfx_rim(), gpencil_vfx_shadow(), gpencil_vfx_swirl(), gpencil_vfx_wave(), GPENCIL_PrivateData::is_viewport, GPENCIL_FramebufferList::layer_fb, LISTBASE_FOREACH, GPENCIL_FramebufferList::object_fb, GPENCIL_StorageList::pd, gpIterVfxData::pd, GPENCIL_PrivateData::reveal_layer_tx, GPENCIL_PrivateData::reveal_object_tx, Object::shader_fx, GPENCIL_PrivateData::simplify_fx, gpIterVfxData::source_color_tx, gpIterVfxData::source_fb, gpIterVfxData::source_reveal_tx, state, GPENCIL_Data::stl, gpIterVfxData::target_color_tx, gpIterVfxData::target_fb, gpIterVfxData::target_reveal_tx, gpIterVfxData::tgp_ob, GPENCIL_PrivateData::use_layer_fb, GPENCIL_PrivateData::use_object_fb, and GPENCIL_tObject::vfx.
Referenced by GPENCIL_cache_populate().
|
static |
Definition at line 134 of file gpencil_shader_fx.cc.
References DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec3_copy(), DRW_STATE_WRITE_COLOR, ColorizeShaderFxData::factor, GPENCIL_shader_fx_colorize_get(), gpencil_vfx_pass_create(), ColorizeShaderFxData::high_color, ColorizeShaderFxData::low_color, ColorizeShaderFxData::mode, and state.
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 149 of file gpencil_shader_fx.cc.
References DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_STATE_WRITE_COLOR, FlipShaderFxData::flag, FX_FLIP_HORIZONTAL, FX_FLIP_VERTICAL, GPENCIL_shader_fx_transform_get(), gpencil_vfx_pass_create(), and state.
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 418 of file gpencil_shader_fx.cc.
References GlowShaderFxData::blend_mode, GlowShaderFxData::blur, copy_v3_v3(), cos(), DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ADD_FULL, DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_BLEND_MUL, DRW_STATE_BLEND_SUB, DRW_STATE_WRITE_COLOR, eGplBlendMode_Add, eGplBlendMode_Divide, eGplBlendMode_Multiply, eGplBlendMode_Regular, eGplBlendMode_Subtract, eShaderFxGlowMode_Luminance, GlowShaderFxData::flag, FX_GLOW_USE_ALPHA, GlowShaderFxData::glow_color, GPENCIL_shader_fx_glow_get(), gpencil_vfx_pass_create(), max_ii(), min_ii(), GlowShaderFxData::mode, gpIterVfxData::pd, GlowShaderFxData::rotation, GlowShaderFxData::samples, GlowShaderFxData::select_color, state, GlowShaderFxData::threshold, and GPENCIL_PrivateData::use_signed_fb.
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 55 of file gpencil_shader_fx.cc.
References BLI_LINKS_APPEND, BLI_memblock_alloc(), DRW_pass_create(), DRW_shgroup_create(), DRW_shgroup_uniform_texture_ref_ex(), GPENCIL_PrivateData::gp_vfx_pool, gpIterVfxData::pd, sampler(), gpIterVfxData::source_color_tx, gpIterVfxData::source_fb, gpIterVfxData::source_reveal_tx, state, gpIterVfxData::target_color_tx, GPENCIL_tVfx::target_fb, gpIterVfxData::target_fb, gpIterVfxData::target_reveal_tx, gpIterVfxData::tgp_ob, GPENCIL_tObject::vfx, and GPENCIL_tVfx::vfx_ps.
Referenced by gpencil_vfx_blur(), gpencil_vfx_cache_populate(), gpencil_vfx_colorize(), gpencil_vfx_flip(), gpencil_vfx_glow(), gpencil_vfx_pixelize(), gpencil_vfx_rim(), gpencil_vfx_shadow(), gpencil_vfx_swirl(), and gpencil_vfx_wave().
|
static |
Definition at line 241 of file gpencil_shader_fx.cc.
References add_v2_fl(), copy_v2_fl2(), GPUSamplerState::default_sampler(), DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_STATE_WRITE_COLOR, DRW_view_persmat_get(), DRW_view_winmat_get(), DRW_viewport_invert_size_get(), DRW_viewport_size_get(), fabsf, PixelShaderFxData::flag, float, FX_PIXEL_FILTER_NEAREST, GPENCIL_PIXEL_FACTOR, GPENCIL_shader_fx_pixelize_get(), gpencil_vfx_pass_create(), GPUSamplerState::internal_sampler(), madd_v2_v2fl(), mat4_to_scale(), mul_project_m4_v3_zfac(), mul_v2_fl(), mul_v2_v2(), mul_v3_fl(), mul_v3_m4v3(), sampler(), PixelShaderFxData::size, state, and w().
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 167 of file gpencil_shader_fx.cc.
References RimShaderFxData::blur, DRW_shgroup_call_procedural_triangles(), DRW_shgroup_create_sub(), DRW_shgroup_state_disable(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_shgroup_uniform_vec3_copy(), DRW_STATE_BLEND_ADD_FULL, DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_BLEND_MUL, DRW_STATE_BLEND_SUB, DRW_STATE_WRITE_COLOR, DRW_view_persmat_get(), DRW_view_winmat_get(), DRW_viewport_invert_size_get(), DRW_viewport_size_get(), eShaderFxRimMode_Add, eShaderFxRimMode_Divide, eShaderFxRimMode_Multiply, eShaderFxRimMode_Normal, eShaderFxRimMode_Overlay, eShaderFxRimMode_Subtract, fabsf, float, GPENCIL_PIXEL_FACTOR, GPENCIL_shader_fx_rim_get(), gpencil_vfx_pass_create(), RimShaderFxData::mask_rgb, mat4_to_scale(), max_ii(), min_ii(), RimShaderFxData::mode, mul_project_m4_v3_zfac(), mul_v2_fl(), mul_v2_v2(), RimShaderFxData::offset, RimShaderFxData::rim_rgb, RimShaderFxData::samples, state, w(), and zero_v2().
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 304 of file gpencil_shader_fx.cc.
References ShadowShaderFxData::amplitude, ShadowShaderFxData::blur, copy_v2_fl2(), copy_v2_v2(), copy_v3_v3(), dot_v2v2(), DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_WRITE_COLOR, DRW_view_persmat_get(), DRW_view_winmat_get(), DRW_viewport_invert_size_get(), DRW_viewport_size_get(), fabsf, ShadowShaderFxData::flag, float, FX_SHADOW_USE_OBJECT, FX_SHADOW_USE_WAVE, GPENCIL_PIXEL_FACTOR, GPENCIL_shader_fx_shadow_get(), gpencil_vfx_pass_create(), mat4_to_scale(), max_ff(), max_ii(), min_ii(), mul_project_m4_v3_zfac(), mul_v2_fl(), mul_v2_v2(), mul_v3_fl(), mul_v3_m4v3(), ShadowShaderFxData::object, ShadowShaderFxData::offset, ShadowShaderFxData::orientation, ShadowShaderFxData::period, ShadowShaderFxData::phase, rescale_m4(), rotate_m4(), rotate_v2_v2fl(), ShadowShaderFxData::rotation, ShadowShaderFxData::samples, ShadowShaderFxData::scale, ShadowShaderFxData::shadow_rgba, state, translate_m4(), unit_m4(), w(), and zero_v2().
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 543 of file gpencil_shader_fx.cc.
References add_v2_fl(), SwirlShaderFxData::angle, copy_v3_v3(), DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_STATE_WRITE_COLOR, DRW_view_persmat_get(), DRW_view_winmat_get(), DRW_viewport_size_get(), fabsf, GPENCIL_PIXEL_FACTOR, GPENCIL_shader_fx_transform_get(), gpencil_vfx_pass_create(), mat4_to_scale(), mul_project_m4_v3_zfac(), mul_v2_fl(), mul_v2_v2(), mul_v3_fl(), mul_v3_m4v3(), SwirlShaderFxData::object, SwirlShaderFxData::radius, state, and w().
Referenced by gpencil_vfx_cache_populate().
|
static |
Definition at line 488 of file gpencil_shader_fx.cc.
References WaveShaderFxData::amplitude, copy_v2_fl2(), copy_v2_v2(), dot_v2v2(), DRW_shgroup_call_procedural_triangles(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_vec2_copy(), DRW_STATE_WRITE_COLOR, DRW_view_persmat_get(), DRW_view_winmat_get(), DRW_viewport_invert_size_get(), DRW_viewport_size_get(), fabsf, GPENCIL_PIXEL_FACTOR, GPENCIL_shader_fx_transform_get(), gpencil_vfx_pass_create(), mat4_to_scale(), max_ff(), mul_project_m4_v3_zfac(), mul_v2_fl(), mul_v2_v2(), mul_v3_fl(), mul_v3_m4v3(), WaveShaderFxData::orientation, WaveShaderFxData::period, WaveShaderFxData::phase, state, and w().
Referenced by gpencil_vfx_cache_populate().