|
Blender V5.0
|
Classes | |
| struct | SortInfo |
| struct | Engine |
| struct | MaterialPool |
| struct | LightPool |
| struct | tVfx |
| struct | tLayer |
| struct | tObject |
| struct | Instance |
| struct | GPENCIL_Data |
| class | ShaderCache |
Typedefs | |
| typedef int(* | CompareFn) (const void *, const void *) |
| using | StaticShader = gpu::StaticShader |
Functions | |
| static float | erfinv_approx (const float x) |
| void | init_sort_info (struct SortInfo *si, CompareFn func) |
| list_node * | merge_lists (list_node *first, list_node *second, CompareFn func) |
| BLI_INLINE list_node * | sweep_up (struct SortInfo *si, list_node *list, unsigned int upto) |
| BLI_INLINE void | insert_list (struct SortInfo *si, list_node *list, unsigned int rank) |
| BLI_INLINE list_node * | list_sort_do (list_node *list, CompareFn func) |
| static int | gpencil_tobject_dist_sort (const void *a, const void *b) |
| void | gpencil_object_cache_sort (Instance *inst) |
| struct GpencilBatchCache * | gpencil_batch_cache_get (struct Object *ob, int cfra) |
| static void | remap_depth (const View &view, MutableSpan< float > pix_z) |
| static void | render_set_view (RenderEngine *engine, const Depsgraph *depsgraph, const float2 aa_offset=float2{0.0f}) |
| static void | render_init_buffers (const DRWContext *draw_ctx, Instance &inst, RenderEngine *engine, RenderLayer *render_layer, const rcti *rect, const bool use_separated_pass) |
| static void | render_result_z (const DRWContext *draw_ctx, RenderLayer *rl, const char *viewname, Instance &instance, const rcti *rect) |
| static void | render_result_combined (RenderLayer *rl, const char *viewname, Instance &instance, const rcti *rect) |
| static void | render_result_separated_pass (float *data, Instance &instance, const rcti *rect) |
| static void | cdf_from_curvemapping (const CurveMapping &curve, Array< float > &cdf) |
| static void | cdf_invert (Array< float > &cdf, Array< float > &inverted_cdf) |
| static float | shutter_time_to_scene_time (const int shutter_position, const float shutter_time, const float frame_time, float time) |
| static void | render_frame (RenderEngine *engine, Depsgraph *depsgraph, const DRWContext *draw_ctx, RenderLayer *render_layer, const rcti rect, gpencil::Instance &inst, Manager &manager, const bool separated_pass) |
| static bool | effect_is_active (ShaderFxData *fx, bool is_edit, bool is_viewport) |
Struct After Macros | |
Typically used to copy/clear polymorphic structs which have a generic member at the start which needs to be left as-is. | |
| bool | BLI_memory_is_zero (const void *arr, size_t arr_size) |
Layer | |
| static float | grease_pencil_layer_final_opacity_get (const Instance *inst, const Object *ob, const GreasePencil &grease_pencil, const bke::greasepencil::Layer &layer) |
| static float4 | grease_pencil_layer_final_tint_and_alpha_get (const Instance *inst, const GreasePencil &grease_pencil, const int onion_id, float *r_alpha) |
| static void | grease_pencil_layer_random_color_get (const Object *ob, const bke::greasepencil::Layer &layer, float r_color[3]) |
| tLayer * | grease_pencil_layer_cache_get (tObject *tgp_ob, int layer_id, const bool skip_onion) |
| tLayer * | grease_pencil_layer_cache_add (Instance *inst, const Object *ob, const bke::greasepencil::Layer &layer, const int onion_id, const bool is_used_as_mask, tObject *tgp_ob) |
Material | |
| static MaterialPool * | gpencil_material_pool_add (Instance *inst) |
| static gpu::Texture * | gpencil_image_texture_get (::Image *image, bool *r_alpha_premult) |
| static void | gpencil_uv_transform_get (const float ofs[2], const float scale[2], const float rotation, float r_rot_scale[2][2], float r_offset[2]) |
| static void | gpencil_shade_color (float color[3]) |
| static MaterialGPencilStyle * | gpencil_viewport_material_overrides (Instance *inst, Object *ob, int color_type, MaterialGPencilStyle *gp_style, const eV3DShadingLightingMode lighting_mode) |
| MaterialPool * | gpencil_material_pool_create (Instance *inst, Object *ob, int *ofs, const bool is_vertex_mode) |
| void | gpencil_material_resources_get (MaterialPool *first_pool, int mat_id, gpu::Texture **r_tex_stroke, gpu::Texture **r_tex_fill, gpu::UniformBuf **r_ubo_mat) |
Lights | |
| LightPool * | gpencil_light_pool_add (Instance *inst) |
| void | gpencil_light_ambient_add (LightPool *lightpool, const float color[3]) |
| static float | light_power_get (const Light *la) |
| void | gpencil_light_pool_populate (LightPool *lightpool, Object *ob) |
| LightPool * | gpencil_light_pool_create (Instance *inst, Object *) |
| typedef int(* blender::draw::gpencil::CompareFn) (const void *, const void *) |
Definition at line 75 of file gpencil_cache_utils.cc.
| typedef signed short blender::draw::gpencil::int16_t |
Definition at line 77 of file gpencil_cache_utils.cc.
| typedef signed int blender::draw::gpencil::int32_t |
Definition at line 78 of file gpencil_cache_utils.cc.
Definition at line 90 of file gpencil_cache_utils.cc.
| typedef signed char blender::draw::gpencil::int8_t |
Definition at line 76 of file gpencil_cache_utils.cc.
Definition at line 106 of file gpencil_cache_utils.cc.
Definition at line 107 of file gpencil_cache_utils.cc.
Definition at line 108 of file gpencil_cache_utils.cc.
Definition at line 105 of file gpencil_cache_utils.cc.
Definition at line 96 of file gpencil_cache_utils.cc.
Definition at line 97 of file gpencil_cache_utils.cc.
Definition at line 98 of file gpencil_cache_utils.cc.
Definition at line 95 of file gpencil_cache_utils.cc.
Definition at line 124 of file gpencil_cache_utils.cc.
Definition at line 119 of file gpencil_cache_utils.cc.
Definition at line 15 of file gpencil_shader.hh.
Definition at line 67 of file gpencil_cache_utils.cc.
Definition at line 64 of file gpencil_cache_utils.cc.
Definition at line 80 of file gpencil_cache_utils.cc.
Definition at line 81 of file gpencil_cache_utils.cc.
Definition at line 91 of file gpencil_cache_utils.cc.
Definition at line 79 of file gpencil_cache_utils.cc.
Definition at line 110 of file gpencil_cache_utils.cc.
Definition at line 111 of file gpencil_cache_utils.cc.
Definition at line 112 of file gpencil_cache_utils.cc.
Definition at line 109 of file gpencil_cache_utils.cc.
Definition at line 100 of file gpencil_cache_utils.cc.
Definition at line 101 of file gpencil_cache_utils.cc.
Definition at line 102 of file gpencil_cache_utils.cc.
Definition at line 99 of file gpencil_cache_utils.cc.
Definition at line 125 of file gpencil_cache_utils.cc.
Definition at line 120 of file gpencil_cache_utils.cc.
Definition at line 66 of file gpencil_cache_utils.cc.
Definition at line 65 of file gpencil_cache_utils.cc.
| void blender::draw::gpencil::_BLI_assert_abort | ( | void | ) |
| void blender::draw::gpencil::_BLI_assert_print_backtrace | ( | void | ) |
| void blender::draw::gpencil::_BLI_assert_print_extra | ( | const char * | str | ) |
| void blender::draw::gpencil::_BLI_assert_print_pos | ( | const char * | file, |
| int | line, | ||
| const char * | function, | ||
| const char * | id ) |
| void blender::draw::gpencil::_BLI_assert_unreachable_print | ( | const char * | file, |
| int | line, | ||
| const char * | function ) |
|
extern |
Check if memory is zeroed, as with memset(arr, 0, arr_size).
References DRW_STATE_BLEND_ADD_FULL, DRW_STATE_BLEND_MUL, DRW_STATE_BLEND_SUB, GP_LAYER_BLEND_ADD, GP_LAYER_BLEND_DIVIDE, GP_LAYER_BLEND_HARDLIGHT, GP_LAYER_BLEND_MULTIPLY, GP_LAYER_BLEND_SUBTRACT, and state.
|
static |
Definition at line 251 of file gpencil_render.cc.
References BKE_curvemapping_evaluateF(), BLI_assert, float, blender::Array< T, InlineBufferCapacity, Allocator >::index_range(), blender::Array< T, InlineBufferCapacity, Allocator >::last(), blender::Array< T, InlineBufferCapacity, Allocator >::size(), and x.
Referenced by render_frame().
|
static |
Definition at line 269 of file gpencil_render.cc.
References BLI_assert, clamp_f(), blender::IndexRange::drop_front(), blender::Array< T, InlineBufferCapacity, Allocator >::first(), float, i, blender::Array< T, InlineBufferCapacity, Allocator >::index_range(), blender::Array< T, InlineBufferCapacity, Allocator >::last(), blender::Array< T, InlineBufferCapacity, Allocator >::size(), and x.
Referenced by render_frame().
|
static |
Definition at line 26 of file gpencil_shader_fx.cc.
References eShaderFxMode_Editmode, eShaderFxMode_Realtime, eShaderFxMode_Render, and ShaderFxData::mode.
Definition at line 130 of file gpencil_antialiasing.cc.
References fabsf, logf, blender::math::min(), sqrtf, w(), and x.
Referenced by blender::draw::gpencil::Instance::antialiasing_sample_get().
| struct GpencilBatchCache * blender::draw::gpencil::gpencil_batch_cache_get | ( | struct Object * | ob, |
| int | cfra ) |
|
static |
Definition at line 45 of file gpencil_draw_data.cc.
References Image::alpha_mode, BKE_image_get_gpu_texture(), and IMA_ALPHA_PREMUL.
Referenced by gpencil_material_pool_create().
| void blender::draw::gpencil::gpencil_light_ambient_add | ( | LightPool * | lightpool, |
| const float | color[3] ) |
Definition at line 344 of file gpencil_draw_data.cc.
References copy_v3_v3(), GP_LIGHT_TYPE_AMBIENT, GPENCIL_LIGHT_BUFFER_LEN, blender::draw::gpencil::LightPool::light_data, and blender::draw::gpencil::LightPool::light_used.
Referenced by blender::draw::gpencil::Instance::init().
Definition at line 331 of file gpencil_draw_data.cc.
References BLI_memblock_alloc(), blender::draw::gpencil::Instance::gp_light_pool, GPU_uniformbuf_create, blender::draw::gpencil::Instance::last_light_pool, blender::draw::gpencil::LightPool::light_data, blender::draw::gpencil::LightPool::light_used, and blender::draw::gpencil::LightPool::ubo.
Referenced by gpencil_light_pool_create(), and blender::draw::gpencil::Instance::init().
Creates a single pool containing all lights assigned (light linked) for a given object.
Definition at line 417 of file gpencil_draw_data.cc.
References gpencil_light_pool_add(), and blender::draw::gpencil::Instance::last_light_pool.
Definition at line 373 of file gpencil_draw_data.cc.
References copy_v3_v3(), copy_v4_v4(), DRW_object_get_data_for_drawing(), float, GPENCIL_LIGHT_BUFFER_LEN, if(), LA_AREA, LA_SPOT, LA_SUN, blender::draw::gpencil::LightPool::light_data, light_power_get(), blender::draw::gpencil::LightPool::light_used, and mul_v3_fl().
Referenced by blender::draw::gpencil::Instance::object_sync().
|
static |
Definition at line 33 of file gpencil_draw_data.cc.
References BLI_memblock_alloc(), blender::draw::gpencil::Instance::gp_material_pool, GPU_uniformbuf_create, blender::draw::gpencil::Instance::last_material_pool, blender::draw::gpencil::MaterialPool::mat_data, blender::draw::gpencil::MaterialPool::next, blender::draw::gpencil::MaterialPool::ubo, and blender::draw::gpencil::MaterialPool::used_count.
Referenced by gpencil_material_pool_create().
| MaterialPool * blender::draw::gpencil::gpencil_material_pool_create | ( | Instance * | inst, |
| Object * | ob, | ||
| int * | ofs, | ||
| bool | is_vertex_mode ) |
Creates a linked list of material pool containing all materials assigned for a given object. We merge the material pools together if object does not contain a huge amount of materials. Also return an offset to the first material of the object in the UBO.
Definition at line 163 of file gpencil_draw_data.cc.
References MaterialGPencilStyle::alignment_mode, gpMaterial::alignment_rot, MaterialGPencilStyle::alignment_rotation, BKE_gpencil_material_settings(), BKE_object_material_used_with_fallback_eval(), copy_v4_v4(), cosf, gpMaterial::fill_color, gpMaterial::fill_mix_color, MaterialGPencilStyle::fill_rgba, MaterialGPencilStyle::fill_style, gpMaterial::fill_texture_mix, gpMaterial::fill_uv_offset, gpMaterial::fill_uv_rot_scale, gpMaterial::flag, MaterialGPencilStyle::flag, GP_FILL_GRADIENT_RADIAL, GP_FILL_GRADIENT_USE, GP_FILL_HOLDOUT, GP_FILL_TEXTURE_CLIP, GP_FILL_TEXTURE_PREMUL, GP_FILL_TEXTURE_USE, GP_FLAG_NONE, GP_MATERIAL_DISABLE_STENCIL, GP_MATERIAL_FILL_STYLE_GRADIENT, GP_MATERIAL_FILL_STYLE_TEXTURE, GP_MATERIAL_FLIP_FILL, GP_MATERIAL_FOLLOW_FIXED, GP_MATERIAL_FOLLOW_OBJ, GP_MATERIAL_FOLLOW_PATH, GP_MATERIAL_GRADIENT_RADIAL, GP_MATERIAL_IS_FILL_HOLDOUT, GP_MATERIAL_IS_STROKE_HOLDOUT, GP_MATERIAL_MODE_DOT, GP_MATERIAL_MODE_LINE, GP_MATERIAL_STROKE_STYLE_TEXTURE, GP_MATERIAL_TEX_CLAMP, GP_STROKE_ALIGNMENT_FIXED, GP_STROKE_ALIGNMENT_OBJECT, GP_STROKE_ALIGNMENT_STROKE, GP_STROKE_DOTS, GP_STROKE_HOLDOUT, GP_STROKE_OVERLAP, GP_STROKE_TEXTURE_PREMUL, GP_STROKE_TEXTURE_USE, gpencil_image_texture_get(), GPENCIL_MATERIAL_BUFFER_LEN, gpencil_material_pool_add(), gpencil_uv_transform_get(), gpencil_viewport_material_overrides(), MaterialGPencilStyle::gradient_type, i, MaterialGPencilStyle::ima, blender::draw::gpencil::Instance::last_material_pool, View3DShading::light, blender::draw::gpencil::MaterialPool::mat_data, MaterialGPencilStyle::mix_factor, MaterialGPencilStyle::mix_rgba, MaterialGPencilStyle::mix_stroke_factor, MaterialGPencilStyle::mode, blender::draw::gpencil::MaterialPool::next, View3D::shading, MaterialGPencilStyle::sima, sinf, gpMaterial::stroke_color, MaterialGPencilStyle::stroke_rgba, MaterialGPencilStyle::stroke_style, gpMaterial::stroke_texture_mix, gpMaterial::stroke_u_scale, swap_v4_v4(), blender::draw::gpencil::MaterialPool::tex_fill, blender::draw::gpencil::MaterialPool::tex_stroke, MaterialGPencilStyle::texture_angle, MaterialGPencilStyle::texture_offset, MaterialGPencilStyle::texture_pixsize, MaterialGPencilStyle::texture_scale, blender::draw::gpencil::MaterialPool::used_count, blender::draw::gpencil::Instance::v3d, blender::draw::gpencil::Instance::v3d_color_type, V3D_LIGHTING_STUDIO, and V3D_SHADING_VERTEX_COLOR.
| void blender::draw::gpencil::gpencil_material_resources_get | ( | MaterialPool * | first_pool, |
| int | mat_id, | ||
| gpu::Texture ** | r_tex_stroke, | ||
| gpu::Texture ** | r_tex_fill, | ||
| gpu::UniformBuf ** | r_ubo_mat ) |
| tObject * blender::draw::gpencil::gpencil_object_cache_add | ( | Instance * | inst, |
| Object * | ob, | ||
| const bool | is_stroke_order_3d, | ||
| const Bounds< float3 > | bounds ) |
Definition at line 44 of file gpencil_cache_utils.cc.
References BKE_gpencil_material_settings(), BKE_object_material_used_with_fallback_eval(), BLI_memblock_alloc(), blender::draw::gpencil::tObject::camera_z, blender::draw::gpencil::Instance::camera_z_axis, blender::draw::gpencil::tObject::do_mat_holdout, dot_v3v3(), blender::draw::gpencil::tObject::first, MaterialGPencilStyle::flag, GP_MATERIAL_IS_FILL_HOLDOUT, GP_MATERIAL_IS_STROKE_HOLDOUT, blender::draw::gpencil::Instance::gp_object_pool, i, blender::draw::gpencil::tObject::is_drawmode3d, blender::draw::gpencil::tObject::last, blender::draw::gpencil::tObject::layers, and blender::draw::gpencil::tObject::vfx.
| void blender::draw::gpencil::gpencil_object_cache_sort | ( | Instance * | inst | ) |
Definition at line 149 of file gpencil_cache_utils.cc.
Referenced by blender::draw::gpencil::Instance::draw().
|
static |
Definition at line 77 of file gpencil_draw_data.cc.
References add_v3_fl(), and clamp_v3().
Referenced by gpencil_viewport_material_overrides().
|
static |
Definition at line 134 of file gpencil_cache_utils.cc.
References b.
|
static |
Definition at line 56 of file gpencil_draw_data.cc.
References copy_v2_v2(), rescale_m4(), rotate_m4(), blender::math::scale(), translate_m4(), and unit_m4().
Referenced by gpencil_material_pool_create().
|
static |
Definition at line 91 of file gpencil_draw_data.cc.
References Object::color, copy_v3_v3(), copy_v4_fl(), copy_v4_v4(), MaterialGPencilStyle::fill_rgba, MaterialGPencilStyle::fill_style, GP_MATERIAL_FILL_STYLE_GRADIENT, GP_MATERIAL_FILL_STYLE_SOLID, GP_MATERIAL_FILL_STYLE_TEXTURE, GP_MATERIAL_STROKE_STYLE_SOLID, GP_MATERIAL_STROKE_STYLE_TEXTURE, gpencil_shade_color(), MaterialGPencilStyle::ima, MaterialGPencilStyle::mix_factor, MaterialGPencilStyle::mix_stroke_factor, MaterialGPencilStyle::sima, MaterialGPencilStyle::stroke_rgba, MaterialGPencilStyle::stroke_style, V3D_LIGHTING_FLAT, V3D_SHADING_MATERIAL_COLOR, V3D_SHADING_OBJECT_COLOR, V3D_SHADING_RANDOM_COLOR, V3D_SHADING_SINGLE_COLOR, V3D_SHADING_TEXTURE_COLOR, V3D_SHADING_VERTEX_COLOR, and blender::draw::gpencil::Instance::v3d_single_color.
Referenced by gpencil_material_pool_create().
| tLayer * blender::draw::gpencil::grease_pencil_layer_cache_add | ( | Instance * | inst, |
| const Object * | ob, | ||
| const bke::greasepencil::Layer & | layer, | ||
| const int | onion_id, | ||
| const bool | is_used_as_mask, | ||
| tObject * | tgp_ob ) |
Definition at line 296 of file gpencil_cache_utils.cc.
References blender::draw::detail::SubPassVector< T, block_size >::append_and_get_index(), TreeNode::as_layer(), GreasePencilLayer::base, GreasePencilLayer::blend_mode, blender::draw::gpencil::tLayer::blend_ps, BLI_BITMAP_SET, BLI_bitmap_set_all(), BLI_LINKS_APPEND, BLI_listbase_is_empty(), BLI_memblock_alloc(), blender::StringRefNull::c_str(), DRW_object_get_data_for_drawing(), DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_STENCIL_EQUAL, DRW_STATE_WRITE_COLOR, Object::dtx, GreasePencilLayerTreeNode::flag, GP_LAYER_BLEND_NONE, GP_LAYER_MASK_HIDE, GP_LAYER_MASK_INVERT, blender::draw::gpencil::Instance::gp_layer_pool, GP_LAYER_TREE_NODE_DISABLE_MASKS_IN_VIEWLAYER, blender::draw::gpencil::Instance::gp_maskbit_pool, GP_MAX_MASKBITS, grease_pencil_layer_final_opacity_get(), grease_pencil_layer_final_tint_and_alpha_get(), blender::math::invert(), blender::StringRefBase::is_empty(), blender::draw::gpencil::tLayer::is_onion, blender::draw::gpencil::Instance::is_render, blender::draw::gpencil::tLayer::layer_id, blender::draw::gpencil::tObject::layers, LISTBASE_FOREACH, mask(), blender::draw::gpencil::tLayer::mask_bits, blender::draw::gpencil::tLayer::mask_invert_bits, GreasePencilLayer::masks, Object::mode, ViewLayer::name, OB_DRAW_IN_FRONT, OB_MODE_PAINT_GREASE_PENCIL, OB_MODE_VERTEX_PAINT, state, STREQ, blender::draw::gpencil::Instance::use_mask_fb, blender::draw::gpencil::Instance::v3d_color_type, V3D_SHADING_VERTEX_COLOR, blender::draw::gpencil::Instance::vertex_paint_opacity, blender::draw::gpencil::Instance::view_layer, blender::bke::greasepencil::Layer::view_layer_name(), and blender::draw::gpencil::Instance::xray_alpha.
| tLayer * blender::draw::gpencil::grease_pencil_layer_cache_get | ( | tObject * | tgp_ob, |
| int | layer_id, | ||
| const bool | skip_onion ) |
Definition at line 282 of file gpencil_cache_utils.cc.
References BLI_assert, blender::draw::gpencil::tObject::first, blender::draw::gpencil::tObject::layers, and blender::draw::gpencil::tLayer::next.
|
static |
Definition at line 195 of file gpencil_cache_utils.cc.
Referenced by grease_pencil_layer_cache_add().
|
static |
Definition at line 217 of file gpencil_cache_utils.cc.
Referenced by grease_pencil_layer_cache_add().
|
static |
Definition at line 267 of file gpencil_cache_utils.cc.
Definition at line 135 of file gpencil_cache_utils.cc.
| BLI_INLINE void blender::draw::gpencil::insert_list | ( | struct SortInfo * | si, |
| list_node * | list, | ||
| unsigned int | rank ) |
The 'ranks' array essentially captures the recursion stack of a merge-sort. The merge tree is built in a bottom-up manner. The control loop for updating the 'ranks' array is analogous to incrementing a binary integer, and the O(n) time for counting upto n translates to O(n) merges when inserting rank-0 lists. When we plug in the sizes of the lists involved in those merges, we get the O(n log n) time for the sort.
Inserting higher-ranked lists reduce the height of the merge tree, and also eliminate a lot of redundant comparisons when merging two lists that would've been part of the same run. Adding a rank-i list is analogous to incrementing a binary integer by 2**i in one operation, thus sharing a similar speedup.
When inserting higher-ranked lists, we choose to clear out the lower ranks in the interests of keeping the sort stable, but this makes analysis harder. Note that clearing the lower-ranked lists is O(length(list))-- thus it shouldn't affect the O(n log n) behavior. In other words, inserting one rank-i list is equivalent to inserting 2**i rank-0 lists, thus even if we do i additional merges in the clearing-out (taking at most 2**i time) we are still fine. Pre-condition: 2**(rank+1) <= length(list) < 2**(rank+2) (therefore: length(list) >= 2)
Definition at line 223 of file gpencil_cache_utils.cc.
References GreasePencilOnionSkinningSettings::flag, GP_ONION_SKINNING_USE_CUSTOM_COLORS, GP_ONION_SKINNING_USE_FADE, GreasePencil::onion_skinning_settings, and GreasePencilOnionSkinningSettings::opacity.
Definition at line 361 of file gpencil_draw_data.cc.
References ELEM, LA_AREA, LA_LOCAL, LA_SPOT, and M_PI.
Referenced by gpencil_light_pool_populate().
| BLI_INLINE list_node * blender::draw::gpencil::list_sort_do | ( | list_node * | list, |
| CompareFn | func ) |
Main sort function.
Definition at line 268 of file gpencil_cache_utils.cc.
References BLI_ghashutil_strhash_p_murmur(), BLI_hash_int_01(), hsv_to_rgb_v(), Object::id, IMB_colormanagement_rec709_to_scene_linear(), and ID::name.
|
inline |
Definition at line 153 of file gpencil_cache_utils.cc.
|
static |
Definition at line 32 of file gpencil_render.cc.
References clamp_f(), fabsf, and view.
Referenced by render_init_buffers().
|
static |
Definition at line 309 of file gpencil_render.cc.
References SceneGpencil::aa_samples, blender::draw::gpencil::Instance::antialiasing_accumulate(), blender::draw::gpencil::Instance::antialiasing_sample_get(), blender::draw::gpencil::Instance::begin_sync(), blender::draw::Manager::begin_sync(), BKE_curvemapping_changed(), BLI_assert, blender::draw::gpencil::Instance::camera, cdf_from_curvemapping(), cdf_invert(), ceil_to_multiple_u(), RenderData::cfra, clamp_f(), CM_TABLE, DEG_get_evaluated(), depsgraph, blender::draw::gpencil::Instance::draw(), DRW_object_visibility_in_active_context(), DRW_render_object_iter(), DRW_render_set_time(), ELEM, blender::draw::gpencil::Instance::end_sync(), blender::draw::Manager::end_sync(), blender::Array< T, InlineBufferCapacity, Allocator >::first(), floorf, fractf, RenderData::gauss, Scene::grease_pencil_settings, i, blender::draw::gpencil::Instance::init(), ViewLayer::layflag, max_ii(), RenderData::mblur_shutter_curve, RenderData::mode, RenderData::motion_blur_position, RenderData::motion_blur_shutter, SceneGpencil::motion_blur_steps, OB_GREASE_PENCIL, OB_LAMP, OB_VISIBLE_SELF, blender::draw::ObjectRef::object, blender::draw::gpencil::Instance::object_sync(), Scene::r, R_MBLUR, RenderEngine::re, RE_engine_frame_set(), RE_GetCamera(), blender::draw::gpencil::Instance::render_color_tx, render_init_buffers(), render_set_view(), SCE_LAY_MOTION_BLUR, DRWContext::scene, shutter_time_to_scene_time(), blender::Array< T, InlineBufferCapacity, Allocator >::size(), blender::draw::Texture::size(), RenderData::subframe, Object::type, and DRWContext::view_layer.
Referenced by blender::draw::gpencil::Engine::render_to_image().
|
static |
Definition at line 68 of file gpencil_render.cc.
References BLI_rcti_size_x(), BLI_rcti_size_y(), ImBufFloatBuffer::data, blender::draw::View::default_get(), blender::draw::Framebuffer::ensure(), blender::draw::Texture::ensure_2d(), ImBuf::float_buffer, GPU_ATTACHMENT_TEXTURE, GPU_DATA_FLOAT, GPU_framebuffer_bind(), GPU_framebuffer_clear_color(), GPU_framebuffer_clear_depth(), GPU_texture_update(), GPU_texture_update_sub(), GPU_TEXTURE_USAGE_ATTACHMENT, GPU_TEXTURE_USAGE_HOST_READ, GPU_TEXTURE_USAGE_SHADER_READ, RenderPass::ibuf, blender::draw::Texture::is_valid(), MEM_dupallocN(), MEM_SAFE_FREE, RenderEngine::re, RE_engine_set_error_message(), RE_GetActiveRenderView(), RE_pass_find_by_name(), RE_PASSNAME_COMBINED, RE_PASSNAME_DEPTH, RenderPass::rectx, RenderPass::recty, remap_depth(), blender::draw::gpencil::Instance::render_color_tx, blender::draw::gpencil::Instance::render_depth_tx, blender::draw::gpencil::Instance::render_fb, size(), view, DRWContext::viewport_size_get(), w(), x, rcti::xmax, rcti::xmin, y, rcti::ymax, and rcti::ymin.
Referenced by render_frame(), and blender::draw::gpencil::Engine::render_to_image().
|
static |
Definition at line 213 of file gpencil_render.cc.
References blender::draw::gpencil::Instance::accumulation_tx, BLI_rcti_size_x(), BLI_rcti_size_y(), ImBufFloatBuffer::data, blender::draw::Framebuffer::ensure(), ImBuf::float_buffer, GPU_ATTACHMENT_NONE, GPU_ATTACHMENT_TEXTURE, GPU_DATA_FLOAT, GPU_framebuffer_bind(), GPU_framebuffer_read_color(), RenderPass::ibuf, RE_pass_find_by_name(), RE_PASSNAME_COMBINED, rcti::xmin, and rcti::ymin.
Referenced by blender::draw::gpencil::Engine::render_to_image().
|
static |
Definition at line 234 of file gpencil_render.cc.
References blender::draw::gpencil::Instance::accumulation_tx, BLI_rcti_size_x(), BLI_rcti_size_y(), data, blender::draw::Framebuffer::ensure(), GPU_ATTACHMENT_NONE, GPU_ATTACHMENT_TEXTURE, GPU_DATA_FLOAT, GPU_framebuffer_bind(), GPU_framebuffer_read_color(), rcti::xmin, and rcti::ymin.
Referenced by blender::draw::gpencil::Engine::render_to_image().
|
static |
Definition at line 155 of file gpencil_render.cc.
References BLI_rcti_size_x(), BLI_rcti_size_y(), ImBufFloatBuffer::data, blender::draw::View::default_get(), fabsf, blender::draw::View::far_clip(), ImBuf::float_buffer, GPU_DATA_FLOAT, GPU_framebuffer_read_depth(), i, RenderPass::ibuf, blender::draw::View::near_clip(), ViewLayer::passflag, RE_pass_find_by_name(), RE_PASSNAME_DEPTH, blender::draw::gpencil::Instance::render_fb, SCE_PASS_DEPTH, DRWContext::view_layer, blender::draw::View::winmat(), rcti::xmin, and rcti::ymin.
Referenced by blender::draw::gpencil::Engine::render_to_image().
|
static |
Definition at line 53 of file gpencil_render.cc.
References depsgraph.
Referenced by render_frame(), and blender::draw::gpencil::Engine::render_to_image().
|
static |
Definition at line 285 of file gpencil_render.cc.
References BLI_assert_msg, SCE_MB_CENTER, SCE_MB_END, and SCE_MB_START.
Referenced by render_frame().
| BLI_INLINE list_node * blender::draw::gpencil::sweep_up | ( | struct SortInfo * | si, |
| list_node * | list, | ||
| unsigned int | upto ) |
Pre-condition: upto <= si->n_ranks, list == NULL || length(list) == 1
Definition at line 184 of file gpencil_cache_utils.cc.