15 return new MANTA(res, fmd);
61 return fluid->
readData(fmd, framenr, resumable);
66 return fluid->
readNoise(fmd, framenr, resumable);
71 return fluid->
readMesh(fmd, framenr);
81 return fluid->
readGuiding(fmd, framenr, sourceDomain);
86 return fluid->
bakeData(fmd, framenr);
96 return fluid->
bakeMesh(fmd, framenr);
111 return fluid->
hasData(fmd, framenr);
116 return fluid->
hasNoise(fmd, framenr);
121 return fluid->
hasMesh(fmd, framenr);
131 return fluid->
hasGuiding(fmd, framenr, domain);
167 return x +
y * max_x +
z * max_x * max_y;
171 return x +
y * max_x;
314 int m = 4, i_g = 1, i_b = 2, i_a = 3;
322 for (
i = 0;
i < total_cells;
i++) {
324 data[
i * m] = r[
i] * alpha;
325 data[
i * m + i_g] = g[
i] * alpha;
326 data[
i * m + i_b] =
b[
i] * alpha;
327 data[
i * m + i_a] = alpha;
359 int m = 4, i_g = 1, i_b = 2, i_a = 3;
367 for (
i = 0;
i < total_cells;
i++) {
368 data[
i * m] = color[0];
369 data[
i * m + i_g] = color[1];
370 data[
i * m + i_b] = color[2];
371 data[
i * m + i_a] = 1.0f;
487 return smoke->
getHeat() !=
nullptr;
492 return smoke->
getFuel() !=
nullptr;
BMesh const char void * data
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
static void get_rgba(const float *r, const float *g, const float *b, const float *a, int total_cells, float *data, int sequential)
static void get_rgba_fixed_color(const float color[3], int total_cells, float *data, int sequential)
int manta_liquid_get_flip_particle_flag_at(struct MANTA *liquid, int i)
int manta_liquid_get_snd_particle_flag_at(struct MANTA *liquid, int i)
float * manta_noise_get_density(struct MANTA *smoke)
bool manta_has_particles(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float * manta_smoke_get_color_r(struct MANTA *smoke)
float * manta_noise_get_texture_v(struct MANTA *smoke)
float manta_liquid_get_normal_x_at(struct MANTA *liquid, int i)
float * manta_smoke_get_shadow(struct MANTA *smoke)
float * manta_smoke_get_heat_in(struct MANTA *smoke)
bool manta_has_mesh(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float manta_liquid_get_vertex_y_at(struct MANTA *liquid, int i)
float * manta_noise_get_react(struct MANTA *smoke)
float manta_liquid_get_flip_particle_velocity_z_at(struct MANTA *liquid, int i)
int manta_liquid_get_mesh_res_y(struct MANTA *liquid)
float * manta_get_force_z(struct MANTA *fluid)
bool manta_ensure_invelocity(struct MANTA *fluid, struct FluidModifierData *fmd)
bool manta_read_guiding(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr, bool sourceDomain)
bool manta_has_data(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
bool manta_bake_particles(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
bool manta_smoke_ensure_colors(struct MANTA *smoke, struct FluidModifierData *fmd)
float * manta_smoke_get_fuel_in(struct MANTA *smoke)
float * manta_noise_get_texture_u(struct MANTA *smoke)
void manta_free(struct MANTA *fluid)
float * manta_get_num_guide(struct MANTA *fluid)
bool manta_smoke_has_heat(struct MANTA *smoke)
bool manta_noise_has_colors(struct MANTA *smoke)
int manta_liquid_get_num_triangles(struct MANTA *liquid)
float * manta_get_force_y(struct MANTA *fluid)
bool manta_bake_mesh(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float manta_get_timestep(struct MANTA *fluid)
float * manta_get_guide_velocity_y(struct MANTA *fluid)
float * manta_smoke_get_react(struct MANTA *smoke)
float * manta_get_in_velocity_y(struct MANTA *fluid)
bool manta_bake_noise(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
int manta_get_frame(struct MANTA *fluid)
float manta_liquid_get_snd_particle_velocity_z_at(struct MANTA *liquid, int i)
float * manta_get_ob_velocity_x(struct MANTA *fluid)
size_t manta_get_index2d(int x, int max_x, int y)
float manta_liquid_get_flip_particle_velocity_y_at(struct MANTA *liquid, int i)
float * manta_get_ob_velocity_z(struct MANTA *fluid)
float * manta_noise_get_texture_w(struct MANTA *smoke)
bool manta_read_mesh(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float * manta_get_guide_velocity_z(struct MANTA *fluid)
float * manta_get_in_velocity_x(struct MANTA *fluid)
struct MANTA * manta_init(int *res, struct FluidModifierData *fmd)
float * manta_get_guide_velocity_x(struct MANTA *fluid)
bool manta_liquid_ensure_sndparts(struct MANTA *liquid, struct FluidModifierData *fmd)
float * manta_smoke_get_color_g_in(struct MANTA *smoke)
float * manta_noise_get_fuel(struct MANTA *smoke)
bool manta_write_data(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float * manta_noise_get_texture_v2(struct MANTA *smoke)
float * manta_get_phioutstatic_in(struct MANTA *fluid)
bool manta_smoke_ensure_fire(struct MANTA *smoke, struct FluidModifierData *fmd)
int manta_liquid_get_mesh_res_x(struct MANTA *liquid)
void manta_noise_get_rgba(struct MANTA *smoke, float *data, int sequential)
void manta_noise_get_res(struct MANTA *smoke, int *res)
float * manta_get_velocity_y(struct MANTA *fluid)
bool manta_noise_has_fuel(struct MANTA *smoke)
float manta_liquid_get_vertvel_y_at(struct MANTA *liquid, int i)
float * manta_noise_get_color_b(struct MANTA *smoke)
int manta_liquid_get_num_verts(struct MANTA *liquid)
float * manta_smoke_get_color_b_in(struct MANTA *smoke)
bool manta_ensure_obstacle(struct MANTA *fluid, struct FluidModifierData *fmd)
bool manta_write_config(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
bool manta_needs_realloc(struct MANTA *fluid, struct FluidModifierData *fmd)
float * manta_noise_get_texture_w2(struct MANTA *smoke)
float * manta_get_force_x(struct MANTA *fluid)
bool manta_has_noise(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float * manta_get_phiguide_in(struct MANTA *fluid)
float manta_liquid_get_vertvel_z_at(struct MANTA *liquid, int i)
bool manta_read_noise(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr, bool resumable)
size_t manta_get_index(int x, int max_x, int y, int max_y, int z)
float * manta_get_ob_velocity_y(struct MANTA *fluid)
float manta_liquid_get_flip_particle_position_y_at(struct MANTA *liquid, int i)
int manta_liquid_get_mesh_res_z(struct MANTA *liquid)
bool manta_read_particles(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr, bool resumable)
bool manta_write_noise(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float * manta_smoke_get_density(struct MANTA *smoke)
float * manta_get_phiobsstatic_in(struct MANTA *fluid)
float manta_liquid_get_vertvel_x_at(struct MANTA *liquid, int i)
int manta_liquid_get_particle_res_y(struct MANTA *liquid)
float * manta_get_in_velocity_z(struct MANTA *fluid)
float * manta_noise_get_color_g(struct MANTA *smoke)
float * manta_get_phi(struct MANTA *fluid)
int manta_liquid_get_particle_upres(struct MANTA *liquid)
float * manta_smoke_get_color_r_in(struct MANTA *smoke)
bool manta_smoke_ensure_heat(struct MANTA *smoke, struct FluidModifierData *fmd)
float manta_liquid_get_flip_particle_position_z_at(struct MANTA *liquid, int i)
float * manta_get_num_obstacle(struct MANTA *fluid)
void manta_update_pointers(struct MANTA *fluid, struct FluidModifierData *fmd, bool flush)
bool manta_ensure_guiding(struct MANTA *fluid, struct FluidModifierData *fmd)
float * manta_get_phi_in(struct MANTA *fluid)
int manta_get_res_x(struct MANTA *fluid)
bool manta_read_data(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr, bool resumable)
float * manta_smoke_get_react_in(struct MANTA *smoke)
float * manta_get_velocity_z(struct MANTA *fluid)
bool manta_has_guiding(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr, bool domain)
bool manta_liquid_export_script(struct MANTA *liquid, struct FluidModifierData *fmd)
int manta_get_res_z(struct MANTA *fluid)
bool manta_smoke_has_colors(struct MANTA *smoke)
bool manta_read_config(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float * manta_smoke_get_density_in(struct MANTA *smoke)
float manta_liquid_get_vertex_z_at(struct MANTA *liquid, int i)
int manta_liquid_get_mesh_upres(struct MANTA *liquid)
float * manta_noise_get_texture_u2(struct MANTA *smoke)
float * manta_get_phiout_in(struct MANTA *fluid)
float * manta_get_phiobs_in(struct MANTA *fluid)
int * manta_smoke_get_flags(struct MANTA *smoke)
int manta_get_res_y(struct MANTA *fluid)
int manta_liquid_get_num_normals(struct MANTA *liquid)
float manta_liquid_get_snd_particle_position_z_at(struct MANTA *liquid, int i)
float manta_liquid_get_snd_particle_velocity_y_at(struct MANTA *liquid, int i)
float * manta_get_velocity_x(struct MANTA *fluid)
int manta_liquid_get_num_flip_particles(struct MANTA *liquid)
int manta_liquid_get_triangle_z_at(struct MANTA *liquid, int i)
int manta_liquid_get_particle_res_x(struct MANTA *liquid)
bool manta_smoke_has_fuel(struct MANTA *smoke)
float * manta_smoke_get_emission_in(struct MANTA *smoke)
float * manta_get_pressure(struct MANTA *fluid)
float manta_liquid_get_vertex_x_at(struct MANTA *liquid, int i)
float * manta_smoke_get_color_g(struct MANTA *smoke)
int manta_noise_get_cells(struct MANTA *smoke)
bool manta_ensure_outflow(struct MANTA *fluid, struct FluidModifierData *fmd)
float manta_liquid_get_normal_y_at(struct MANTA *liquid, int i)
void manta_noise_get_rgba_fixed_color(struct MANTA *smoke, float color[3], float *data, int sequential)
void manta_update_variables(struct MANTA *fluid, struct FluidModifierData *fmd)
float manta_liquid_get_flip_particle_position_x_at(struct MANTA *liquid, int i)
float * manta_smoke_get_heat(struct MANTA *smoke)
int manta_liquid_get_triangle_x_at(struct MANTA *liquid, int i)
float * manta_get_phistatic_in(struct MANTA *fluid)
float * manta_smoke_get_color_b(struct MANTA *smoke)
void manta_adapt_timestep(struct MANTA *fluid)
int manta_liquid_get_triangle_y_at(struct MANTA *liquid, int i)
float manta_liquid_get_snd_particle_position_x_at(struct MANTA *liquid, int i)
float manta_liquid_get_snd_particle_position_y_at(struct MANTA *liquid, int i)
float manta_liquid_get_normal_z_at(struct MANTA *liquid, int i)
bool manta_bake_data(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
void manta_smoke_get_rgba(struct MANTA *smoke, float *data, int sequential)
float * manta_smoke_get_fuel(struct MANTA *smoke)
bool manta_smoke_export_script(struct MANTA *smoke, struct FluidModifierData *fmd)
float * manta_smoke_get_flame(struct MANTA *smoke)
float manta_liquid_get_snd_particle_velocity_x_at(struct MANTA *liquid, int i)
float * manta_noise_get_flame(struct MANTA *smoke)
int manta_liquid_get_particle_res_z(struct MANTA *liquid)
void manta_smoke_get_rgba_fixed_color(struct MANTA *smoke, float color[3], float *data, int sequential)
int manta_liquid_get_num_snd_particles(struct MANTA *liquid)
float * manta_noise_get_color_r(struct MANTA *smoke)
bool manta_bake_guiding(struct MANTA *fluid, struct FluidModifierData *fmd, int framenr)
float manta_liquid_get_flip_particle_velocity_x_at(struct MANTA *liquid, int i)
bool exportSmokeScript(struct FluidModifierData *fmd)
int getTriangleXAt(int i)
float getVertexZAt(int i)
float getFlipParticlePositionXAt(int i)
bool bakeNoise(FluidModifierData *fmd, int framenr)
bool writeNoise(FluidModifierData *fmd, int framenr)
float getSndParticlePositionXAt(int i)
bool initFireHigh(struct FluidModifierData *fmd=nullptr)
bool hasNoise(FluidModifierData *fmd, int framenr)
bool exportLiquidScript(struct FluidModifierData *fmd)
bool readData(FluidModifierData *fmd, int framenr, bool resumable)
int getNumFlipParticles()
bool initOutflow(FluidModifierData *fmd=nullptr)
float getNormalZAt(int i)
float getSndParticleVelocityYAt(int i)
bool writeConfiguration(FluidModifierData *fmd, int framenr)
float getSndParticleVelocityXAt(int i)
int getSndParticleFlagAt(int i)
bool initFire(struct FluidModifierData *fmd=nullptr)
bool writeData(FluidModifierData *fmd, int framenr)
float getVertVelXAt(int i)
float getSndParticlePositionZAt(int i)
float getVertVelYAt(int i)
float getFlipParticleVelocityYAt(int i)
bool needsRealloc(FluidModifierData *fmd)
bool readParticles(FluidModifierData *fmd, int framenr, bool resumable)
bool readMesh(FluidModifierData *fmd, int framenr)
bool readGuiding(FluidModifierData *fmd, int framenr, bool sourceDomain)
float getSndParticlePositionYAt(int i)
bool bakeMesh(FluidModifierData *fmd, int framenr)
float getVertexXAt(int i)
bool hasMesh(FluidModifierData *fmd, int framenr)
int getTriangleZAt(int i)
float getNormalXAt(int i)
bool initGuiding(FluidModifierData *fmd=nullptr)
bool readConfiguration(FluidModifierData *fmd, int framenr)
int getFlipParticleFlagAt(int i)
float getFlipParticleVelocityXAt(int i)
bool bakeGuiding(FluidModifierData *fmd, int framenr)
size_t getTotalCellsHigh()
float getSndParticleVelocityZAt(int i)
float getFlipParticleVelocityZAt(int i)
bool hasParticles(FluidModifierData *fmd, int framenr)
bool initColorsHigh(struct FluidModifierData *fmd=nullptr)
bool initObstacle(FluidModifierData *fmd=nullptr)
float * getPhiOutStaticIn()
bool initColors(struct FluidModifierData *fmd=nullptr)
bool readNoise(FluidModifierData *fmd, int framenr, bool resumable)
float getVertVelZAt(int i)
int getTriangleYAt(int i)
float * getGuideVelocityY()
bool hasGuiding(FluidModifierData *fmd, int framenr, bool sourceDomain)
float * getGuideVelocityZ()
bool initHeat(struct FluidModifierData *fmd=nullptr)
bool bakeParticles(FluidModifierData *fmd, int framenr)
MANTA(int *res, struct FluidModifierData *fmd)
bool bakeData(FluidModifierData *fmd, int framenr)
float getNormalYAt(int i)
bool initInVelocity(FluidModifierData *fmd=nullptr)
float * getPhiObsStaticIn()
void updatePointers(FluidModifierData *fmd, bool flush=false)
float * getGuideVelocityX()
float getFlipParticlePositionYAt(int i)
bool hasData(FluidModifierData *fmd, int framenr)
float getVertexYAt(int i)
bool updateVariables(FluidModifierData *fmd)
float getFlipParticlePositionZAt(int i)
bool initLiquidSndParts(FluidModifierData *fmd=nullptr)