



|
8) Click on the image and look for the "firesmall" image files. For some reason the first five frames are the same, so start with "firesmall005.tga". Set the "Alpha Master" slider to 255 and set "Render Mode" to "Illuminate". You might consider "Color Alpha" and I'll admit it doesn't look all that bad but it lacks the layering of brightness that makes the "Illuminate" mode so realistic. Render the scene. |

"Size" unlike the others shouldn't be constant:![]() 1.5 at 0% and 1 at 100% |
Also, edit the "Alpha" graph to look like this:![]() 0 at 0%, 1 from 5 to 30% and 0 at 100% |
The size change is fairly obvious. The flames need to start out big and become smaller over time. As for the "Alpha"... Well, the flames need to fade away as they shrink until they are completely invisible, but to avoid new flames 'popping' into existence they also have to start out invisible and gradualy appear until they are fully visible. This effect has to be big enough to hide the fact that new flames appear out of nowhere and it has to be subtle enough to not be noticed itself. |
|
Now for a final render... The effect looks best with dark backgrounds, so I changed the background to black, but it works with light surroundings as well... Of course, this is just a still. You have the movement of the particles but if you want to render an animation you'll need to add the other frames of the flame footage (at the moment we've got only one). 10) Go to the "Render" panel, Click "Add" and select the next frame of the animation. In this case, that is "firesmall006.tga". You'll notice the "Alpha Master" slider is automaticly set to 51 for this new frame. Slide it back to 255. Add as many frames as you think you'll need. There are 210 in total so there should be more than enough. If I'm not mistaken, the footage is actually seamless so if you include all the frames (minus the first static four) you have an infinitely animated flame! For my test anim I'm going to add a 100 frames. 11) For the flame footage animation to actually work you need to set the option that says "Fixed" to "Cycle". This will make the particle cycle through all the frames you've added.
|

|
5) Select the Sphere and open the "Material Editor". First open the "Color" panel and select "texture map" as the shader. Now select "firesmall005.tga" as the texture and turn on the "Flt and "Anim" options. The "Flt" (filter) option avoids pixels showing up when the texture gets stretched too much and "Anim" makes sure tS scrolls through all the available frames of the animation (the tga pictures) automaticly during rendering. We now have an animated flame. However, we still need to get rid of the black background... Right-click on the "Transparency" icon, select "filter" from the "Transparency Shaders" library and set the filter color to pure black. We also need to set the "Reflectance shader" to "Constant". After all, fire provides its own illumination so it shouldn't be dependent on others. Apply the material to the flame object. A quick render shows, however, that we're not quite there yet.
|
|
6) In order to fix the squashing of the texture, we need to change the UV-mapping. Make sure the flame object is selected and then click on the "Planar UV Projection" button and go to the "Front View". Now select the "Object Scale" tool and stretch the width of the UV-map as seen to the right and finally hit spacebar or click on the "Object Tool". We still need to make the flame have the right side up, so go back to the "Perspective View", select "Object Info" and change "Rotation" to 90,0,180. |
|

![]() |
9) The standard settings have been set to what appeared to work best for normal fire, but you're free to change whatever you want... "Frames" sets the length of the animation and "Frame Rate" determines how many keyframes are made. "Scatticle Count" sets the amount of particles that will appear during the course of the animation. This has a big impact on speed... both that of rendering and that of particle system creation. "Time varient" is the frame at which all particles will have been 'born'. No new particles will appear after that frame. "Velocity" is the average speed of the particles and "Velocity Mod %" is the amount of possible variation from that average for each particle. If "Tightness" is set very high, particles will emit in virtually all directions, while if it's set to 0.01, all emission goes straight up. "Size: max min" sets the maximum and minimum start size for particles. Each particle will have a size between the two. "Grow-" and "Shrink Rate" control the size change that occurs each keyframe. The latter is an important detail because it means that if you change the frame rate, it also changes the amount the size changes over time... The "Group after" option can be convenient if you want to be able to quickly select and delete the whole particle system afterwards but it's very time consuming so if you have a slow computer you may want to set that to "no". When you have the settings you want, hit the "Scatticles" button. Python now starts creating the particle system. This may take some time... |
|
Looks reasonable but not quite as good as the PPFX version, unfortunately. This is especially visible if you compare this animation with the PPFX one... So why does this one not look as good as the PPFX flames? - tS has no "layered transparency" shader. Because of this, you can not make the flames fade away over time and make the black background of the footage dissappear. You can't make the flames more transparent in general either. Notice the PPFX flames are much more transparent than these... - For some reason (I'm guessing a quirk in the Python api) the texture animation starts at frame 0 for every particle (even if it doesn't start moving until frame 100). The result is that all the individual flames look exactly the same, except for size differences. - PPFX has more flexible options for the motion of the particles. Here the flames just go up and shrink. In PPFX you can aply rotation and vortex-motion... However, you could probably also get better motion using trueParticles or the old Primal Particles and maybe I could try to develop the script further to fix the problem to some extent...
|