The Trail Renderer component renders a trail of polygons behind a moving GameObjectThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary. This can be used to give an emphasized feeling of motion to a moving object, or to highlight the path or position of moving objects. A trail behind a projectile adds visual clarity to its trajectory; contrails from the tip of a plane’s wings are an example of a trail effect that happens in real life.
Trail Renderers must be laid out over a sequence of frames; they cannot appear instantaneously. The Trail Renderer uses the same algorithm for trail renderingThe process of drawing graphics to the screen (or to a render texture). By default, the main camera in Unity renders its view to the screen. More info
See in Glossary as the Line RendererA component that takes an array of two or more points in 3D space and draws a straight line between each one. You can use a single Line Renderer component to draw anything from a simple straight line to a complex spiral. More info
See in Glossary.
To create a Trail Renderer:
By default, a Trail Renderer uses the built-in Material, Default-Line. You can make many changes to the appearance of the trail without changing this Material, such as editing the color gradient or width of the trail.
For other effects, such as applying a texture to the trail, you will need to use a different Material. If you do not want to write your own ShaderA small script that contains the mathematical calculations and algorithms for calculating the Color of each pixel rendered, based on the lighting input and the Material configuration. More info
See in Glossary for the new Material, Unity’s built-in Standard Particle Shaders work well with Trail Renderers. If you apply a Texture to a Trail Renderer, the Texture should be of square dimensions (for example 256x256, or 512x512).
If you apply more than one Material to a Trail Renderer, the trail is rendered once for each Material.
See Creating and using Materials for more information.
The Min Vertex Distance value determines how far in world units the GameObject to which the trail applies must travel before a new segment is added to the trail. Low values like 0.1 create trail segments more often, creating smoother trails. Higher values like 1.5 create segments that are more jagged in appearance. Additionally, wide trails may exhibit visual artifacts when the vertices are very close together and the trail changes direction significantly over a short distance.
For performance reasons, it is best to use the largest possible value that achieves the effect you are trying to create.
This section contains the following sub-sections:
Property | Function | |
---|---|---|
Width | Define a width value, and a curve value to control the width of your trail along its length. The curve is sampled at each vertex, so its accuracy is limited by the number of vertices in your trail. The overall width of the trail is controlled by the width value. |
|
Time | Define the lifetime of a point in the trail, in seconds. | |
Min Vertex Distance | The minimum distance between points in the trail, in world units. | |
AutoDestruct | Enable this to destroy the GameObject to which the Trail Renderer component is attached after it has not moved for Time seconds. | |
Emitting | When this is enabled, Unity adds new points in the trail. When this is disabled, Unity does not add new points to the trail. Use this to pause and unpause trail generation. | |
Color | Define a gradient to control the color of the trail along its length. Unity samples colors from the Color gradient at each vertex. Between each vertex, Unity applies linear interpolation to colors. Adding more vertices to your trail might give a closer approximation of a detailed gradient. |
|
Corner Vertices | This property dictates how many extra vertices are used when drawing corners in a trail. Increase this value to make the trail corners appear rounder. | |
End Cap Vertices | This property dictates how many extra vertices are used to create end caps on the trail. Increase this value to make the trail caps appear rounder. | |
Alignment | Set the direction that the trail faces. | |
View | The trail faces the CameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info See in Glossary. |
|
TransformZ | The trail faces the Z axis of its Transform componentA Transform component determines the Position, Rotation, and Scale of each object in the scene. Every GameObject has a Transform. More info See in Glossary. |
|
Texture Mode | Control how the Texture is applied to the trail. | |
Stretch | Map the texture once along the entire length of the trail. | |
Tile | Repeat the texture along the trail, based on its length in world units. To set the tiling rate, use Material.SetTextureScale. | |
DistributePerSegment | Map the texture once along the entire length of the trail, assuming all vertices are evenly spaced. | |
RepeatPerSegment | Repeat the texture along the trail, repeating at a rate of once per trail segment. To adjust the tiling rate, use Material.SetTextureScale. | |
Shadow Bias | Set the amount to move shadows away from the Light to remove shadowing artifacts. | |
Generate Lighting Data | If enabled, Unity builds the trail geometry with normals and tangents included. This allows it to use Materials that use the SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info See in Glossary lighting. |
The Materials section in the Trail Renderer Inspector lists the Materials that the Trail Renderer is using.
Property | Function |
---|---|
Size | Specify the number of Materials in the Trail Renderer. If you decrease the size of the list of Materials, Unity deletes the elements at the end of the list. |
Element | A list of the Materials in the Trail Renderer, in numeric order. The first element is always named Element 0. |
The Lighting section contains properties for how this Trail Renderer interacts with lighting in Unity.
Property | Function | |
---|---|---|
Cast Shadows | Specify if and how the trail casts shadows when a suitable Light shines on it. | |
On | The trail casts a shadow when a shadow-casting Light shines on it. | |
Off | The trail does not cast shadows. | |
Two Sided | The trail casts two-sided shadows from either side. EnlightenA lighting system by Geomerics used in Unity for lightmapping and for Realtime Global Illumination. More info See in Glossary and the Progressive LightmapperA tool in Unity that bakes lightmaps according to the arrangement of lights and geometry in your scene. More info See in Glossary do not support two-sided shadows. |
|
Shadows Only | Shadows from the trail are visible, but not the trail itself. | |
Receive Shadows | Enable this option to make the trail display any shadows that are cast upon it. This is only supported when using the Progressive Lightmapper. |
The Probes section contains properties relating to Light Probes and Reflection Probes.
Property | Function | |
---|---|---|
Light Probes | Set how this Renderer receives light from the Light Probe system. For more information, see Light ProbesLight probes store information about how light passes through space in your scene. A collection of light probes arranged within a given space can improve lighting on moving objects and static LOD scenery within that space. More info See in Glossary. |
|
Off | The Renderer doesn’t use any interpolated Light Probes. | |
Blend Probes | The Renderer uses one interpolated Light Probe. This is the default value. | |
Use Proxy Volume | The Renderer uses a 3D grid of interpolated Light Probes. | |
Custom Provided | The Renderer extracts Light Probe shader uniform values from the MaterialPropertyBlock. | |
Proxy Volume Override | Set a reference to another GameObject that has a Light Probe Proxy Volume component. This property is only visible when Light Probes is set to Use Proxy Volume. |
|
Reflection Probes | Set how the Renderer receives reflections from the Reflection ProbeA rendering component that captures a spherical view of its surroundings in all directions, rather like a camera. The captured image is then stored as a Cubemap that can be used by objects with reflective materials. More info See in Glossary system. |
|
Off | Disables Reflection Probes. Unity uses a skyboxA special type of Material used to represent skies. Usually six-sided. More info See in Glossary for reflection. |
|
Blend Probes | Enables Reflection Probes. Blending occurs only between Reflection Probes. This is useful in indoor environments where the character may transition between areas with different lighting settings. | |
Blend Probes and Skybox | Enables Reflection Probes. Blending occurs between Reflection Probes, or between Reflection Probes and the default reflection. This is useful for outdoor environments. | |
Simple | Enables Reflection Probes, but no blending occurs between Reflection Probes when there are two overlapping volumes. | |
Anchor Override | Set the Transform that Unity uses to determine the interpolation position when using the Light Probe or Reflection Probe systems. By default, this is the centre of the bounding box of the Renderer’s geometry. |
The Additional Settings contain additional properties.
Property | Function | |
---|---|---|
Motion Vectors | Set whether to use motion vectors to track this Renderer’s per-pixel, screen-space motion from one frame to the next. You can use this information to apply post-processing effects such as motion blur. Note that not all platforms support motion vectors. See SystemInfo.supportsMotionVectors for more information. |
|
Camera Motion Only | Use only Camera movement to track motion. | |
Per Object Motion | Use a specific pass to track motion for this Renderer. | |
Force No Motion | Do not track motion. | |
Dynamic Occlusion | When Dynamic Occlusion is enabled, Unity culls this Renderer when it is blocked from a Camera’s view by a Static Occluder. Dynamic Occlusion is enabled by default. When Dynamic Occlusion is disabled, Unity does not cull this Renderer when it is blocked from a Camera’s view by a Static Occluder. Disable Dynamic Occlusion to achieve effects such as drawing the outline of a character behind a wall. See documentation on occlusion cullingA Unity feature that disables rendering of objects when they are not currently seen by the camera because they are obscured (occluded) by other objects. More info See in Glossary for more information. |
|
Sorting Layer | The name of this Renderer’s Sorting Layer. | |
Order in Layer | This Renderer’s order within a Sorting Layer. |