| Home Page | Recent Changes

TrailEmitter

UT2004 :: Object >> ParticleEmitter >> TrailEmitter

Description

General

A Trail emitter is used when creating some sort of effect that 'follows' a specific object as it moves. The way the effect is accomplished is by taking the desired texture and stretching it to the desired length and then following the projectile at that given length untill the projectile is no longer flying.

Additional effects are applied to the texture, ColorScale and SizeScale (see ParticleEmitter) are two you'll likely want to play with first.

The behaviour of TrailEmitters in UT2003 and earlier builds behaves differently, however. Instead of trailing behind the Emitter, the trails are more like a thrown ball of toilet paper - the individual particle moves, and a trail follows IT - this means that the movement of the thing to be trailed has to be defined when the particle is created. The rest of the text on this page refers to TrailEmitters in UT2004 and later builds.

Particle Life

This is affected by a number of things. It would be best to think of each unit worth of trail to cost x points in the total trail length. Therefore when MaxPointsPerTrail is exceeded by x*(somedistance) the first point get's removed to make room for new points.

Providing this does not come into play we have to deal with PointLifeTime and it's very similar cousin LifetimeRange. Both specify a specific amount of time that pieces of the trail exist. Therefore, the smaller value between these two variables is going to be the one that defines the life of your trail points.

Properties

var ETrailShadeType TrailShadeType
enum ETrailShadeType
{
    PTTST_None,             // Full particle color
    PTTST_RandomStatic,     // particle color * random opacity set once
    PTTST_RandomDynamic,    // particle color * random opacity, updated every tick
    PTTST_Linear,           // smooth linear fade out (begining = 100%, end = 0%)
    PTTST_PointLife         // linear fade relative to point's life
};
var ETrailLocation TrailLocation
enum ETrailLocation
{
    PTTL_AttachedToParticle,    // Attached to Particle
    PTTL_FollowEmitter          // Attached to Particle, with added emitter's velocity
};
var int MaxPointsPerTrail
This defines the 'complexity' of the emitter, the lower the value is, the smaller the MAXIMUM distance is from the projectile to the end of the trail.
var float DistanceThreshold
The maximum length of any given segment of the trail. If you set it to zero, the engine will hang.
var it MaxTrailTwistAngle
var float PointLifeTime
This controls the amount of time *in seconds?* that pieces of the trail will stay visible. This is not an ultimate definition of the life of pieces of the trail, however.
var bool UseCrossedSheets
Although this is a guess, it looks like this applies the texture 2 times, one at a *rotation* 90 degrees from that of the first. This both makes the trail look a little more complex but increases overall trail brightness as well.
var transient array<ParticleTrailData> TrailData
var transient array<ParticleTrailInfo> TrailInfo
var transient vertexbuffer VertexBuffer
var transient indexbuffer IndexBuffer
var transient int VerticesPerParticle
var transient int IndicesPerParticle
var transient int PrimitivesPerParticle

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

FAQs

Help Desk

Mapping Topics

Mapping Lessons

UnrealEd Interface

UnrealScript Topics

UnrealScript Lessons

Making Mods

Class Tree

Modeling Topics

Chongqing Page

Log In