hello guys… i m doing some effect in fume fx and want to render in krakatoa…i m having
problem with renders, i m deflecting the particles with object which is in the scene. and its happening well. But wen i see the renders in krakatoa then particles get stuck there, so that looks weird ,so please tell me what should i do.! i m using speed in fumefx birth. before caching but it also doesnt work…Please help me out…


Have problem understanding ParticleSumRadius node.

  1. How to get rid of weight in sum? Is it possible to get just sum of channel values of all particles within radius?
  2. Is it working with Int channels? I get 0 90% of time.
  3. I’ve made a simple sequence, where particles have int channel with 1 or 2 in it as value.
    I created PRTLoader1 and loaded this sequence
    Created PRTLoader2, aligned with PRTLoader1 and loaded the same sequence.
    Added tmagma mod to prtloader1 and import particles from second prt to use in ParticleSumRadius node with radius == 1 and weightfaloff ==1 (linear dependency afaik), feeding in position channel of the first prt. I assumed that for every position i should find at least one particle (cause sequences are the same). But i was wrong.

Here is example numbers:
Found count == 1
TotalWeight == 0.9276
ChannelSumValue == 4.636
How sum can be so high if it is only one particle (and channel’s value i added to sum is only 1 or 2), and why weight is not 1?

Thanks in advance.


Hello everyone,
I wanted to understand why krakatoa is getting this error and stops rendering. It happens around approx. the same frame 60 (59, sometimes 61, etc), and I tried to bake the particles in a prt but same error. I thought it was the excessive number of particles in pflow (400 millions), but I reduced it without success.
And once this error occurred one time, krakatoa is unable to render and gets this error everytime I try to render a frame (even a different one).
Does anyone has an idea of the problem?
Thank you.


Im not sure if the follow questions is posted also and before.
How its possible to have reflections from a prt loader to the surface of a matte object ?


This should theoretically never happen with the 64 bit version of Krakatoa - running out of memory should simply trigger swapping to disk which makes rendering impossibly slow, but should not cause an allocation error.

We might need some more details - which versions of Windows, Max and Krakatoa are you using? How much memory do you have and how much is being used for the rendering?
(400MP would require around 10GB of RAM in the typical case, or more if more channels are enabled.) Does it happen in one particular scene or in different ones? What else is in the scene (e.g materials assigned, matte objects used etc.)

Of course, this could be an allocation error caused by PFlow itself. Not that PFlow can actually generate 400MP in one go anyway. When you say you get the same error when saving the PFlow to PRT, do you mean it crashes WHILE saving, or when loading the PRT files in a PRT Loader and rendering them in Krakatoa? If it is the former, then you are having PFlow causing the allocation error, not Krakatoa. When saving particles, Krakatoa does NOT use any significant amount of memory, it just asks PFlow to update (which can use a lot of memory), but Krakatoa just dumps the particles to disk without loading them into memory once again.

So if you are getting the allocation error while saving to disk, it is PFlow to blame. Consider processing the PFlow as multiple Partitions, e.g. 100 partitions of 4 million particles or something like that.


In Krakatoa MX 2, you can use the Krakatoa Atmospheric Effect (unfortunately not available in Evaluation mode) to render your particles on a grid and make them interact with reflections and refractions.

See and particularly the “Raytraced Reflections” section. You could save a Reflection render element to get just the reflection component of the image saved. Note that this works with Scanline, VRay, finalRender and Brazil r/s, but NOT with mental ray.


thanks a lot Bobo, I’ll check it.


Bobo, Isn’t it possible to have this work with mentalray too? I mean fumefx is possible to render with mentalray too, then why is krak atmospheric not supported with mentalray?


The legend says Kreso and Master Zap were locked in a room until it happened :wink:
The problem is that for mental ray, the developer of the volumetric effect has to re-implement it as a mental ray volume shader, while when written for Scanline, it automatically works with V-Ray, finalRender and Brazil r/s.
So we went for the low-hanging fruit.
We are not excluding the possibility for a mental ray version in the future, but FumeFX 1.x did not support mental ray either, it came later, right?


Have another auestion here:
I have two identical PRT Loaders - prt1 and prt2.
I use prt2 as look up particles in ParticleSumRadius node in prt1 magma mod.
But it seems that this node works only if prt is enabled for rendering. And in this case when i want to save my sequence i have to save twice as much particles.

Is it possible to let ParticleSumRadius work + save only prt1 sequence?



Keep the prt2 renderable and simply hide it. prt1 will be saved and will still be able to sample the hidden loader.

I will send you a more complete answer to your other question once I have discussed it with the developer. In the mean time, to get the total sum, simply set the Falloff to a very high number like 10000.0 and your Sum will contain all values without Weights. To get the real unweighted average, divide that Sum by the NumParticles output.

