We have linked our Phoenix fire simulation to a PrtSource object in Krakatoa, but are having a hard time getting the particle color data out of it. We are trying to replicate the tutorial that we saw for Fume FX, but using Phoenix instead (http://www.thinkboxsoftware.com/krak-fumefx-direct-rendering/#FumeFX_Fire_Color.2C_Gradient_and_Opacity_Curve). I’ve attached a screen shot of our Magma flow chart and hoping someone could give us some guidance in getting our fire/smoke to render correctly with Krakatoa.
You cannot do that
The link you posted is to a dedicated PRT FumeFX object which was specifically designed to read FumeFX data. For the fire color, it actually evaluates the FumeFX fire shader of the simulation and does not get the color channel from the grid. However, in more recent versions of Krakatoa and FumeFX, it also supports the Color channel of the simulation.
The PRT Source is a general-purpose duplication object that takes a supported particle source, and creates a PRT stream from it. As such, it was not specifically tailored to work with PhoenixFD, and while it does get some of the data, it does not get all of it. I just made a test Fluid sim, checked both Age and RGB channels, but only the Age channel ended up in the PRT Source. The Color channel of the PRT Source was initially black, because the VRayMtl of the simulation ended up assigned to the PRT Source. Once I removed it, I got the wirecolor of the PRT Source as the color, but still not the actual color of what the simulation was showing. Of course, the simulation was simply displaying the fluid color based on velocity, so I could easily match that with a Magma using the Velocity Magnitude divided by 1000 blending a blue and a 0.777 gray color:
However, the Phoenix sim also uses a red color at the emitter, and in the splash. The Magma ends up using blue (which is the “slow” color in my setup):
So I modified the Magma to paint the particles red if their velocity magnitude is less than a threshold:
So now the particles appeared about the same as the simulation visualized them:
I tested the InputField operator in the Magma and it can read the Velocity from the field, but nothing else. You don’t have to use it unless you are using a non-Phoenix PRT particle stream (some PRT Loader, PRT Volume, PRT Surface etc.) to sample the Velocities from the Phoenix field.
Hope this gives you some ideas…
We have a wishlist item logged against adding a dedicated PRT PhoenixFD object that could do more with the accessible data. Currently we cannot comment on the ETA for this.
This is extremely helpful. We like the look that the fractal noise was doing to the density opacity in the FumeFX tutorial. Do you suggest we use the Krakatoa material to help further enhance the particles and get that look?
PS: Looking forward to more Phoenix integration in coming releases.