|
Blender V5.0
|
#include <eevee_sync.hh>
Public Member Functions | |
| SyncModule (Instance &inst) | |
| ~SyncModule () | |
Recalc | |
| ObjectHandle & | sync_object (const ObjectRef &ob_ref) |
| WorldHandle | sync_world (const ::World &world) |
Mesh | |
| void | sync_mesh (Object *ob, ObjectHandle &ob_handle, const ObjectRef &ob_ref) |
| bool | sync_sculpt (Object *ob, ObjectHandle &ob_handle, const ObjectRef &ob_ref) |
Point Cloud | |
| void | sync_pointcloud (Object *ob, ObjectHandle &ob_handle, const ObjectRef &ob_ref) |
Volume Objects | |
| void | sync_volume (Object *ob, ObjectHandle &ob_handle, const ObjectRef &ob_ref) |
Hair | |
| void | sync_curves (Object *ob, ObjectHandle &ob_handle, const ObjectRef &ob_ref, ResourceHandleRange res_handle={}, ModifierData *modifier_data=nullptr, ParticleSystem *particle_sys=nullptr) |
Definition at line 45 of file eevee_sync.hh.
|
inline |
Definition at line 52 of file eevee_sync.hh.
|
inline |
Definition at line 53 of file eevee_sync.hh.
| void blender::eevee::SyncModule::sync_curves | ( | Object * | ob, |
| ObjectHandle & | ob_handle, | ||
| const ObjectRef & | ob_ref, | ||
| ResourceHandleRange | res_handle = {}, | ||
| ModifierData * | modifier_data = nullptr, | ||
| ParticleSystem * | particle_sys = nullptr ) |
Definition at line 398 of file eevee_sync.cc.
References blender::eevee::Material::capture, CURVES_MATERIAL_NR, blender::draw::curves_sub_pass_setup(), blender::draw::detail::PassBase< DrawCommandBufType >::draw(), error(), GPU_material_get_material(), GPU_material_has_displacement_output(), blender::eevee::MaterialPass::gpumat, blender::draw::hair_sub_pass_setup(), blender::eevee::Material::has_surface, blender::eevee::Material::has_transparent_shadows, blender::eevee::Material::has_volume, Material::inflate_bounds, blender::eevee::Material::is_alpha_blend_transparent, blender::draw::ResourceHandleRange::is_valid(), blender::eevee::Material::lightprobe_sphere_prepass, blender::eevee::Material::lightprobe_sphere_shading, blender::eevee::MAT_GEOM_CURVES, blender::eevee::ObjectHandle::object_key, ParticleSettings::omat, blender::eevee::Material::overlap_masking, ParticleSystem::part, blender::eevee::Material::planar_probe_prepass, blender::eevee::Material::planar_probe_shading, blender::eevee::Material::prepass, blender::eevee::BaseHandle::recalc, blender::eevee::Material::shading, blender::eevee::Material::shadow, blender::eevee::Material::volume_material, and blender::eevee::Material::volume_occupancy.
| void blender::eevee::SyncModule::sync_mesh | ( | Object * | ob, |
| ObjectHandle & | ob_handle, | ||
| const ObjectRef & | ob_ref ) |
Do not render objects with display type lower than solid when in material preview mode.
Definition at line 89 of file eevee_sync.cc.
References blender::eevee::Material::capture, blender::draw::DRW_cache_object_surface_material_get(), Object::dt, blender::eevee::geometry_call(), GPU_material_get_material(), GPU_material_has_displacement_output(), blender::eevee::MaterialArray::gpu_materials, blender::eevee::Material::has_surface, blender::eevee::Material::has_transparent_shadows, blender::eevee::Material::has_volume, i, Vector< T, InlineBufferCapacity, Allocator >::index_range(), Material::inflate_bounds, blender::eevee::Material::is_alpha_blend_transparent, blender::Span< T >::is_empty(), blender::eevee::Material::lightprobe_sphere_prepass, blender::eevee::Material::lightprobe_sphere_shading, blender::eevee::MaterialArray::materials, blender::math::max(), OB_RENDER, OB_SOLID, blender::eevee::ObjectHandle::object_key, blender::eevee::Material::overlap_masking, blender::eevee::Material::planar_probe_prepass, blender::eevee::Material::planar_probe_shading, blender::eevee::Material::prepass, blender::eevee::BaseHandle::recalc, blender::eevee::Material::shading, blender::eevee::Material::shadow, blender::eevee::MaterialPass::sub_pass, blender::eevee::volume_call(), blender::eevee::Material::volume_material, and blender::eevee::Material::volume_occupancy.
| ObjectHandle & blender::eevee::SyncModule::sync_object | ( | const ObjectRef & | ob_ref | ) |
Definition at line 32 of file eevee_sync.cc.
References blender::eevee::ObjectHandle::object_key, and blender::eevee::BaseHandle::recalc.
Referenced by blender::eevee::step_object_sync_render().
| void blender::eevee::SyncModule::sync_pointcloud | ( | Object * | ob, |
| ObjectHandle & | ob_handle, | ||
| const ObjectRef & | ob_ref ) |
Definition at line 255 of file eevee_sync.cc.
References blender::eevee::Material::capture, blender::draw::detail::PassBase< DrawCommandBufType >::draw(), GPU_material_get_material(), GPU_material_has_displacement_output(), blender::eevee::MaterialPass::gpumat, blender::eevee::Material::has_surface, blender::eevee::Material::has_transparent_shadows, blender::eevee::Material::has_volume, Material::inflate_bounds, blender::eevee::Material::is_alpha_blend_transparent, blender::eevee::Material::lightprobe_sphere_prepass, blender::eevee::Material::lightprobe_sphere_shading, blender::eevee::MAT_GEOM_POINTCLOUD, blender::eevee::ObjectHandle::object_key, blender::eevee::Material::overlap_masking, blender::eevee::Material::planar_probe_prepass, blender::eevee::Material::planar_probe_shading, POINTCLOUD_MATERIAL_NR, blender::draw::pointcloud_sub_pass_setup(), blender::eevee::Material::prepass, blender::draw::detail::PassBase< DrawCommandBufType >::push_constant(), blender::eevee::BaseHandle::recalc, blender::eevee::Material::shading, blender::eevee::Material::shadow, blender::draw::detail::PassBase< DrawCommandBufType >::sub(), blender::eevee::MaterialPass::sub_pass, blender::eevee::Material::volume_material, and blender::eevee::Material::volume_occupancy.
| bool blender::eevee::SyncModule::sync_sculpt | ( | Object * | ob, |
| ObjectHandle & | ob_handle, | ||
| const ObjectRef & | ob_ref ) |
Definition at line 173 of file eevee_sync.cc.
References batch, BKE_sculptsession_use_pbvh_draw(), blender::eevee::Material::capture, blender::eevee::geometry_call(), GPU_material_get_material(), GPU_material_has_displacement_output(), blender::eevee::MaterialArray::gpu_materials, blender::eevee::Material::has_surface, blender::eevee::Material::has_transparent_shadows, blender::eevee::Material::has_volume, Material::inflate_bounds, blender::eevee::Material::is_alpha_blend_transparent, blender::eevee::Material::lightprobe_sphere_prepass, blender::eevee::Material::lightprobe_sphere_shading, blender::eevee::MaterialArray::materials, blender::math::max(), blender::draw::ObjectRef::object, blender::eevee::Material::overlap_masking, blender::eevee::Material::planar_probe_prepass, blender::eevee::Material::planar_probe_shading, blender::eevee::Material::prepass, blender::draw::sculpt_batches_per_material_get(), blender::eevee::Material::shading, blender::eevee::Material::shadow, blender::eevee::MaterialPass::sub_pass, blender::eevee::volume_call(), blender::eevee::Material::volume_material, and blender::eevee::Material::volume_occupancy.
| void blender::eevee::SyncModule::sync_volume | ( | Object * | ob, |
| ObjectHandle & | ob_handle, | ||
| const ObjectRef & | ob_ref ) |
Definition at line 335 of file eevee_sync.cc.
References BLI_listbase_is_empty(), blender::draw::detail::PassBase< DrawCommandBufType >::draw(), GPU_material_attributes(), GPU_material_has_volume_output(), blender::eevee::MaterialPass::gpumat, blender::eevee::MAT_GEOM_VOLUME, blender::eevee::MaterialPass::sub_pass, blender::eevee::Material::volume_material, VOLUME_MATERIAL_NR, blender::eevee::Material::volume_occupancy, and blender::draw::volume_sub_pass().
| WorldHandle blender::eevee::SyncModule::sync_world | ( | const ::World & | world | ) |
Definition at line 47 of file eevee_sync.cc.
References blender::eevee::BaseHandle::recalc.