Also never forget to convert your Position input to World Space when feeding into the Lookup Point, otherwise your sampling would be wrong unless both PRT Loaders are aligned to the world origin.



Will try to hide prt.
As for sum: NumParticles * ChannelSum / TotalWeight seems to work.

I’m curious why its not possible to use the same particles to query them, only copy?
And hope you’ll add Radius as input in future versions)


Thanks Bobo for reply! Yes, later version of fumefx supported it. I look forward to future versions with possibility of support for mentalray :slight_smile:


Thank you for answering.
I understood now that so much memory is needed for krakatoa. have actually 48gb of ram but I had a compositing app running at the same time also, so it was that. I closed it and krakatoa rendered.


Well, really have hard time with krakatoa, but I won’t give up if God wills…
This time, and I feel a little confused asking this but, how do we assign a texture to a prt loader? I assigned manually via material editor but my particles still render black (seeable in alpha). I didn’t forget to have a spot illuminating the scene.
Even by adding a kcm and making the simplest flow (input vector with a specified color, and output: color), the particles don’t render.
When I saved the particles, I only selected position, velocity and color channels to be saved. Did I forgot a crucial channel? thought it could always be possible to repair any forgotten channel with kcm…
In pflow mode they render.
I did search in the doc and the web without success.
Thank you again.


Don’t worry, Krakatoa is large and deep and even I don’t know everything about it :wink:
When saving the Color channel from PFlow, I would expect the PRT Loader to show you the Color assigned in the PFlow Display operator.
When you assign a Material to the PRT Loader, some of its channels will be used to evaluate particle channels. But keep in mind we don’t support ALL materials, just some. So if you assign, say, a VRay or finalRender or mental ray material, you will get black for sure.

Start by assigning a Standard material. From a Standard Material, we use:
*Diffuse Color / Map - this evaluates as the Color channel
*Self-Illumination Color / Map - this evaluates as the Emission channel
*Opacity value / Map - this evaluates as a Density Multiplier (the value is multiplied by the incoming Density channel instead of overwriting it)
*Filter Color / Map - this evaluates as the inverse of the Absorption channel.
*Specular Level value / Map - this evaluates as the Phong Surface SpecularLevel value
*Glossiness value / Map - this evaluates as the Phong Surface SpecularPower value

If you assign a Procedural 3D Map to any of these supported channels, Krakatoa will evaluate the data in the specified object or world space.

If you try to use a 2D Map (like Bitmap Texture) using Explicit Mapping Coordinates, you MUST provide a Mapping channel in your particles. PFlow has Mapping operators to assign mapping coordinates to particles, and KCMs can be used to acquire from geometry or set mapping coordinates in various ways, but this is a bit more advanced.

So at this point I would suspect that you assigned a non-supported Material (e.g a VRay material) to your PRT Loader, and possibly tried to use a 2D texture without TextureCoord channel.

Please let me know if this answers your question / solves your problem.


First of all, we found a bug in the code, but I am not sure it had any effect on your data. Basically, if you add more than 1 sample channel, the Weigth value becomes scaled. So with 3 Sum channels in addition to the NumParticles and TotalWeight, you will get a Weight of 3.0 instead of 1.0 when sampling even 1 particle. Thus dividing by the TotalWeight was producing incorrect weighted results when sampling multiple channels at once. This will be fixed in the next build.

There was a technical issue allowing a Magma modifier to read particles from its own stack. We want to make this possible eventually, but for now it is not possible. We were able to solve this in Genome, giving the user access to the current mesh on the stack without copying. Stay tuned.

I will update the docs of these operators to explain how the Weighting works and how to work around in the cases you mentioned. It might be even in next week’s Webinar :wink:


It is nice you mentioned bug in the weight. I encountered a problem (got strange average) but after several resetups i’ve got right result and thought i was wrong. Now i know what’s going on.

will try to attend webinar)


Well, thank you very much for this detailled answer. I did appreciate it.
And I also want to say that it has been very useful and I learned a lot about materials in krakatoa.
As for my problem, it was still rendering black (I realized that even pFlow mode was!), it appears that I got lost in pFlow and made so much changes (especially in material operators) I didn’t control and it got messed up. I was using a standart blinn material.
So I loaded a fresh new pflow preset and it rendered fine (pflow and krakatoa mode).
Anyway, your advices and clarifications are still that useful.
Thank you again.


sorry if my question some how is sealy
but am using krakatoa 2 and am trying to load a sequence of PRT files
its 1000 file
Why I have to add them to the loader one by one ??
Why I can’t pick them all at once ??
is there’s a way i miss ??