Tutorial on making Transparent Fire
Page 1 of 1

The transparent fire in Soviet 2 and munf3 are three func-walls, all holding the same position in the map, being toggled on and off by func_timers that are timed to go off at rates different from each other. There is a danger of lagging some video cards doing this so use them sparingly. However they are kind of cool.

I first saw something similar in the fires in the Inland maps. I wasn't aware at the time of animated textures so I set out to try and replicate them. The animated textures cause less lag but as far as I know you can't use transparency on them, so this func_wall solution seems to be the way to go, though you can get away with only two instead of three.

Also, before I do the steps, I just want to mention I have tried this with trees, bushes, water, and you get some interesting effects.

  1. Find the texture you want to work with. I found a series of 8 fire textures on the web that appear to be the basis of the fires in Inland. They all had black backgrounds. My first attempts you can see in Russian Winter and the munf map Edge of Town. Because of the black background on the texture, I had to surround the fires with black so you wouldn't see the func_walls flashing on and off.
  2. This black on background set up didn't look realistic enough, so I opened the 8 fire textures in Wally and replaced as much of the black with the transparent pink as I could, though I left some black because the black mixed in the pink makes the fire seem to "roar" more. The Transparent Pink is the dark pink in the lower right hand of the color palette in Wally.
  3. Now comes the question of the shape of the func_wall that you will apply your new texture to. The one in Soviet2 uses 3 thin wall polys. I applied total transparent on the bottom and the top of all three, then a transparent fire texture on the sides, each one with a different version of the fire. I then scaled them and slid them around on the surface until it looked right to me.
  4. Each of the wall polys are a separate func_wall. They are targetname clearfire1, clearfire2, clearfire3. All three are Trigger_Spawn On, Toggle On. One of them is Start On, the other two are Off. These are connected to three Func_timers tageting clearfire1,2 3. They are all Start On. The Wait time on them is .15 .17 .20. This time difference is what makes the func_walls flick on and off in a somewhat erratic and realistic fashion. I then grouped them so I could move them as a unit easier.
  5. I tore the turret off the tank and laid it on the ground next to the tank. I applied burned textures to it so it looked burned. I then placed the Fire Func_wall group on the tank. I had to play with it some to get it to look right.
  6. I placed a target_speaker right next to the fire, with a fire sound and a func_timer with a wait time plus a random time so the fire sound would vary.
  7. I put a light right above the fire, chose a yellow hue, and made it flicker.
  8. I put a trigger_hurt right on the top of the tank chassis so if someone climbed up they would be "burned."

So that is the basic steps.

The problem with the fire on Soviet2 is it looks great from the broadside, but on the thin sides it almost disappears. This is fine if the fire is on a side that you can't walk around, but out in the middle it looks a bit odd. I tried doing the triangle thing like with transparent trees but could never the get fire texture to look right. I tried several walls rotating 10 degrees, but the edges kept making the middle look like it was missing.

The next one I tried, in munf3, has a hexagon instead of a polygon. It does give you six sides to play with, but getting them to look right is hard, and I am not totally satisfied with the look, but it give the fire an "all around" look instead of the flat on a side look.

For trees, you find a picture of a group of trees that will work. Then transparent out what is between the trees and branches. You need a few more func_walls than three, but you set them up so the bottom doesn't move (or barely moves), while the limbs move just slightly so it looks like the wind is blowing them. Getting the func_timers just right is the key. Too fast and the tree "shimmers", too slow and you see the limbs flick on and off.

One thing I am working on with the fire is blowing a tank up. I use a simpler tank then Tanto's but his might work. Group together all of the polys that make up the turret. Then make a duplicate of it. Make one group a func_wall, toggled On. Make the other one a func_object, and position it to the side of the tank and rotate it around so it will look good when it lands on the ground. You shoot a zooka at the turret. Trigger an explosion there, flick the func_wall off so the turret disappears, trigger the func_object so the turret falls on the ground. Then trigger one of these transparent fires to go off on top of the tank. I have tried it on my other "other" map that I am making for soviet fighting, and it seems to work.

Page 1 of 1

Tutorial submitted by Mr. YOur no fun