Blender  V2.93
manta_fluid_API.cpp
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  *
16  * The Original Code is Copyright (C) 2016 Blender Foundation.
17  * All rights reserved.
18  */
19 
24 #include <cmath>
25 
26 #include "MANTA_main.h"
27 #include "manta_fluid_API.h"
28 
29 /* Fluid functions */
30 MANTA *manta_init(int *res, struct FluidModifierData *fmd)
31 {
32  return new MANTA(res, fmd);
33 }
34 void manta_free(MANTA *fluid)
35 {
36  delete fluid;
37  fluid = nullptr;
38 }
39 
41 {
42  return fluid->initObstacle(fmd);
43 }
44 bool manta_ensure_guiding(MANTA *fluid, struct FluidModifierData *fmd)
45 {
46  return fluid->initGuiding(fmd);
47 }
49 {
50  return fluid->initInVelocity(fmd);
51 }
52 bool manta_ensure_outflow(MANTA *fluid, struct FluidModifierData *fmd)
53 {
54  return fluid->initOutflow(fmd);
55 }
56 
57 bool manta_write_config(MANTA *fluid, FluidModifierData *fmd, int framenr)
58 {
59  return fluid->writeConfiguration(fmd, framenr);
60 }
61 
62 bool manta_write_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
63 {
64  return fluid->writeData(fmd, framenr);
65 }
66 
67 bool manta_write_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
68 {
69  return fluid->writeNoise(fmd, framenr);
70 }
71 
72 bool manta_read_config(MANTA *fluid, FluidModifierData *fmd, int framenr)
73 {
74  return fluid->readConfiguration(fmd, framenr);
75 }
76 
77 bool manta_read_data(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
78 {
79  return fluid->readData(fmd, framenr, resumable);
80 }
81 
82 bool manta_read_noise(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
83 {
84  return fluid->readNoise(fmd, framenr, resumable);
85 }
86 
87 bool manta_read_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
88 {
89  return fluid->readMesh(fmd, framenr);
90 }
91 
92 bool manta_read_particles(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
93 {
94  return fluid->readParticles(fmd, framenr, resumable);
95 }
96 
97 bool manta_read_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr, bool sourceDomain)
98 {
99  return fluid->readGuiding(fmd, framenr, sourceDomain);
100 }
101 
102 bool manta_bake_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
103 {
104  return fluid->bakeData(fmd, framenr);
105 }
106 
107 bool manta_bake_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
108 {
109  return fluid->bakeNoise(fmd, framenr);
110 }
111 
112 bool manta_bake_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
113 {
114  return fluid->bakeMesh(fmd, framenr);
115 }
116 
117 bool manta_bake_particles(MANTA *fluid, FluidModifierData *fmd, int framenr)
118 {
119  return fluid->bakeParticles(fmd, framenr);
120 }
121 
122 bool manta_bake_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr)
123 {
124  return fluid->bakeGuiding(fmd, framenr);
125 }
126 
127 bool manta_has_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
128 {
129  return fluid->hasData(fmd, framenr);
130 }
131 
132 bool manta_has_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
133 {
134  return fluid->hasNoise(fmd, framenr);
135 }
136 
137 bool manta_has_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
138 {
139  return fluid->hasMesh(fmd, framenr);
140 }
141 
142 bool manta_has_particles(MANTA *fluid, FluidModifierData *fmd, int framenr)
143 {
144  return fluid->hasParticles(fmd, framenr);
145 }
146 
147 bool manta_has_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr, bool domain)
148 {
149  return fluid->hasGuiding(fmd, framenr, domain);
150 }
151 
153 {
154  fluid->updateVariables(fmd);
155 }
156 
158 {
159  return fluid->getFrame();
160 }
161 
163 {
164  return fluid->getTimestep();
165 }
166 
168 {
169  fluid->adaptTimestep();
170 }
171 
173 {
174  return fluid->needsRealloc(fmd);
175 }
176 
177 void manta_update_pointers(struct MANTA *fluid, struct FluidModifierData *fmd, bool flush)
178 {
179  fluid->updatePointers(fmd, flush);
180 }
181 
182 /* Fluid accessors */
183 size_t manta_get_index(int x, int max_x, int y, int max_y, int z /*, int max_z */)
184 {
185  return x + y * max_x + z * max_x * max_y;
186 }
187 size_t manta_get_index2d(int x, int max_x, int y /*, int max_y, int z, int max_z */)
188 {
189  return x + y * max_x;
190 }
192 {
193  return fluid->getVelocityX();
194 }
196 {
197  return fluid->getVelocityY();
198 }
200 {
201  return fluid->getVelocityZ();
202 }
203 
205 {
206  return fluid->getObVelocityX();
207 }
209 {
210  return fluid->getObVelocityY();
211 }
213 {
214  return fluid->getObVelocityZ();
215 }
216 
218 {
219  return fluid->getGuideVelocityX();
220 }
222 {
223  return fluid->getGuideVelocityY();
224 }
226 {
227  return fluid->getGuideVelocityZ();
228 }
229 
231 {
232  return fluid->getInVelocityX();
233 }
235 {
236  return fluid->getInVelocityY();
237 }
239 {
240  return fluid->getInVelocityZ();
241 }
242 
243 float *manta_get_force_x(MANTA *fluid)
244 {
245  return fluid->getForceX();
246 }
247 float *manta_get_force_y(MANTA *fluid)
248 {
249  return fluid->getForceY();
250 }
251 float *manta_get_force_z(MANTA *fluid)
252 {
253  return fluid->getForceZ();
254 }
255 
257 {
258  return fluid->getPhiGuideIn();
259 }
260 
262 {
263  return fluid->getNumObstacle();
264 }
266 {
267  return fluid->getNumGuide();
268 }
269 
271 {
272  return fluid->getResX();
273 }
275 {
276  return fluid->getResY();
277 }
279 {
280  return fluid->getResZ();
281 }
282 
283 float *manta_get_phi_in(MANTA *fluid)
284 {
285  return fluid->getPhiIn();
286 }
288 {
289  return fluid->getPhiStaticIn();
290 }
292 {
293  return fluid->getPhiObsIn();
294 }
296 {
297  return fluid->getPhiObsStaticIn();
298 }
300 {
301  return fluid->getPhiOutIn();
302 }
304 {
305  return fluid->getPhiOutStaticIn();
306 }
307 float *manta_get_phi(MANTA *fluid)
308 {
309  return fluid->getPhi();
310 }
311 float *manta_get_pressure(MANTA *fluid)
312 {
313  return fluid->getPressure();
314 }
315 
316 /* Smoke functions */
318 {
319  return smoke->exportSmokeScript(fmd);
320 }
321 
322 static void get_rgba(
323  float *r, float *g, float *b, float *a, int total_cells, float *data, int sequential)
324 {
325  int i;
326  /* Use offsets to map RGB grids to to correct location in data grid. */
327  int m = 4, i_g = 1, i_b = 2, i_a = 3;
328  if (sequential) {
329  m = 1;
330  i_g *= total_cells;
331  i_b *= total_cells;
332  i_a *= total_cells;
333  }
334 
335  for (i = 0; i < total_cells; i++) {
336  float alpha = a[i];
337  data[i * m] = r[i] * alpha;
338  data[i * m + i_g] = g[i] * alpha;
339  data[i * m + i_b] = b[i] * alpha;
340  data[i * m + i_a] = alpha;
341  }
342 }
343 
344 void manta_smoke_get_rgba(MANTA *smoke, float *data, int sequential)
345 {
346  get_rgba(smoke->getColorR(),
347  smoke->getColorG(),
348  smoke->getColorB(),
349  smoke->getDensity(),
350  smoke->getTotalCells(),
351  data,
352  sequential);
353 }
354 
355 void manta_noise_get_rgba(MANTA *smoke, float *data, int sequential)
356 {
357  get_rgba(smoke->getColorRHigh(),
358  smoke->getColorGHigh(),
359  smoke->getColorBHigh(),
360  smoke->getDensityHigh(),
361  smoke->getTotalCellsHigh(),
362  data,
363  sequential);
364 }
365 
366 static void get_rgba_fixed_color(float color[3], int total_cells, float *data, int sequential)
367 {
368  int i;
369  int m = 4, i_g = 1, i_b = 2, i_a = 3;
370  if (sequential) {
371  m = 1;
372  i_g *= total_cells;
373  i_b *= total_cells;
374  i_a *= total_cells;
375  }
376 
377  for (i = 0; i < total_cells; i++) {
378  data[i * m] = color[0];
379  data[i * m + i_g] = color[1];
380  data[i * m + i_b] = color[2];
381  data[i * m + i_a] = 1.0f;
382  }
383 }
384 
385 void manta_smoke_get_rgba_fixed_color(MANTA *smoke, float color[3], float *data, int sequential)
386 {
387  get_rgba_fixed_color(color, smoke->getTotalCells(), data, sequential);
388 }
389 
390 void manta_noise_get_rgba_fixed_color(MANTA *smoke, float color[3], float *data, int sequential)
391 {
392  get_rgba_fixed_color(color, smoke->getTotalCellsHigh(), data, sequential);
393 }
394 
396 {
397  return smoke->initHeat(fmd);
398 }
399 
401 {
402  bool result = smoke->initFire(fmd);
403  if (smoke->usingNoise()) {
404  result &= smoke->initFireHigh(fmd);
405  }
406  return result;
407 }
408 
410 {
411  bool result = smoke->initColors(fmd);
412  if (smoke->usingNoise()) {
413  result &= smoke->initColorsHigh(fmd);
414  }
415  return result;
416 }
417 
418 /* Smoke accessors */
420 {
421  return smoke->getDensity();
422 }
424 {
425  return smoke->getFuel();
426 }
428 {
429  return smoke->getReact();
430 }
432 {
433  return smoke->getHeat();
434 }
436 {
437  return smoke->getFlame();
438 }
440 {
441  return smoke->getShadow();
442 }
443 
445 {
446  return smoke->getColorR();
447 }
449 {
450  return smoke->getColorG();
451 }
453 {
454  return smoke->getColorB();
455 }
456 
458 {
459  return smoke->getFlags();
460 }
461 
463 {
464  return smoke->getDensityIn();
465 }
467 {
468  return smoke->getHeatIn();
469 }
471 {
472  return smoke->getColorRIn();
473 }
475 {
476  return smoke->getColorGIn();
477 }
479 {
480  return smoke->getColorBIn();
481 }
483 {
484  return smoke->getFuelIn();
485 }
487 {
488  return smoke->getReactIn();
489 }
491 {
492  return smoke->getEmissionIn();
493 }
494 
496 {
497  return smoke->getHeat() != nullptr;
498  ;
499 }
501 {
502  return smoke->getFuel() != nullptr;
503 }
505 {
506  return smoke->getColorR() != nullptr && smoke->getColorG() != nullptr &&
507  smoke->getColorB() != nullptr;
508 }
509 
511 {
512  return smoke->getDensityHigh();
513 }
515 {
516  return smoke->getFuelHigh();
517 }
519 {
520  return smoke->getReactHigh();
521 }
523 {
524  return smoke->getColorRHigh();
525 }
527 {
528  return smoke->getColorGHigh();
529 }
531 {
532  return smoke->getColorBHigh();
533 }
535 {
536  return smoke->getFlameHigh();
537 }
539 {
540  return smoke->getTextureU();
541 }
543 {
544  return smoke->getTextureV();
545 }
547 {
548  return smoke->getTextureW();
549 }
551 {
552  return smoke->getTextureU2();
553 }
555 {
556  return smoke->getTextureV2();
557 }
559 {
560  return smoke->getTextureW2();
561 }
562 
564 {
565  return smoke->getFuelHigh() != nullptr;
566 }
568 {
569  return smoke->getColorRHigh() != nullptr && smoke->getColorGHigh() != nullptr &&
570  smoke->getColorBHigh() != nullptr;
571  ;
572 }
573 
574 void manta_noise_get_res(MANTA *smoke, int *res)
575 {
576  res[0] = smoke->getResXHigh();
577  res[1] = smoke->getResYHigh();
578  res[2] = smoke->getResZHigh();
579 }
581 {
582  return smoke->getResXHigh() * smoke->getResYHigh() * smoke->getResZHigh();
583 }
584 
585 /* Liquid functions */
587 {
588  return liquid->exportLiquidScript(fmd);
589 }
590 
592 {
593  return liquid->initLiquidSndParts(fmd);
594 }
595 
596 /* Liquid accessors */
598 {
599  return liquid->getParticleResX();
600 }
602 {
603  return liquid->getParticleResY();
604 }
606 {
607  return liquid->getParticleResZ();
608 }
609 
611 {
612  return liquid->getMeshResX();
613 }
615 {
616  return liquid->getMeshResY();
617 }
619 {
620  return liquid->getMeshResZ();
621 }
622 
624 {
625  return liquid->getParticleUpres();
626 }
628 {
629  return liquid->getMeshUpres();
630 }
631 
633 {
634  return liquid->getNumVertices();
635 }
637 {
638  return liquid->getNumNormals();
639 }
641 {
642  return liquid->getNumTriangles();
643 }
644 
645 float manta_liquid_get_vertex_x_at(MANTA *liquid, int i)
646 {
647  return liquid->getVertexXAt(i);
648 }
649 float manta_liquid_get_vertex_y_at(MANTA *liquid, int i)
650 {
651  return liquid->getVertexYAt(i);
652 }
653 float manta_liquid_get_vertex_z_at(MANTA *liquid, int i)
654 {
655  return liquid->getVertexZAt(i);
656 }
657 
658 float manta_liquid_get_normal_x_at(MANTA *liquid, int i)
659 {
660  return liquid->getNormalXAt(i);
661 }
662 float manta_liquid_get_normal_y_at(MANTA *liquid, int i)
663 {
664  return liquid->getNormalYAt(i);
665 }
666 float manta_liquid_get_normal_z_at(MANTA *liquid, int i)
667 {
668  return liquid->getNormalZAt(i);
669 }
670 
672 {
673  return liquid->getTriangleXAt(i);
674 }
676 {
677  return liquid->getTriangleYAt(i);
678 }
680 {
681  return liquid->getTriangleZAt(i);
682 }
683 
685 {
686  return liquid->getVertVelXAt(i);
687 }
689 {
690  return liquid->getVertVelYAt(i);
691 }
693 {
694  return liquid->getVertVelZAt(i);
695 }
696 
698 {
699  return liquid->getNumFlipParticles();
700 }
702 {
703  return liquid->getNumSndParticles();
704 }
705 
707 {
708  return liquid->getFlipParticleFlagAt(i);
709 }
711 {
712  return liquid->getSndParticleFlagAt(i);
713 }
714 
716 {
717  return liquid->getFlipParticlePositionXAt(i);
718 }
720 {
721  return liquid->getFlipParticlePositionYAt(i);
722 }
724 {
725  return liquid->getFlipParticlePositionZAt(i);
726 }
727 
729 {
730  return liquid->getFlipParticleVelocityXAt(i);
731 }
733 {
734  return liquid->getFlipParticleVelocityYAt(i);
735 }
737 {
738  return liquid->getFlipParticleVelocityZAt(i);
739 }
740 
742 {
743  return liquid->getSndParticlePositionXAt(i);
744 }
746 {
747  return liquid->getSndParticlePositionYAt(i);
748 }
750 {
751  return liquid->getSndParticlePositionZAt(i);
752 }
753 
755 {
756  return liquid->getSndParticleVelocityXAt(i);
757 }
759 {
760  return liquid->getSndParticleVelocityYAt(i);
761 }
763 {
764  return liquid->getSndParticleVelocityZAt(i);
765 }
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble z
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble w _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat w _GL_VOID_RET _GL_VOID GLint GLint GLint w _GL_VOID_RET _GL_VOID GLshort GLshort GLshort w _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble y2 _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat y2 _GL_VOID_RET _GL_VOID GLint GLint GLint y2 _GL_VOID_RET _GL_VOID GLshort GLshort GLshort y2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLuint *buffer _GL_VOID_RET _GL_VOID GLdouble t _GL_VOID_RET _GL_VOID GLfloat t _GL_VOID_RET _GL_VOID GLint t _GL_VOID_RET _GL_VOID GLshort t _GL_VOID_RET _GL_VOID GLdouble GLdouble r _GL_VOID_RET _GL_VOID GLfloat GLfloat r _GL_VOID_RET _GL_VOID GLint GLint r _GL_VOID_RET _GL_VOID GLshort GLshort r _GL_VOID_RET _GL_VOID GLdouble GLdouble r
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint y
static CCL_NAMESPACE_BEGIN const double alpha
void manta_noise_get_rgba(MANTA *smoke, float *data, int sequential)
float * manta_get_phiobs_in(MANTA *fluid)
float * manta_get_force_x(MANTA *fluid)
int manta_liquid_get_num_normals(MANTA *liquid)
bool manta_noise_has_fuel(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_liquid_get_snd_particle_position_x_at(MANTA *liquid, int i)
float * manta_noise_get_flame(MANTA *smoke)
float * manta_get_phi_in(MANTA *fluid)
bool manta_write_config(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_guide_velocity_x(MANTA *fluid)
float * manta_get_num_obstacle(MANTA *fluid)
int manta_liquid_get_triangle_z_at(MANTA *liquid, int i)
int manta_liquid_get_particle_res_z(MANTA *liquid)
float * manta_smoke_get_density(MANTA *smoke)
float * manta_get_phi(MANTA *fluid)
bool manta_has_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_smoke_get_color_g_in(MANTA *smoke)
void manta_update_variables(MANTA *fluid, FluidModifierData *fmd)
bool manta_bake_mesh(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_in_velocity_x(MANTA *fluid)
float * manta_get_force_z(MANTA *fluid)
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_smoke_get_color_b(MANTA *smoke)
float * manta_smoke_get_color_g(MANTA *smoke)
int manta_get_frame(MANTA *fluid)
float manta_liquid_get_vertvel_z_at(MANTA *liquid, int i)
float * manta_get_ob_velocity_y(MANTA *fluid)
float manta_liquid_get_normal_x_at(MANTA *liquid, int i)
int manta_get_res_z(MANTA *fluid)
bool manta_smoke_has_fuel(MANTA *smoke)
MANTA * manta_init(int *res, struct FluidModifierData *fmd)
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_smoke_get_shadow(MANTA *smoke)
float * manta_noise_get_color_b(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_noise_get_texture_w2(MANTA *smoke)
size_t manta_get_index2d(int x, int max_x, int y)
float * manta_smoke_get_react(MANTA *smoke)
float * manta_smoke_get_heat(MANTA *smoke)
bool manta_read_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr, bool sourceDomain)
int manta_liquid_get_particle_res_y(MANTA *liquid)
static void get_rgba_fixed_color(float color[3], int total_cells, float *data, int sequential)
float * manta_noise_get_react(MANTA *smoke)
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)
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)
float * manta_get_force_y(MANTA *fluid)
bool manta_needs_realloc(MANTA *fluid, FluidModifierData *fmd)
float * manta_get_velocity_z(MANTA *fluid)
int manta_liquid_get_num_snd_particles(MANTA *liquid)
float * manta_noise_get_fuel(MANTA *smoke)
float * manta_smoke_get_density_in(MANTA *smoke)
float manta_liquid_get_vertvel_y_at(MANTA *liquid, int i)
int manta_liquid_get_num_triangles(MANTA *liquid)
void manta_free(MANTA *fluid)
int manta_liquid_get_particle_upres(MANTA *liquid)
bool manta_liquid_ensure_sndparts(MANTA *liquid, struct FluidModifierData *fmd)
float * manta_smoke_get_color_r_in(MANTA *smoke)
float manta_liquid_get_normal_z_at(MANTA *liquid, int i)
float * manta_get_phiobsstatic_in(MANTA *fluid)
bool manta_has_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr, bool domain)
int manta_liquid_get_mesh_upres(MANTA *liquid)
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)
int * manta_smoke_get_flags(MANTA *smoke)
void manta_noise_get_rgba_fixed_color(MANTA *smoke, float color[3], float *data, int sequential)
float * manta_smoke_get_color_r(MANTA *smoke)
float * manta_get_velocity_x(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)
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_smoke_get_react_in(MANTA *smoke)
bool manta_bake_data(MANTA *fluid, FluidModifierData *fmd, int framenr)
float manta_liquid_get_vertvel_x_at(MANTA *liquid, int i)
float * manta_smoke_get_fuel_in(MANTA *smoke)
void manta_update_pointers(struct MANTA *fluid, struct FluidModifierData *fmd, bool flush)
float manta_liquid_get_normal_y_at(MANTA *liquid, int i)
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_get_ob_velocity_z(MANTA *fluid)
bool manta_has_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
void manta_adapt_timestep(MANTA *fluid)
float * manta_noise_get_texture_w(MANTA *smoke)
float manta_get_timestep(MANTA *fluid)
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_get_phistatic_in(MANTA *fluid)
float * manta_get_in_velocity_y(MANTA *fluid)
bool manta_ensure_outflow(MANTA *fluid, struct FluidModifierData *fmd)
bool manta_smoke_ensure_fire(MANTA *smoke, struct FluidModifierData *fmd)
float * manta_get_num_guide(MANTA *fluid)
int manta_get_res_y(MANTA *fluid)
float * manta_noise_get_texture_v(MANTA *smoke)
bool manta_noise_has_colors(MANTA *smoke)
float * manta_smoke_get_emission_in(MANTA *smoke)
float manta_liquid_get_snd_particle_velocity_x_at(MANTA *liquid, int i)
bool manta_liquid_export_script(MANTA *liquid, FluidModifierData *fmd)
bool manta_read_config(MANTA *fluid, FluidModifierData *fmd, int framenr)
bool manta_read_noise(MANTA *fluid, FluidModifierData *fmd, int framenr, bool resumable)
float * manta_smoke_get_color_b_in(MANTA *smoke)
float manta_liquid_get_flip_particle_position_z_at(MANTA *liquid, int i)
float * manta_get_guide_velocity_y(MANTA *fluid)
float * manta_smoke_get_heat_in(MANTA *smoke)
float * manta_get_ob_velocity_x(MANTA *fluid)
float * manta_noise_get_texture_u(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)
int manta_liquid_get_snd_particle_flag_at(MANTA *liquid, int i)
float * manta_noise_get_color_g(MANTA *smoke)
float * manta_get_phiguide_in(MANTA *fluid)
bool manta_bake_guiding(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_guide_velocity_z(MANTA *fluid)
float * manta_noise_get_color_r(MANTA *smoke)
float * manta_noise_get_density(MANTA *smoke)
float * manta_smoke_get_flame(MANTA *smoke)
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_phioutstatic_in(MANTA *fluid)
float manta_liquid_get_vertex_x_at(MANTA *liquid, int i)
float * manta_noise_get_texture_v2(MANTA *smoke)
bool manta_ensure_obstacle(MANTA *fluid, struct FluidModifierData *fmd)
bool manta_has_particles(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_velocity_y(MANTA *fluid)
float * manta_smoke_get_fuel(MANTA *smoke)
int manta_liquid_get_num_flip_particles(MANTA *liquid)
bool manta_bake_noise(MANTA *fluid, FluidModifierData *fmd, int framenr)
float * manta_get_in_velocity_z(MANTA *fluid)
float * manta_noise_get_texture_u2(MANTA *smoke)
float * manta_get_pressure(MANTA *fluid)
float * manta_get_phiout_in(MANTA *fluid)
static unsigned a[3]
Definition: RandGen.cpp:92
bool exportSmokeScript(struct FluidModifierData *fmd)
float * getTextureV2()
Definition: MANTA_main.h:374
float * getColorBHigh()
Definition: MANTA_main.h:354
int getMeshResX()
Definition: MANTA_main.h:155
float * getHeatIn()
Definition: MANTA_main.h:301
int getParticleResZ()
Definition: MANTA_main.h:151
int getTriangleXAt(int i)
Definition: MANTA_main.h:493
float * getColorG()
Definition: MANTA_main.h:285
float * getObVelocityX()
Definition: MANTA_main.h:209
float * getGuideVelocityZ()
Definition: MANTA_main.h:229
float * getPhiStaticIn()
Definition: MANTA_main.h:387
float getVertexZAt(int i)
Definition: MANTA_main.h:455
int getNumVertices()
Definition: MANTA_main.h:424
float getFlipParticlePositionXAt(int i)
Definition: MANTA_main.h:569
float * getGuideVelocityX()
Definition: MANTA_main.h:221
bool bakeNoise(FluidModifierData *fmd, int framenr)
bool writeNoise(FluidModifierData *fmd, int framenr)
float getSndParticlePositionXAt(int i)
Definition: MANTA_main.h:597
bool initFireHigh(struct FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:369
bool hasNoise(FluidModifierData *fmd, int framenr)
float * getPressure()
Definition: MANTA_main.h:415
bool exportLiquidScript(struct FluidModifierData *fmd)
bool readData(FluidModifierData *fmd, int framenr, bool resumable)
int getNumFlipParticles()
Definition: MANTA_main.h:709
bool initOutflow(FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:519
float getNormalZAt(int i)
Definition: MANTA_main.h:483
float * getNumGuide()
Definition: MANTA_main.h:265
size_t getTotalCells()
Definition: MANTA_main.h:119
float * getFuelIn()
Definition: MANTA_main.h:317
float * getGuideVelocityY()
Definition: MANTA_main.h:225
float getSndParticleVelocityYAt(int i)
Definition: MANTA_main.h:662
float * getInVelocityX()
Definition: MANTA_main.h:233
float * getColorGHigh()
Definition: MANTA_main.h:350
float * getColorR()
Definition: MANTA_main.h:281
float * getFuel()
Definition: MANTA_main.h:273
bool writeConfiguration(FluidModifierData *fmd, int framenr)
int getParticleUpres()
Definition: MANTA_main.h:183
float getSndParticleVelocityXAt(int i)
Definition: MANTA_main.h:653
int getSndParticleFlagAt(int i)
Definition: MANTA_main.h:559
float * getPhiObsStaticIn()
Definition: MANTA_main.h:395
bool initFire(struct FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:355
float * getColorGIn()
Definition: MANTA_main.h:309
float * getShadow()
Definition: MANTA_main.h:293
bool writeData(FluidModifierData *fmd, int framenr)
float getVertVelXAt(int i)
Definition: MANTA_main.h:521
float getSndParticlePositionZAt(int i)
Definition: MANTA_main.h:615
float * getVelocityZ()
Definition: MANTA_main.h:205
float getVertVelYAt(int i)
Definition: MANTA_main.h:530
float * getEmissionIn()
Definition: MANTA_main.h:325
float getFlipParticleVelocityYAt(int i)
Definition: MANTA_main.h:634
bool needsRealloc(FluidModifierData *fmd)
int getResZHigh()
Definition: MANTA_main.h:175
float * getDensityHigh()
Definition: MANTA_main.h:330
bool readParticles(FluidModifierData *fmd, int framenr, bool resumable)
float * getVelocityY()
Definition: MANTA_main.h:201
bool readMesh(FluidModifierData *fmd, int framenr)
bool readGuiding(FluidModifierData *fmd, int framenr, bool sourceDomain)
float getSndParticlePositionYAt(int i)
Definition: MANTA_main.h:606
bool bakeMesh(FluidModifierData *fmd, int framenr)
int getNumSndParticles()
Definition: MANTA_main.h:713
float * getColorRIn()
Definition: MANTA_main.h:305
float getVertexXAt(int i)
Definition: MANTA_main.h:437
int getMeshResY()
Definition: MANTA_main.h:159
float * getTextureV()
Definition: MANTA_main.h:362
bool hasMesh(FluidModifierData *fmd, int framenr)
float * getForceX()
Definition: MANTA_main.h:245
int getTriangleZAt(int i)
Definition: MANTA_main.h:511
float * getForceY()
Definition: MANTA_main.h:249
float * getReactIn()
Definition: MANTA_main.h:321
int getMeshResZ()
Definition: MANTA_main.h:163
float getNormalXAt(int i)
Definition: MANTA_main.h:465
bool initGuiding(FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:482
float * getForceZ()
Definition: MANTA_main.h:253
int getResYHigh()
Definition: MANTA_main.h:171
int getResZ()
Definition: MANTA_main.h:139
float * getFuelHigh()
Definition: MANTA_main.h:338
float * getInVelocityZ()
Definition: MANTA_main.h:241
bool readConfiguration(FluidModifierData *fmd, int framenr)
int getFlipParticleFlagAt(int i)
Definition: MANTA_main.h:550
float getFlipParticleVelocityXAt(int i)
Definition: MANTA_main.h:625
int getParticleResX()
Definition: MANTA_main.h:143
float * getReactHigh()
Definition: MANTA_main.h:342
bool bakeGuiding(FluidModifierData *fmd, int framenr)
size_t getTotalCellsHigh()
Definition: MANTA_main.h:123
float * getVelocityX()
Definition: MANTA_main.h:197
float getSndParticleVelocityZAt(int i)
Definition: MANTA_main.h:671
int getResX()
Definition: MANTA_main.h:131
float getFlipParticleVelocityZAt(int i)
Definition: MANTA_main.h:643
float * getTextureW2()
Definition: MANTA_main.h:378
bool hasParticles(FluidModifierData *fmd, int framenr)
float * getPhiObsIn()
Definition: MANTA_main.h:391
bool usingNoise()
Definition: MANTA_main.h:127
float * getTextureW()
Definition: MANTA_main.h:366
bool initColorsHigh(struct FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:397
bool initObstacle(FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:469
float getTimestep()
bool initColors(struct FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:383
bool readNoise(FluidModifierData *fmd, int framenr, bool resumable)
float getVertVelZAt(int i)
Definition: MANTA_main.h:539
int getTriangleYAt(int i)
Definition: MANTA_main.h:502
float * getReact()
Definition: MANTA_main.h:277
float * getHeat()
Definition: MANTA_main.h:193
bool hasGuiding(FluidModifierData *fmd, int framenr, bool sourceDomain)
float * getPhiOutIn()
Definition: MANTA_main.h:403
bool initHeat(struct FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:341
int getParticleResY()
Definition: MANTA_main.h:147
float * getPhiGuideIn()
Definition: MANTA_main.h:399
bool bakeParticles(FluidModifierData *fmd, int framenr)
float * getPhiOutStaticIn()
Definition: MANTA_main.h:407
bool bakeData(FluidModifierData *fmd, int framenr)
float getNormalYAt(int i)
Definition: MANTA_main.h:474
float * getDensity()
Definition: MANTA_main.h:189
bool initInVelocity(FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:506
float * getInVelocityY()
Definition: MANTA_main.h:237
float * getFlame()
Definition: MANTA_main.h:269
float * getNumObstacle()
Definition: MANTA_main.h:261
float * getColorRHigh()
Definition: MANTA_main.h:346
float * getPhi()
Definition: MANTA_main.h:411
int getNumNormals()
Definition: MANTA_main.h:428
int getNumTriangles()
Definition: MANTA_main.h:432
float * getTextureU()
Definition: MANTA_main.h:358
float * getObVelocityY()
Definition: MANTA_main.h:213
void adaptTimestep()
int getResY()
Definition: MANTA_main.h:135
float * getColorB()
Definition: MANTA_main.h:289
float * getDensityIn()
Definition: MANTA_main.h:297
float * getFlameHigh()
Definition: MANTA_main.h:334
float * getObVelocityZ()
Definition: MANTA_main.h:217
int getFrame()
int * getFlags()
Definition: MANTA_main.h:257
void updatePointers(FluidModifierData *fmd, bool flush=false)
int getMeshUpres()
Definition: MANTA_main.h:179
float getFlipParticlePositionYAt(int i)
Definition: MANTA_main.h:578
bool hasData(FluidModifierData *fmd, int framenr)
int getResXHigh()
Definition: MANTA_main.h:167
float getVertexYAt(int i)
Definition: MANTA_main.h:446
bool updateVariables(FluidModifierData *fmd)
float getFlipParticlePositionZAt(int i)
Definition: MANTA_main.h:587
float * getColorBIn()
Definition: MANTA_main.h:313
float * getTextureU2()
Definition: MANTA_main.h:370
float * getPhiIn()
Definition: MANTA_main.h:383
bool initLiquidSndParts(FluidModifierData *fmd=nullptr)
Definition: MANTA_main.cpp:542