|
Blender
V2.93
|
#include <DNA_pointcache_types.h>
Public Attributes | |
| struct PointCache * | next |
| struct PointCache * | prev |
| int | flag |
| int | step |
| int | simframe |
| int | startframe |
| int | endframe |
| int | editframe |
| int | last_exact |
| int | last_valid |
| char | _pad [4] |
| int | totpoint |
| int | index |
| short | compression |
| short | rt |
| char | name [64] |
| char | prev_name [64] |
| char | info [128] |
| char | path [1024] |
| char * | cached_frames |
| int | cached_frames_len |
| char | _pad1 [4] |
| struct ListBase | mem_cache |
| struct PTCacheEdit * | edit |
| void(* | free_edit )(struct PTCacheEdit *edit) |
Definition at line 71 of file DNA_pointcache_types.h.
| char PointCache::_pad[4] |
Definition at line 103 of file DNA_pointcache_types.h.
| char PointCache::_pad1[4] |
Definition at line 124 of file DNA_pointcache_types.h.
| char* PointCache::cached_frames |
Array of length endframe - startframe + 1 with flags to indicate cached frames. Can be later used for other per frame flags too if needed.
Definition at line 122 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_free(), BKE_ptcache_id_clear(), BKE_ptcache_id_exist(), BKE_ptcache_id_time(), BKE_ptcache_load_external(), BKE_ptcache_toggle_disk_cache(), BKE_ptcache_write(), direct_link_pointcache(), ptcache_copy(), and timeline_cache_find_next_cached_segment().
| int PointCache::cached_frames_len |
Definition at line 123 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_id_time(), BKE_ptcache_load_external(), BKE_ptcache_toggle_disk_cache(), direct_link_pointcache(), and ptcache_copy().
| short PointCache::compression |
Definition at line 110 of file DNA_pointcache_types.h.
Referenced by ptcache_mem_frame_to_disk().
| struct PTCacheEdit* PointCache::edit |
Definition at line 128 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_free(), cloth_clear_cache(), direct_link_pointcache(), PE_create_particle_edit(), pe_get_current(), PE_get_current_from_psys(), psys_check_edited(), psys_in_edit_mode(), ptcache_copy(), and ptcache_free_bake().
| int PointCache::editframe |
Frame being edited (runtime only).
Definition at line 98 of file DNA_pointcache_types.h.
| int PointCache::endframe |
Simulation end frame.
Definition at line 96 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_add(), BKE_ptcache_bake(), BKE_ptcache_disk_to_mem(), BKE_ptcache_id_clear(), BKE_ptcache_id_exist(), BKE_ptcache_id_time(), BKE_ptcache_load_external(), BKE_ptcache_update_info(), copyData(), dynamicPaint_frameUpdate(), init_particle_interpolation(), ptcache_find_frames_around(), ptcache_write_needed(), system_step(), timeline_cache_draw_single(), and timeline_cache_find_next_cached_segment().
| int PointCache::flag |
Generic flag.
Definition at line 74 of file DNA_pointcache_types.h.
Referenced by BKE_fluid_modifier_create_type_data(), BKE_modifier_blend_read_data(), BKE_modifier_blend_write(), BKE_ptcache_bake(), BKE_ptcache_disk_to_mem(), BKE_ptcache_id_clear(), BKE_ptcache_id_exist(), BKE_ptcache_id_reset(), BKE_ptcache_id_time(), BKE_ptcache_invalidate(), BKE_ptcache_load_external(), BKE_ptcache_mem_to_disk(), BKE_ptcache_object_reset(), BKE_ptcache_read(), BKE_ptcache_toggle_disk_cache(), BKE_ptcache_update_info(), BKE_ptcache_validate(), BKE_ptcache_write(), blo_do_versions_270(), blo_do_versions_pre250(), cached_step(), clothModifier_do(), direct_link_pointcache(), DRW_object_is_visible_psys_in_active_context(), dynamicPaint_frameUpdate(), modifyMesh(), object_cacheIgnoreClear(), particles_are_dynamic(), PE_create_particle_edit(), pe_get_current(), PE_get_current_from_psys(), psys_clear_temp_pointcache(), psys_get_current_display_percentage(), psys_make_temp_pointcache(), psys_update_path_cache(), ptcache_bake_from_cache_exec(), ptcache_copy(), ptcache_file_open(), ptcache_filename(), ptcache_filename_ext_append(), ptcache_find_frames_around(), ptcache_free_bake(), ptcache_interpolate(), ptcache_path(), ptcache_poll(), ptcache_read(), ptcache_write(), ptcache_write_needed(), reset_particle(), sbObjectStep(), special_aftertrans_update__object(), system_step(), timeline_cache_modify_color_based_on_state(), and tot_particles().
| void(* PointCache::free_edit) (struct PTCacheEdit *edit) |
Free callback.
Definition at line 130 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_free(), direct_link_pointcache(), and PE_create_particle_edit().
| int PointCache::index |
Modifier stack index.
Definition at line 109 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_add(), BKE_ptcache_id_from_cloth(), BKE_ptcache_id_from_dynamicpaint(), BKE_ptcache_id_from_particles(), BKE_ptcache_id_from_rigidbody(), BKE_ptcache_id_from_smoke(), BKE_ptcache_id_from_softbody(), BKE_ptcache_load_external(), BKE_ptcache_toggle_disk_cache(), and ptcache_filename_ext_append().
| char PointCache::info[128] |
Definition at line 114 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_update_info().
| int PointCache::last_exact |
Last exact frame that's cached.
Definition at line 100 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_bake(), BKE_ptcache_id_clear(), BKE_ptcache_invalidate(), BKE_ptcache_read(), BKE_ptcache_toggle_disk_cache(), BKE_ptcache_update_info(), BKE_ptcache_write(), clothModifier_do(), sbObjectStep(), and system_step().
| int PointCache::last_valid |
Used for editing cache - what is the last baked frame.
Definition at line 102 of file DNA_pointcache_types.h.
| struct ListBase PointCache::mem_cache |
Definition at line 124 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_disk_to_mem(), BKE_ptcache_free(), BKE_ptcache_id_clear(), BKE_ptcache_id_exist(), BKE_ptcache_id_time(), BKE_ptcache_mem_to_disk(), BKE_ptcache_update_info(), direct_link_pointcache(), get_pointcache_keys_for_time(), get_pointcache_times_for_particle(), PE_create_particle_edit(), psys_clear_temp_pointcache(), psys_get_dietime_from_cache(), psys_make_temp_pointcache(), ptcache_copy(), ptcache_find_frames_around(), ptcache_interpolate(), ptcache_read(), ptcache_write(), ptcache_write_needed(), reset_particle(), undoptcache_from_editcache(), and undoptcache_to_editcache().
| char PointCache::name[64] |
Definition at line 112 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_disk_cache_rename(), and ptcache_filename().
| struct PointCache* PointCache::next |
Definition at line 72 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_copy_list().
| char PointCache::path[1024] |
File path, 1024 = FILE_MAX.
Definition at line 116 of file DNA_pointcache_types.h.
Referenced by ptcache_path().
| struct PointCache * PointCache::prev |
Definition at line 72 of file DNA_pointcache_types.h.
| char PointCache::prev_name[64] |
Definition at line 113 of file DNA_pointcache_types.h.
| short PointCache::rt |
Definition at line 110 of file DNA_pointcache_types.h.
| int PointCache::simframe |
Current frame of simulation (only if SIMULATION_VALID).
Definition at line 92 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_invalidate(), BKE_ptcache_read(), BKE_ptcache_validate(), clothModifier_do(), direct_link_pointcache(), ptcache_copy(), sbObjectStep(), and system_step().
| int PointCache::startframe |
Simulation start frame.
Definition at line 94 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_add(), BKE_ptcache_bake(), BKE_ptcache_disk_to_mem(), BKE_ptcache_id_clear(), BKE_ptcache_id_exist(), BKE_ptcache_id_time(), BKE_ptcache_invalidate(), BKE_ptcache_load_external(), BKE_ptcache_update_info(), BKE_ptcache_write(), copyData(), dynamicPaint_frameUpdate(), eevee_volume_object_mesh_init(), init_particle_interpolation(), OVERLAY_volume_extra(), ptcache_find_frames_around(), ptcache_write(), ptcache_write_needed(), scene_blend_read_data(), system_step(), timeline_cache_draw_cached_segments(), timeline_cache_draw_single(), timeline_cache_find_next_cached_segment(), and timeline_cache_segments_count().
| int PointCache::step |
The number of frames between cached frames. This should probably be an upper bound for a per point adaptive step in the future, but for now it's the same for all points. Without adaptivity this can effect the perceived simulation quite a bit though. If for example particles are colliding with a horizontal plane (with high damping) they quickly come to a stop on the plane, however there are still forces acting on the particle (gravity and collisions), so the particle velocity isn't necessarily zero for the whole duration of the frame even if the particle seems stationary. If all simulation frames aren't cached (step > 1) these velocities are interpolated into movement for the non-cached frames. The result will look like the point is oscillating around the collision location. So for now cache step should be set to 1 for accurate reproduction of collisions.
Definition at line 89 of file DNA_pointcache_types.h.
Referenced by BKE_fluid_modifier_create_type_data(), BKE_modifier_blend_write(), BKE_ptcache_add(), blo_do_versions_pre250(), copyData(), dynamics_step(), initData(), ptcache_add_new_exec(), ptcache_particle_interpolate(), ptcache_particle_totwrite(), ptcache_particle_write(), and ptcache_write_needed().
| int PointCache::totpoint |
Number of cached points.
Definition at line 107 of file DNA_pointcache_types.h.
Referenced by BKE_ptcache_load_external(), BKE_ptcache_update_info(), and tot_particles().