Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/makesdna/DNA_fluid_defaults.h')
-rw-r--r--source/blender/makesdna/DNA_fluid_defaults.h267
1 files changed, 267 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_fluid_defaults.h b/source/blender/makesdna/DNA_fluid_defaults.h
new file mode 100644
index 00000000000..2ee83cf3387
--- /dev/null
+++ b/source/blender/makesdna/DNA_fluid_defaults.h
@@ -0,0 +1,267 @@
+/*
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+/** \file
+ * \ingroup DNA
+ */
+
+#pragma once
+
+/* Struct members on own line. */
+/* clang-format off */
+
+/* -------------------------------------------------------------------- */
+/** \name Fluid Domain Settings Struct
+ * \{ */
+
+#define _DNA_DEFAULT_FluidDomainSettings \
+ { \
+ .fmd = NULL, \
+ .fluid = NULL, \
+ .fluid_old = NULL, \
+ .fluid_mutex = NULL, \
+ .fluid_group = NULL, \
+ .force_group = NULL, \
+ .effector_group = NULL, \
+ .tex_density = NULL, \
+ .tex_color = NULL, \
+ .tex_wt = NULL, \
+ .tex_shadow = NULL, \
+ .tex_flame = NULL, \
+ .tex_flame_coba = NULL, \
+ .tex_coba = NULL, \
+ .tex_field = NULL, \
+ .tex_velocity_x = NULL, \
+ .tex_velocity_y = NULL, \
+ .tex_velocity_z = NULL, \
+ .tex_flags = NULL, \
+ .tex_range_field = NULL, \
+ .guide_parent = NULL, \
+ .mesh_velocities = NULL, \
+ .effector_weights = NULL, /* #BKE_effector_add_weights. */ \
+ .p0 = {0.0f, 0.0f, 0.0f}, \
+ .p1 = {0.0f, 0.0f, 0.0f}, \
+ .dp0 = {0.0f, 0.0f, 0.0f}, \
+ .cell_size = {0.0f, 0.0f, 0.0f}, \
+ .global_size = {0.0f, 0.0f, 0.0f}, \
+ .prev_loc = {0.0f, 0.0f, 0.0f}, \
+ .shift = {0, 0, 0}, \
+ .shift_f = {0.0f, 0.0f, 0.0f}, \
+ .obj_shift_f = {0.0f, 0.0f, 0.0f}, \
+ .imat = _DNA_DEFAULT_UNIT_M4, \
+ .obmat = _DNA_DEFAULT_UNIT_M4, \
+ .fluidmat = _DNA_DEFAULT_UNIT_M4, \
+ .fluidmat_wt = _DNA_DEFAULT_UNIT_M4, \
+ .base_res = {0, 0, 0}, \
+ .res_min = {0, 0, 0}, \
+ .res_max = {0, 0, 0}, \
+ .res = {0, 0, 0}, \
+ .total_cells = 0, \
+ .dx = 0, \
+ .scale = 0.0f, \
+ .boundary_width = 1, \
+ .gravity_final = {0.0f, 0.0f, 0.0f}, \
+ .adapt_margin = 4, \
+ .adapt_res = 0, \
+ .adapt_threshold = 0.02f, \
+ .maxres = 32, \
+ .solver_res = 3, \
+ .border_collisions = 0, \
+ .flags = FLUID_DOMAIN_USE_DISSOLVE_LOG | FLUID_DOMAIN_USE_ADAPTIVE_TIME, \
+ .gravity = {0.0f, 0.0f, -9.81f}, \
+ .active_fields = 0, \
+ .type = FLUID_DOMAIN_TYPE_GAS, \
+ .alpha = 1.0f, \
+ .beta = 1.0f, \
+ .diss_speed = 5, \
+ .vorticity = 0.0f, \
+ .active_color = {0.0f, 0.0f, 0.0f}, \
+ .highres_sampling = SM_HRES_FULLSAMPLE, \
+ .burning_rate = 0.75f, \
+ .flame_smoke = 1.0f, \
+ .flame_vorticity = 0.5f, \
+ .flame_ignition = 1.5f, \
+ .flame_max_temp = 3.0f, \
+ .flame_smoke_color = {0.7f, 0.7f, 0.7f}, \
+ .noise_strength = 1.0f, \
+ .noise_pos_scale = 2.0f, \
+ .noise_time_anim = 0.1f, \
+ .res_noise = {0, 0, 0}, \
+ .noise_scale = 2, \
+ .noise_type = FLUID_NOISE_TYPE_WAVELET, \
+ .particle_randomness = 0.1f, \
+ .particle_number = 2, \
+ .particle_minimum = 8, \
+ .particle_maximum = 16, \
+ .particle_radius = 1.0f, \
+ .particle_band_width = 3.0f, \
+ .fractions_threshold = 0.05f, \
+ .fractions_distance = 0.5f, \
+ .flip_ratio = 0.97f, \
+ .sys_particle_maximum = 0, \
+ .simulation_method = FLUID_DOMAIN_METHOD_FLIP, \
+ .surface_tension = 0.0f, \
+ .viscosity_base = 1.0f, \
+ .viscosity_exponent = 6.0f, \
+ .mesh_concave_upper = 3.5f, \
+ .mesh_concave_lower = 0.4f, \
+ .mesh_particle_radius = 2.0f, \
+ .mesh_smoothen_pos = 1, \
+ .mesh_smoothen_neg = 1, \
+ .mesh_scale = 2, \
+ .totvert = 0, \
+ .mesh_generator = FLUID_DOMAIN_MESH_IMPROVED, \
+ .particle_type = 0, \
+ .particle_scale = 1, \
+ .sndparticle_tau_min_wc = 2.0f, \
+ .sndparticle_tau_max_wc = 8.0f, \
+ .sndparticle_tau_min_ta = 5.0f, \
+ .sndparticle_tau_max_ta = 20.0f, \
+ .sndparticle_tau_min_k = 1.0f, \
+ .sndparticle_tau_max_k = 5.0f, \
+ .sndparticle_k_wc = 200, \
+ .sndparticle_k_ta = 40, \
+ .sndparticle_k_b = 0.5f, \
+ .sndparticle_k_d = 0.6f, \
+ .sndparticle_l_min = 10.0f, \
+ .sndparticle_l_max = 25.0f, \
+ .sndparticle_potential_radius = 2, \
+ .sndparticle_update_radius = 2, \
+ .sndparticle_boundary = SNDPARTICLE_BOUNDARY_DELETE, \
+ .sndparticle_combined_export = SNDPARTICLE_COMBINED_EXPORT_OFF, \
+ .guide_alpha = 2.0f, \
+ .guide_beta = 5, \
+ .guide_vel_factor = 2.0f, \
+ .guide_res = {0, 0, 0}, \
+ .guide_source = FLUID_DOMAIN_GUIDE_SRC_DOMAIN, \
+ .cache_frame_start = 1, \
+ .cache_frame_end = 250, \
+ .cache_frame_pause_data = 0, \
+ .cache_frame_pause_noise = 0, \
+ .cache_frame_pause_mesh = 0, \
+ .cache_frame_pause_particles = 0, \
+ .cache_frame_pause_guide = 0, \
+ .cache_frame_offset = 0, \
+ .cache_flag = 0, \
+ .cache_mesh_format = FLUID_DOMAIN_FILE_BIN_OBJECT, \
+ .cache_data_format = FLUID_DOMAIN_FILE_OPENVDB, \
+ .cache_particle_format = FLUID_DOMAIN_FILE_OPENVDB, \
+ .cache_noise_format = FLUID_DOMAIN_FILE_OPENVDB, \
+ .cache_directory = "", \
+ .error = "", \
+ .cache_type = FLUID_DOMAIN_CACHE_REPLAY, \
+ .cache_id = "", \
+ .dt = 0.0f, \
+ .time_total = 0.0f, \
+ .time_per_frame = 0.0f, \
+ .frame_length = 0.0f, \
+ .time_scale = 1.0f, \
+ .cfl_condition = 4.0f, \
+ .timesteps_minimum = 1, \
+ .timesteps_maximum = 4, \
+ .slice_per_voxel = 5.0f, \
+ .slice_depth = 0.5f, \
+ .display_thickness = 1.0f, \
+ .grid_scale = 1.0f, \
+ .coba = NULL, \
+ .vector_scale = 1.0f, \
+ .gridlines_lower_bound = 0.0f, \
+ .gridlines_upper_bound = 1.0f, \
+ .gridlines_range_color = {1.0f, 0.0f, 0.0f, 1.0f}, \
+ .axis_slice_method = AXIS_SLICE_FULL, \
+ .slice_axis = 0, \
+ .show_gridlines = false, \
+ .draw_velocity = false, \
+ .vector_draw_type = VECTOR_DRAW_NEEDLE, \
+ .vector_field = FLUID_DOMAIN_VECTOR_FIELD_VELOCITY, \
+ .vector_scale_with_magnitude = true, \
+ .vector_draw_mac_components = VECTOR_DRAW_MAC_X | VECTOR_DRAW_MAC_Y | VECTOR_DRAW_MAC_Z, \
+ .use_coba = false, \
+ .coba_field = FLUID_DOMAIN_FIELD_DENSITY, \
+ .interp_method = FLUID_DISPLAY_INTERP_LINEAR, \
+ .gridlines_color_field = 0, \
+ .gridlines_cell_filter = FLUID_CELL_TYPE_NONE, \
+ .openvdb_compression = VDB_COMPRESSION_BLOSC, \
+ .clipping = 1e-6f, \
+ .openvdb_data_depth = 0, \
+ .viewsettings = 0, \
+ .point_cache = {NULL, NULL}, /* Use #BKE_ptcache_add. */ \
+ .ptcaches = {{NULL}}, \
+ .cache_comp = SM_CACHE_LIGHT, \
+ .cache_high_comp = SM_CACHE_LIGHT, \
+ .cache_file_format = 0, \
+ }
+
+/** \} */
+
+/* -------------------------------------------------------------------- */
+/** \name Fluid Flow Settings Struct
+ * \{ */
+
+#define _DNA_DEFAULT_FluidFlowSettings \
+ { \
+ .fmd = NULL, \
+ .mesh = NULL, \
+ .psys = NULL, \
+ .noise_texture = NULL, \
+ .verts_old = NULL, \
+ .numverts = 0, \
+ .vel_multi = 1.0f, \
+ .vel_normal = 0.0f, \
+ .vel_random = 0.0f, \
+ .vel_coord = {0.0f, 0.0f, 0.0f}, \
+ .density = 1.0f, \
+ .color = {0.7f, 0.7f, 0.7f}, \
+ .fuel_amount = 1.0f, \
+ .temperature = 1.0f, \
+ .volume_density = 0.0f, \
+ .surface_distance = 1.5f, \
+ .particle_size = 1.0f, \
+ .subframes = 0, \
+ .texture_size = 1.0f, \
+ .texture_offset = 0.0f, \
+ .uvlayer_name = "", \
+ .vgroup_density = 0, \
+ .type = FLUID_FLOW_TYPE_SMOKE, \
+ .behavior = FLUID_FLOW_BEHAVIOR_GEOMETRY, \
+ .source = FLUID_FLOW_SOURCE_MESH, \
+ .texture_type = 0, \
+ .flags = FLUID_FLOW_ABSOLUTE | FLUID_FLOW_USE_PART_SIZE | FLUID_FLOW_USE_INFLOW, \
+ }
+
+/** \} */
+
+/* -------------------------------------------------------------------- */
+/** \name Fluid Effector Settings Struct
+ * \{ */
+
+#define _DNA_DEFAULT_FluidEffectorSettings \
+ { \
+ .fmd = NULL, \
+ .mesh = NULL, \
+ .verts_old = NULL, \
+ .numverts = 0, \
+ .surface_distance = 0.0f, \
+ .flags = FLUID_EFFECTOR_USE_EFFEC, \
+ .subframes = 0, \
+ .type = FLUID_EFFECTOR_TYPE_COLLISION, \
+ .vel_multi = 1.0f, \
+ .guide_mode = FLUID_EFFECTOR_GUIDE_OVERRIDE, \
+ }
+
+/** \} */
+
+/* clang-format on */