17 return new MANTA(res, fmd);
63 return fluid->
readData(fmd, framenr, resumable);
68 return fluid->
readNoise(fmd, framenr, resumable);
73 return fluid->
readMesh(fmd, framenr);
83 return fluid->
readGuiding(fmd, framenr, sourceDomain);
88 return fluid->
bakeData(fmd, framenr);
98 return fluid->
bakeMesh(fmd, framenr);
113 return fluid->
hasData(fmd, framenr);
118 return fluid->
hasNoise(fmd, framenr);
123 return fluid->
hasMesh(fmd, framenr);
133 return fluid->
hasGuiding(fmd, framenr, domain);
169 return x +
y * max_x +
z * max_x * max_y;
173 return x +
y * max_x;
307 float *r,
float *g,
float *
b,
float *a,
int total_cells,
float *
data,
int sequential)
311 int m = 4, i_g = 1, i_b = 2, i_a = 3;
319 for (i = 0; i < total_cells; i++) {
321 data[i * m] = r[i] * alpha;
322 data[i * m + i_g] = g[i] * alpha;
323 data[i * m + i_b] =
b[i] * alpha;
324 data[i * m + i_a] = alpha;
353 int m = 4, i_g = 1, i_b = 2, i_a = 3;
361 for (i = 0; i < total_cells; i++) {
365 data[i * m + i_a] = 1.0f;
481 return smoke->
getHeat() !=
nullptr;
486 return smoke->
getFuel() !=
nullptr;
Group Output data from inside of a node group A color picker Mix two input colors RGB to Convert a color s luminance to a grayscale value Generate a normal vector and a dot product Brightness Control the brightness and contrast of the input color Vector Map input vector components with curves Camera Retrieve information about the camera and how it relates to the current shading point s position Clamp a value between a minimum and a maximum Vector Perform vector math operation Invert Invert a color
SIMD_FORCE_INLINE const btScalar & z() const
Return the z value.
local_group_size(16, 16) .push_constant(Type b
void manta_noise_get_rgba(MANTA *smoke, float *data, int sequential)
int manta_liquid_get_num_normals(MANTA *liquid)
bool manta_noise_has_fuel(MANTA *smoke)
float * manta_smoke_get_heat(MANTA *smoke)
bool manta_bake_particles(MANTA *fluid, FluidModifierData *fmd, int framenr)
int manta_liquid_get_num_verts(MANTA *liquid)
bool manta_ensure_guiding(MANTA *fluid, struct FluidModifierData *fmd)
float * manta_noise_get_color_b(MANTA *smoke)
float manta_liquid_get_snd_particle_position_x_at(MANTA *liquid, int i)
float * manta_noise_get_texture_v(MANTA *smoke)
bool manta_write_config(MANTA *fluid, FluidModifierData *fmd, int framenr)
int manta_liquid_get_triangle_z_at(MANTA *liquid, int i)
float * manta_get_phioutstatic_in(MANTA *fluid)
int manta_liquid_get_particle_res_z(MANTA *liquid)
float * manta_get_phiout_in(MANTA *fluid)
float * manta_noise_get_texture_w2(MANTA *smoke)
float * manta_noise_get_texture_u(MANTA *smoke)
bool manta_has_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_noise_get_texture_v2(MANTA *smoke)
void manta_update_variables(MANTA *fluid, FluidModifierData *fmd)
bool manta_bake_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_noise_get_color_r(MANTA *smoke)
bool manta_smoke_ensure_heat(MANTA *smoke, struct FluidModifierData *fmd)
int manta_liquid_get_triangle_y_at(MANTA *liquid, int i)
bool manta_has_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_ob_velocity_x(MANTA *fluid)
int manta_get_frame(MANTA *fluid)
float manta_liquid_get_vertvel_z_at(MANTA *liquid, int i)
float manta_liquid_get_normal_x_at(MANTA *liquid, int i)
float * manta_get_force_y(MANTA *fluid)
int manta_get_res_z(MANTA *fluid)
bool manta_smoke_has_fuel(MANTA *smoke)
bool manta_smoke_ensure_colors(MANTA *smoke, struct FluidModifierData *fmd)
int manta_noise_get_cells(MANTA *smoke)
void manta_smoke_get_rgba(MANTA *smoke, float *data, int sequential)
float * manta_noise_get_fuel(MANTA *smoke)
float manta_liquid_get_flip_particle_velocity_z_at(MANTA *liquid, int i)
float manta_liquid_get_flip_particle_position_x_at(MANTA *liquid, int i)
float * manta_get_ob_velocity_y(MANTA *fluid)
float * manta_smoke_get_color_b(MANTA *smoke)
size_t manta_get_index2d(int x, int max_x, int y)
bool manta_read_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr, bool sourceDomain)
int manta_liquid_get_particle_res_y(MANTA *liquid)
float * manta_get_force_z(MANTA *fluid)
static void get_rgba_fixed_color(float color[3], int total_cells, float *data, int sequential)
float * manta_get_phiobsstatic_in(MANTA *fluid)
float * manta_noise_get_texture_w(MANTA *smoke)
float * manta_get_in_velocity_x(MANTA *fluid)
float manta_liquid_get_vertex_z_at(MANTA *liquid, int i)
void manta_smoke_get_rgba_fixed_color(MANTA *smoke, float color[3], float *data, int sequential)
float * manta_smoke_get_react(MANTA *smoke)
float * manta_smoke_get_shadow(MANTA *smoke)
int manta_get_res_x(MANTA *fluid)
float manta_liquid_get_vertex_y_at(MANTA *liquid, int i)
int manta_liquid_get_particle_res_x(MANTA *liquid)
float manta_liquid_get_flip_particle_velocity_y_at(MANTA *liquid, int i)
int manta_liquid_get_triangle_x_at(MANTA *liquid, int i)
bool manta_read_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
bool manta_needs_realloc(MANTA *fluid, FluidModifierData *fmd)
int manta_liquid_get_num_snd_particles(MANTA *liquid)
float * manta_smoke_get_fuel(MANTA *smoke)
float * manta_smoke_get_color_b_in(MANTA *smoke)
float * manta_smoke_get_react_in(MANTA *smoke)
float manta_liquid_get_vertvel_y_at(MANTA *liquid, int i)
int manta_liquid_get_num_triangles(MANTA *liquid)
int * manta_smoke_get_flags(MANTA *smoke)
void manta_free(MANTA *fluid)
int manta_liquid_get_particle_upres(MANTA *liquid)
float * manta_get_phiobs_in(MANTA *fluid)
bool manta_liquid_ensure_sndparts(MANTA *liquid, struct FluidModifierData *fmd)
float manta_liquid_get_normal_z_at(MANTA *liquid, int i)
bool manta_has_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr, bool domain)
int manta_liquid_get_mesh_upres(MANTA *liquid)
float * manta_get_guide_velocity_y(MANTA *fluid)
float * manta_get_velocity_y(MANTA *fluid)
bool manta_read_particles(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
bool manta_smoke_has_colors(MANTA *smoke)
int manta_liquid_get_mesh_res_y(MANTA *liquid)
int manta_liquid_get_flip_particle_flag_at(MANTA *liquid, int i)
void manta_noise_get_rgba_fixed_color(MANTA *smoke, float color[3], float *data, int sequential)
float * manta_get_in_velocity_y(MANTA *fluid)
size_t manta_get_index(int x, int max_x, int y, int max_y, int z)
int manta_liquid_get_mesh_res_z(MANTA *liquid)
float * manta_get_guide_velocity_x(MANTA *fluid)
bool manta_write_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
float manta_liquid_get_snd_particle_velocity_z_at(MANTA *liquid, int i)
float * manta_get_phiguide_in(MANTA *fluid)
bool manta_bake_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_smoke_get_color_g_in(MANTA *smoke)
float * manta_smoke_get_density(MANTA *smoke)
float manta_liquid_get_vertvel_x_at(MANTA *liquid, int i)
float * manta_get_in_velocity_z(MANTA *fluid)
void manta_update_pointers(struct MANTA *fluid, struct FluidModifierData *fmd, bool flush)
float manta_liquid_get_normal_y_at(MANTA *liquid, int i)
float * manta_get_velocity_z(MANTA *fluid)
float * manta_smoke_get_color_r(MANTA *smoke)
float * manta_get_guide_velocity_z(MANTA *fluid)
bool manta_ensure_invelocity(MANTA *fluid, struct FluidModifierData *fmd)
bool manta_write_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
bool manta_read_data(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
float * manta_smoke_get_color_g(MANTA *smoke)
bool manta_has_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
void manta_adapt_timestep(MANTA *fluid)
float manta_get_timestep(MANTA *fluid)
float * manta_noise_get_texture_u2(MANTA *smoke)
float * manta_smoke_get_flame(MANTA *smoke)
float manta_liquid_get_snd_particle_velocity_y_at(MANTA *liquid, int i)
float manta_liquid_get_snd_particle_position_z_at(MANTA *liquid, int i)
void manta_noise_get_res(MANTA *smoke, int *res)
float * manta_smoke_get_emission_in(MANTA *smoke)
bool manta_ensure_outflow(MANTA *fluid, struct FluidModifierData *fmd)
float * manta_noise_get_flame(MANTA *smoke)
bool manta_smoke_ensure_fire(MANTA *smoke, struct FluidModifierData *fmd)
MANTA * manta_init(int *res, struct FluidModifierData *fmd)
int manta_get_res_y(MANTA *fluid)
bool manta_noise_has_colors(MANTA *smoke)
float manta_liquid_get_snd_particle_velocity_x_at(MANTA *liquid, int i)
bool manta_liquid_export_script(MANTA *liquid, FluidModifierData *fmd)
float * manta_smoke_get_fuel_in(MANTA *smoke)
bool manta_read_config(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_phi_in(MANTA *fluid)
bool manta_read_noise(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
float * manta_noise_get_color_g(MANTA *smoke)
float * manta_get_num_guide(MANTA *fluid)
float manta_liquid_get_flip_particle_position_z_at(MANTA *liquid, int i)
float * manta_smoke_get_heat_in(MANTA *smoke)
float * manta_get_num_obstacle(MANTA *fluid)
float * manta_noise_get_react(MANTA *smoke)
float * manta_noise_get_density(MANTA *smoke)
bool manta_smoke_export_script(MANTA *smoke, FluidModifierData *fmd)
bool manta_smoke_has_heat(MANTA *smoke)
float manta_liquid_get_flip_particle_position_y_at(MANTA *liquid, int i)
float * manta_smoke_get_color_r_in(MANTA *smoke)
int manta_liquid_get_snd_particle_flag_at(MANTA *liquid, int i)
float * manta_get_pressure(MANTA *fluid)
bool manta_bake_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_velocity_x(MANTA *fluid)
float * manta_get_force_x(MANTA *fluid)
static void get_rgba(float *r, float *g, float *b, float *a, int total_cells, float *data, int sequential)
float manta_liquid_get_flip_particle_velocity_x_at(MANTA *liquid, int i)
int manta_liquid_get_mesh_res_x(MANTA *liquid)
float manta_liquid_get_snd_particle_position_y_at(MANTA *liquid, int i)
float * manta_get_phistatic_in(MANTA *fluid)
float * manta_smoke_get_density_in(MANTA *smoke)
float manta_liquid_get_vertex_x_at(MANTA *liquid, int i)
bool manta_ensure_obstacle(MANTA *fluid, struct FluidModifierData *fmd)
float * manta_get_phi(MANTA *fluid)
bool manta_has_particles(MANTA *fluid, FluidModifierData *fmd, int framenr)
int manta_liquid_get_num_flip_particles(MANTA *liquid)
bool manta_bake_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_ob_velocity_z(MANTA *fluid)
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)
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)