Projectors are useful for creating special effects in your levels, they are used to "project" textures (go figure) onto surfaces, and can be used to create effects like blood splatters and lighting effects. Projectors are very touchy, and will easily crash the editor. In addition, the effects you apply to them tend to stay projected. If you move it to another part of the level the original projection will still be there:
Rebuilding or deleting the Projector can sometimes remove the original, but the best way to get rid of them is to reopen the level. The downside is reopening has a tendency to crash the editor. For this reason, it helps to figure out exactly what you want the Projector to do before you start making it.
The first thing we have to do is tell the Projector what texture we want it to use. Open up the Projector's properties and click open the Projector tab. The property at the bottom, ProjTexture, tells it which one to use. Depending on what you want it to do, there are plenty of textures to use already included with the game. Click on the one you want, then hit Use next to ProjTexture.
Now we have to decide what we want our projector to affect. There are seven properties that we need to look at for this:
bLevelStatic - Setting this to True destroys the Projector after it has applied its texture to the level, so that actors are not affected by it even if bProjectActor is set to True. This is useful for decals such as blood splatters or scorch marks.
bProjectActor - Leaving this True causes the projection to be displayed on Actors (Players, bots, weapons). This is useful for Projectors used for light or shadow effects.
bProjectBSP - Leaving this True causes the projection to be displayed on BSP surfaces not set to Unlit. This is useful for Projectors used for light or shadow effects, and decals.
bProjectOnUnlit - Setting this True causes the projection to be displayed on BSP surfaces set to Unlit.
bProjectParticles - Leaving this True causes the projection to be displayed on particle systems, like emitter effects and smoke trails from weapon fire. This is useful for Projectors used for light and shadow effects.
bProjectStaticMesh - Leaving this True causes the projection to be displayed on static meshes. This is useful for Projectors used for light and shadow effects, and decals.
bProjectTerrain - Leaving this True causes the projection to be displayed on terrain. This is useful for Projectors used for light and shadow effects, and decals.
Now we have our Projector set to affect what we want it to, now it's time to look at the rest of the Projector's properties and what they do.
bClipBSP - If this is left at the default, False, the projected texture is repeated along the entire length of any BSP surface inside the area of effect. If set to True, only the area inside the blue projection box is affected.
bClipStaticMesh - The same as bClipBSP, but applies to Static Meshes.
bDynamicAttach - Used by the engine during play, not used in editing.
bGradient - If set to True, the texture is faded the further away from the Projector it is.
bProjectOnAlpha - No affect, not used.
bProjectOnBackfaces - If left at False, the projection is faded the more of an angle it has to the Projector. If set to True, all faces are projected to at full brightness.
FOV - Sets the Projector's field of view. Leaving it at 0 gives parallel lines, useful for things like sunlight shining through a window. Wider angles would be used for things like a light source behind a piece of grating.
FrameBufferBlendingOp & MaterialBlendingOp - Sets how the projected texture is mixed with the mesh/bsp texture. For effects such as light filtering through a window, setting Frame to PB_Add and Material to PB_None creates a good effect. For blood splatters and other decals, setting them to PB_Modulate and PB_None respectively works, but rebuilding turns the entire area it affects black. Projectors should be added in after the level has been built so this doesn't happen.
MaxTraceDistance - Sets the maximum distance the projection will be displayed from the Projector.
ProjectTag - The Projector will only affect brushes and meshes with this Tag.
ProjTexture - Sets the texture the Projector uses.
Display >> Drawscale - Sets the size of the texture. The height and width can not be adjusted separately.
With these properties you should be able to get the effect you want. Projectors can display animated textures to create watery shimmers or flickering effects for fire, for sunlight shining through a window or the shadow of a tree on the ground, and blood splatters and rocket scorch marks on the walls.
That is it for this tutorial, good luck!