|
Blender V4.3
|
#include <algorithm>#include <cmath>#include <cstdarg>#include <cstddef>#include <cstdlib>#include "MEM_guardedalloc.h"#include "DNA_curve_types.h"#include "DNA_listBase.h"#include "DNA_mesh_types.h"#include "DNA_object_force_types.h"#include "DNA_object_types.h"#include "DNA_particle_types.h"#include "DNA_scene_types.h"#include "DNA_texture_types.h"#include "BLI_blenlib.h"#include "BLI_ghash.h"#include "BLI_math_base_safe.h"#include "BLI_math_matrix.h"#include "BLI_math_rotation.h"#include "BLI_math_vector.h"#include "BLI_noise.h"#include "BLI_rand.h"#include "BLI_time.h"#include "BLI_utildefines.h"#include "BKE_anim_path.h"#include "BKE_bvhutils.hh"#include "BKE_collection.hh"#include "BKE_collision.h"#include "BKE_curve.hh"#include "BKE_displist.h"#include "BKE_effect.h"#include "BKE_fluid.h"#include "BKE_global.hh"#include "BKE_modifier.hh"#include "BKE_object.hh"#include "BKE_object_types.hh"#include "BKE_particle.h"#include "DEG_depsgraph.hh"#include "DEG_depsgraph_physics.hh"#include "DEG_depsgraph_query.hh"#include "RE_texture.h"Go to the source code of this file.
Macros | |
| #define | rot(x, k) (((x) << (k)) | ((x) >> (32 - (k)))) |
Variables | |
| SimDebugData * | _sim_debug_data = nullptr |
| #define rot | ( | x, | |
| k ) (((x) << (k)) | ((x) >> (32 - (k)))) |
Referenced by TransformWriter::add_joint_transform(), TransformWriter::add_node_transform_identity(), TransformWriter::add_node_transform_ob(), add_primitive_circle_exec(), add_primitive_cone_exec(), add_primitive_cube_exec(), add_primitive_cylinder_exec(), add_primitive_grid_exec(), add_primitive_icosphere_exec(), add_primitive_monkey_exec(), add_primitive_plane_exec(), add_primitive_uvsphere_exec(), blender::ed::object::add_type(), blender::ed::object::add_type_with_obdata(), btSoftBody::appendDeformableAnchor(), AnimationImporter::apply_matrix_curves(), AnimationImporter::Assign_transform_animations(), bc_create_restpose_mat(), BKE_object_apply_mat4_ex(), BKE_object_tfm_copy(), BKE_object_tfm_protected_backup(), BKE_pchan_apply_mat4(), BKE_pose_rest(), BKE_sim_debug_data_hash_combine(), BKE_vfont_build_char(), blender::math::DualQuaternionBase< T >::BLI_STRUCT_EQUALITY_OPERATORS_5(), build_underline(), cloth_parallel_transport_hair_frame(), IK_QOrientationTask::ComputeJacobian(), convert_pose(), convert_tree(), blender::io::usd::USDMaterialReader::convert_usd_transform_2d(), blender::io::grease_pencil::GreasePencilImporter::create_object(), blender::io::usd::create_transform2d_shader(), curvesurf_prim_add(), diagonalize(), do_kink_spiral(), do_kink_spiral_deform(), btSoftColliders::CollideSDF_RD::DoNode(), btSoftColliders::CollideSDF_RDF::DoNode(), blender::ed::object::effector_add_exec(), explodeMesh(), blender::geometry::extend_curves_curved(), get_auto_filter(), blender::bke::greasepencil::get_stroke_to_texture_matrix(), GetJointRotation(), KDL::TwistAcc::GetTwist(), KDL::TwistVel::GetTwist(), KDL::TwistAcc::GetTwistDot(), KDL::TwistVel::GetTwistDot(), blender::ed::greasepencil::grease_pencil_primitive_rotate_all_update(), IK_CreateSegment(), IK_SolverAddGoalOrientation(), init_meta(), blender::ed::object::init_transform_on_add(), btDeformableMultiBodyDynamicsWorld::integrateTransforms(), blender::ed::object::lightprobe_add_exec(), loc_rot_size_to_mat4(), make_prim_init(), mat3_to_rot_size(), mat4_decompose(), mat4_to_loc_rot_size(), mat4_to_rot(), Matrix_decompose(), Matrix_to_scale(), modify_mesh(), blender::ed::object::new_primitive_matrix(), blender::ed::object::object_add_exec(), blender::ed::object::object_add_text_exec(), blender::ed::object::object_armature_add_exec(), blender::ed::object::object_camera_add_exec(), blender::ed::object::object_curves_random_add_exec(), blender::ed::object::object_data_instance_add_exec(), blender::ed::object::object_empty_add_exec(), blender::ed::object::object_grease_pencil_add_exec(), blender::ed::object::object_image_add_exec(), blender::ed::object::object_light_add_exec(), blender::ed::object::object_metaball_add_exec(), blender::ed::object::object_pointcloud_add_exec(), blender::ed::object::object_speaker_add_exec(), blender::ed::object::object_transform_apply_exec(), blender::ed::object::object_volume_add(), ObjectToTransData(), KDL::Twist::operator()(), KDL::Twist::operator()(), KDL::Twist::operator+=(), KDL::TwistAcc::operator+=(), KDL::TwistVel::operator+=(), KDL::Twist::operator-=(), KDL::TwistAcc::operator-=(), KDL::TwistVel::operator-=(), blender::draw::pack_rotation_aspect_hardness(), pivotcon_evaluate(), psys_cache_edit_paths_iter(), psys_cache_paths(), psys_get_birth_coords(), psys_get_from_key(), psys_thread_create_path(), ptcache_particle_interpolate(), radial_control_paint_tex(), RB_body_new(), RB_body_set_loc_rot(), RB_compound_add_child_shape(), KDL::Twist::RefPoint(), KDL::TwistAcc::RefPoint(), KDL::TwistVel::RefPoint(), KDL::Twist::ReverseSign(), KDL::TwistAcc::ReverseSign(), KDL::TwistVel::ReverseSign(), btSoftBody::rotate(), blender::bke::subdiv::rotate_indices(), BCMatrix::rotation(), blender::ed::object::rotation_from_quat(), blender::ed::object::rotation_from_view(), set_plane_exec(), blender::io::usd::USDTransformWriter::set_xform_ops(), setUpVector(), setWorldToBaseRot(), blender::ed::sculpt_paint::pose::solve_ik_chain(), blender::ed::sculpt_paint::pose::solve_roll_chain(), testAngLimits(), transform_evaluate(), txt_add_object(), wm_gizmo_set_matrix_rotation_from_z_axis__internal(), and wm_xr_navigation_reset_exec().
|
static |
Definition at line 178 of file effect.cc.
References BLI_addtail(), depsgraph, EffectorCache::depsgraph, EffectorCache::frame, MEM_callocN, EffectorCache::ob, EffectorCache::pd, precalculate_effector(), EffectorCache::psys, EffectorCache::scene, and scene.
Referenced by BKE_effectors_create().
|
static |
Definition at line 164 of file effect.cc.
References BLI_addtail(), MEM_callocN, EffectorRelation::ob, EffectorRelation::pd, and EffectorRelation::psys.
Referenced by BKE_effector_relations_create().
| EffectorWeights * BKE_effector_add_weights | ( | Collection * | collection | ) |
Definition at line 57 of file effect.cc.
References EffectorWeights::global_gravity, EffectorWeights::group, MEM_callocN, NUM_PFIELD_TYPES, and EffectorWeights::weight.
Referenced by BKE_fluid_modifier_create_type_data(), BKE_modifier_blend_read_data(), do_versions_after_linking_400(), dynamicPaint_createNewSurface(), init_data(), object_blend_read_data(), particle_settings_blend_read_data(), particle_settings_init(), sbNew(), and scene_blend_read_data().
| ListBase * BKE_effector_relations_create | ( | Depsgraph * | depsgraph, |
| const Scene * | scene, | ||
| ViewLayer * | view_layer, | ||
| Collection * | collection ) |
Definition at line 202 of file effect.cc.
References add_effector_relation(), BASE_ENABLED_RENDER, BASE_ENABLED_VIEWPORT, BKE_collection_or_layer_objects(), DAG_EVAL_RENDER, DEG_get_mode(), depsgraph, Base::flag, PartDeflect::forcefield, LISTBASE_FOREACH, MEM_callocN, Base::next, Base::object, Object::particlesystem, Object::pd, and psys_check_enabled().
| void BKE_effector_relations_free | ( | ListBase * | lb | ) |
Definition at line 242 of file effect.cc.
References BLI_freelistN(), and MEM_freeN().
Referenced by blender::deg::clear_physics_relations().
| void BKE_effectors_apply | ( | struct ListBase * | effectors, |
| struct ListBase * | colliders, | ||
| struct EffectorWeights * | weights, | ||
| struct EffectedPoint * | point, | ||
| float * | force, | ||
| float * | wind_force, | ||
| float * | impulse ) |
Generic force/speed system, now used for particles, soft-bodies & dynamic-paint.
Definition at line 1110 of file effect.cc.
References add_v3_v3(), add_v3_v3v3(), do_physical_effector(), do_texture_effector(), eff_calc_visibility(), effector_falloff(), EffectorData::falloff, get_effector_data(), get_effector_tot(), LISTBASE_FOREACH, madd_v3_v3fl(), PE_VELOCITY_TO_IMPULSE, PE_WIND_AS_SPEED, PFIELD_TEXTURE, sub_v3_v3v3(), and EffectorData::vel.
Referenced by _scan_for_ext_spring_forces(), _softbody_calc_forces_slice_in_a_thread(), basic_force_cb(), boid_body(), cloth_calc_force(), do_path_effectors(), and dynamic_paint_prepare_effect_cb().
| ListBase * BKE_effectors_create | ( | struct Depsgraph * | depsgraph, |
| struct Object * | ob_src, | ||
| struct ParticleSystem * | psys_src, | ||
| struct EffectorWeights * | weights, | ||
| bool | use_rotation ) |
Create effective list of effectors from relations built beforehand.
Definition at line 309 of file effect.cc.
References add_effector_evaluation(), BKE_object_get_evaluated_mesh(), BLI_findstring(), DEG_get_effector_relations(), DEG_get_evaluated_id(), DEG_get_evaluated_scene(), depsgraph, EffectorWeights::group, is_effector_relevant(), LISTBASE_FOREACH, offsetof, ParticleSystem::part, PART_SELF_EFFECT, Object::particlesystem, Object::pd, PFIELD_SHAPE_POINTS, and PartDeflect::shape.
Referenced by do_step_cloth(), dynamicPaint_prepareEffectStep(), psys_update_effectors(), sb_sfesf_threads_run(), and softbody_calc_forces().
| void BKE_effectors_free | ( | ListBase * | lb | ) |
Definition at line 364 of file effect.cc.
References BLI_freelistN(), BLI_rng_free(), LISTBASE_FOREACH, and MEM_freeN().
Referenced by do_step_cloth(), dynamicPaint_prepareEffectStep(), psys_free(), psys_update_effectors(), sb_sfesf_threads_run(), and softbody_calc_forces().
| PartDeflect * BKE_partdeflect_copy | ( | const PartDeflect * | pd_src | ) |
Definition at line 110 of file effect.cc.
References MEM_dupallocN.
| void BKE_partdeflect_free | ( | PartDeflect * | pd | ) |
Definition at line 119 of file effect.cc.
References MEM_freeN().
Referenced by object_free_data(), and particle_settings_free_data().
| PartDeflect * BKE_partdeflect_new | ( | int | type | ) |
Definition at line 71 of file effect.cc.
References BLI_time_now_seconds(), ceil(), PartDeflect::f_damp, PartDeflect::f_flow, PartDeflect::f_size, PartDeflect::f_strength, PartDeflect::f_wind_factor, PartDeflect::flag, PartDeflect::forcefield, MEM_callocN, PartDeflect::pdef_cfrict, PartDeflect::pdef_sbdamp, PartDeflect::pdef_sbift, PartDeflect::pdef_sboft, PFIELD_CLOTH_USE_CULLING, PFIELD_DO_LOCATION, PFIELD_DO_ROTATION, PFIELD_FLUIDFLOW, PFIELD_SHAPE_PLANE, PFIELD_TEXTURE, PFIELD_VORTEX, PFIELD_WIND, PartDeflect::seed, and PartDeflect::shape.
Referenced by blender::ed::object::effector_add_exec(), blender::ed::object::forcefield_toggle_exec(), blender::ed::object::modifier_add(), and particle_settings_init().
| void BKE_sim_debug_data_add_element | ( | int | type, |
| const float | v1[3], | ||
| const float | v2[3], | ||
| const char * | str, | ||
| float | r, | ||
| float | g, | ||
| float | b, | ||
| const char * | category, | ||
| uint | hash ) |
Definition at line 1304 of file effect.cc.
References _sim_debug_data, b, BKE_sim_debug_data_set_enabled(), BLI_ghashutil_strhash_p(), SimDebugElement::category_hash, SimDebugElement::color, copy_v3_v3(), debug_data_insert(), G, G_DEBUG_SIMDATA, hash, SimDebugElement::hash, MEM_callocN, SimDebugElement::str, str, STRNCPY, SimDebugElement::type, SimDebugElement::v1, SimDebugElement::v2, v2, and zero_v3().
| void BKE_sim_debug_data_clear | ( | void | ) |
Definition at line 1366 of file effect.cc.
References _sim_debug_data, BLI_ghash_clear(), debug_element_free(), and SimDebugData::gh.
| void BKE_sim_debug_data_clear_category | ( | const char * | category | ) |
Definition at line 1376 of file effect.cc.
References _sim_debug_data, BLI_ghash_remove(), BLI_ghashIterator_done(), BLI_ghashIterator_getValue(), BLI_ghashIterator_init(), BLI_ghashIterator_step(), BLI_ghashutil_strhash_p(), SimDebugElement::category_hash, debug_element_free(), SimDebugData::gh, and int.
Referenced by cloth_continuum_step(), and SIM_cloth_solve().
| void BKE_sim_debug_data_free | ( | void | ) |
Definition at line 1281 of file effect.cc.
References _sim_debug_data, BLI_ghash_free(), debug_element_free(), SimDebugData::gh, and MEM_freeN().
Referenced by BKE_sim_debug_data_set_enabled().
| bool BKE_sim_debug_data_get_enabled | ( | void | ) |
Definition at line 1276 of file effect.cc.
References _sim_debug_data.
Definition at line 1203 of file effect.cc.
References BLI_ghashutil_uinthash().
| void BKE_sim_debug_data_remove_element | ( | uint | hash | ) |
Definition at line 1356 of file effect.cc.
References _sim_debug_data, BLI_ghash_remove(), debug_element_free(), SimDebugData::gh, hash, and SimDebugElement::hash.
| void BKE_sim_debug_data_set_enabled | ( | bool | enable | ) |
Definition at line 1261 of file effect.cc.
References _sim_debug_data, BKE_sim_debug_data_free(), BLI_ghash_new(), debug_element_compare(), debug_element_hash(), SimDebugData::gh, and MEM_callocN.
Referenced by BKE_sim_debug_data_add_element().
| bool closest_point_on_surface | ( | SurfaceModifierData * | surmd, |
| const float | co[3], | ||
| float | surface_co[3], | ||
| float | surface_nor[3], | ||
| float | surface_vel[3] ) |
Definition at line 638 of file effect.cc.
References add_v3_v3(), BLI_bvhtree_find_nearest(), SurfaceModifierData_Runtime::bvhtree, copy_v3_v3(), BVHTreeFromMesh::corner_tris, BVHTreeFromMesh::corner_verts, blender::Span< T >::data(), FLT_MAX, BVHTreeNearest::index, mul_v3_fl(), BVHTreeFromMesh::nearest_callback, SurfaceModifierData::runtime, BVHTreeFromMesh::tree, and SurfaceModifierData_Runtime::vert_velocities.
Referenced by boid_find_ground(), and get_effector_data().
|
static |
Definition at line 1291 of file effect.cc.
References BLI_ghash_insert(), BLI_ghash_lookup(), SimDebugData::gh, and MEM_freeN().
Referenced by BKE_sim_debug_data_add_element().
|
static |
Definition at line 1244 of file effect.cc.
References b, and SimDebugElement::hash.
Referenced by BKE_sim_debug_data_set_enabled().
|
static |
Definition at line 1255 of file effect.cc.
References MEM_freeN().
Referenced by BKE_sim_debug_data_clear(), BKE_sim_debug_data_clear_category(), BKE_sim_debug_data_free(), and BKE_sim_debug_data_remove_element().
|
static |
Definition at line 1238 of file effect.cc.
References SimDebugElement::hash.
Referenced by BKE_sim_debug_data_set_enabled().
|
static |
Definition at line 950 of file effect.cc.
References add_v3_v3(), add_v3_v3v3(), BKE_fluid_get_velocity_at(), BLI_noise_generic_turbulence(), copy_v3_v3(), cross_v3_v3v3(), EffectorData::distance, ELEM, PartDeflect::f_damp, PartDeflect::f_flow, PartDeflect::f_noise, PartDeflect::f_size, PartDeflect::f_source, PartDeflect::f_strength, fabsf, EffectorData::falloff, PartDeflect::flag, PartDeflect::forcefield, Object::loc, madd_v3_v3fl(), mul_qt_v3(), mul_v3_fl(), EffectorData::nor, EffectorData::nor2, normalize_v3(), EffectorCache::pd, PFIELD_BOID, PFIELD_CHARGE, PFIELD_DO_LOCATION, PFIELD_DO_ROTATION, PFIELD_DRAG, PFIELD_FLUIDFLOW, PFIELD_FORCE, PFIELD_GLOBAL_CO, PFIELD_GRAVITATION, PFIELD_HARMONIC, PFIELD_LENNARDJ, PFIELD_MAGNET, PFIELD_SHAPE_LINE, PFIELD_SHAPE_POINT, PFIELD_SMOKE_DENSITY, PFIELD_TURBULENCE, PFIELD_VORTEX, PFIELD_WIND, pow(), powf, EffectorCache::rng, PartDeflect::shape, EffectorData::size, sqrtf, EffectorData::vec_to_point, EffectorData::vec_to_point2, wind_func(), and zero_v3().
Referenced by BKE_effectors_apply().
|
static |
Definition at line 857 of file effect.cc.
References add_v3_v3(), copy_v3_v3(), dot_v3v3(), PartDeflect::f_strength, EffectorData::falloff, PartDeflect::flag, madd_v3_v3fl(), mul_m4_v3(), multitex_ext(), EffectorData::nor, EffectorCache::ob, EffectorCache::pd, PFIELD_DO_LOCATION, PFIELD_TEX_2D, PFIELD_TEX_GRAD, PFIELD_TEX_OBJECT, PFIELD_TEX_RGB, PartDeflect::tex, PartDeflect::tex_mode, PartDeflect::tex_nabla, TEX_RGB, and zero_v3().
Referenced by BKE_effectors_apply().
|
static |
Get visibility of a wind ray.
Definition at line 466 of file effect.cc.
References absorption(), BKE_collider_cache_create(), BKE_collider_cache_free(), BLI_bvhtree_ray_cast_ex(), BVH_RAYCAST_DEFAULT, CollisionModifierData::bvhtree, col, EffectorCache::depsgraph, eff_tri_ray_hit(), PartDeflect::flag, BVHTreeRayHit::index, len, LISTBASE_FOREACH, negate_v3_v3(), norm(), normalize_v3(), EffectorCache::ob, EffectorCache::pd, PFIELD_VISIBILITY, and EffectorData::vec_to_point.
Referenced by BKE_effectors_apply().
|
static |
Definition at line 453 of file effect.cc.
Referenced by eff_calc_visibility().
| float effector_falloff | ( | EffectorCache * | eff, |
| EffectorData * | efd, | ||
| EffectedPoint * | point, | ||
| EffectorWeights * | weights ) |
Definition at line 589 of file effect.cc.
References EffectorData::distance, dot_v3v3(), fabsf, PartDeflect::falloff, falloff_func_dist(), falloff_func_rad(), PartDeflect::forcefield, len_v3(), madd_v3_v3v3fl(), EffectorData::nor, EffectorCache::pd, PFIELD_FALL_CONE, PFIELD_FALL_SPHERE, PFIELD_FALL_TUBE, PFIELD_Z_NEG, PFIELD_Z_POS, RAD2DEGF, safe_acosf(), EffectorData::vec_to_point2, EffectorWeights::weight, and PartDeflect::zdir.
Referenced by BKE_effectors_apply(), precalc_guides(), and rule_goal_avoid().
|
static |
Definition at line 550 of file effect.cc.
References pow(), and power().
Referenced by falloff_func_dist(), and falloff_func_rad().
|
static |
Definition at line 569 of file effect.cc.
References PartDeflect::f_power, falloff_func(), PartDeflect::flag, PartDeflect::maxdist, PartDeflect::mindist, PFIELD_USEMAX, and PFIELD_USEMIN.
Referenced by effector_falloff().
|
static |
Definition at line 579 of file effect.cc.
References PartDeflect::f_power_r, falloff_func(), PartDeflect::flag, PartDeflect::maxrad, PartDeflect::minrad, PFIELD_USEMAXR, and PFIELD_USEMINR.
Referenced by effector_falloff().
| bool get_effector_data | ( | EffectorCache * | eff, |
| EffectorData * | efd, | ||
| EffectedPoint * | point, | ||
| int | real_velocity ) |
Definition at line 674 of file effect.cc.
References add_v3_v3(), add_v3_v3v3(), BKE_object_get_evaluated_mesh(), SurfaceModifierData_Runtime::bvhtree, closest_point_on_surface(), copy_v3_v3(), DEG_get_ctime(), EffectorCache::depsgraph, ParticleSimulationData::depsgraph, EffectorData::distance, ELEM, PartDeflect::f_size, EffectorCache::flag, PartDeflect::forcefield, EffectorData::index, len_v3(), EffectorData::loc, mul_m4_v3(), mul_mat3_m4_v3(), mul_qt_v3(), mul_v3_fl(), EffectorData::nor, EffectorData::nor2, normalize_v3(), normalize_v3_v3(), EffectorCache::ob, ParticleSimulationData::ob, ParticleSystem::particles, EffectorCache::pd, PE_USE_NORMAL_DATA, PFIELD_HARMONIC, PFIELD_SHAPE_LINE, PFIELD_SHAPE_PLANE, PFIELD_SHAPE_POINTS, PFIELD_SHAPE_SURFACE, PFIELD_VORTEX, project_v3_v3v3(), EffectorCache::psys, ParticleSimulationData::psys, psys_get_particle_state(), ret, SurfaceModifierData::runtime, EffectorCache::scene, ParticleSimulationData::scene, PartDeflect::shape, EffectorData::size, ParticleData::size, state, sub_v3_v3v3(), EffectorCache::surmd, EffectorData::vec_to_point, EffectorData::vec_to_point2, EffectorData::vel, and zero_v3().
Referenced by BKE_effectors_apply(), and rule_goal_avoid().
|
static |
Definition at line 810 of file effect.cc.
References BKE_object_get_evaluated_mesh(), ceil(), EffectorData::charge, ParticleSettings::effector_amount, PartDeflect::f_strength, PartDeflect::flag, PartDeflect::forcefield, EffectorData::index, EffectorCache::ob, ParticleSystem::part, EffectorCache::pd, PFIELD_CHARGE, PFIELD_HARMONIC, PFIELD_MULTIPLE_SPRINGS, PFIELD_SHAPE_POINTS, EffectorCache::psys, PartDeflect::shape, ParticleSystem::totpart, and Mesh::verts_num.
Referenced by BKE_effectors_apply().
|
static |
Definition at line 251 of file effect.cc.
References PartDeflect::flag, PartDeflect::forcefield, PFIELD_BOID, PFIELD_DO_LOCATION, PFIELD_DO_ROTATION, PFIELD_GUIDE, PFIELD_TEXTURE, and PartDeflect::tex.
Referenced by is_effector_relevant().
|
static |
Definition at line 272 of file effect.cc.
References PartDeflect::f_damp, PartDeflect::f_flow, PartDeflect::f_noise, PartDeflect::f_strength, PartDeflect::forcefield, PFIELD_BOID, PFIELD_DRAG, PFIELD_GUIDE, PFIELD_SHAPE_POINT, PFIELD_TEXTURE, PFIELD_VORTEX, and PartDeflect::shape.
Referenced by is_effector_relevant().
|
static |
Definition at line 303 of file effect.cc.
References PartDeflect::forcefield, is_effector_enabled(), is_effector_nonzero_strength(), and EffectorWeights::weight.
Referenced by BKE_effectors_create().
| void pd_point_from_loc | ( | Scene * | scene, |
| float * | loc, | ||
| float * | vel, | ||
| int | index, | ||
| EffectedPoint * | point ) |
Definition at line 417 of file effect.cc.
References float.
Referenced by cloth_calc_force(), and dynamic_paint_prepare_effect_cb().
| void pd_point_from_particle | ( | ParticleSimulationData * | sim, |
| ParticleData * | pa, | ||
| ParticleKey * | state, | ||
| EffectedPoint * | point ) |
Definition at line 381 of file effect.cc.
References ParticleSettings::flag, ParticleSystem::part, PART_ROT_DYN, ParticleSystem::particles, PFIELD_CHARGE, ParticleSimulationData::psys, psys_get_timestep(), ParticleData::size, and state.
Referenced by basic_force_cb(), boid_body(), do_path_effectors(), precalc_guides(), and rule_goal_avoid().
| void pd_point_from_soft | ( | Scene * | scene, |
| float * | loc, | ||
| float * | vel, | ||
| int | index, | ||
| EffectedPoint * | point ) |
Definition at line 432 of file effect.cc.
References float, and PE_WIND_AS_SPEED.
Referenced by _scan_for_ext_spring_forces(), and _softbody_calc_forces_slice_in_a_thread().
|
static |
Definition at line 129 of file effect.cc.
References BKE_displist_make_curveTypes(), BKE_modifiers_findby_type(), BKE_where_on_path(), BLI_rng_new(), CU_PATH, Object::data, DEG_get_ctime(), depsgraph, eModifierType_Surface, Curve::flag, EffectorCache::flag, PartDeflect::forcefield, EffectorCache::guide_dir, EffectorCache::guide_loc, EffectorCache::guide_radius, mul_m4_v3(), mul_mat3_m4_v3(), EffectorCache::ob, OB_CURVES_LEGACY, EffectorCache::pd, PE_USE_NORMAL_DATA, PFIELD_GUIDE, PFIELD_SHAPE_SURFACE, EffectorCache::psys, psys_update_particle_tree(), EffectorCache::rng, Object::runtime, EffectorCache::scene, PartDeflect::seed, PartDeflect::shape, EffectorCache::surmd, and Object::type.
Referenced by add_effector_evaluation().
Definition at line 532 of file effect.cc.
References BLI_rng_get_float(), BLI_rng_get_int(), float, and ret.
Referenced by do_physical_effector().
| SimDebugData* _sim_debug_data = nullptr |
Definition at line 1201 of file effect.cc.
Referenced by BKE_sim_debug_data_add_element(), BKE_sim_debug_data_clear(), BKE_sim_debug_data_clear_category(), BKE_sim_debug_data_free(), BKE_sim_debug_data_get_enabled(), BKE_sim_debug_data_remove_element(), and BKE_sim_debug_data_set_enabled().