Unity TrailRenderer的基本了解

在Unity中,TrailRenderer组件用于在对象移动时创建轨迹效果。通常用于增强游戏中的动态物体,比如子弹、飞行道具或者角色移动时的拖尾效果。

下面来了解下它的基本信息。

1、创建

法1:通过代码创建

using UnityEngine;

public class TrailRendererCreator : MonoBehaviour
{
    private TrailRenderer trailRenderer; // TrailRenderer组件

    void Start()
    {
        // 创建一个新的GameObject并将TrailRenderer组件添加到其中
        GameObject trailObject = new GameObject("Trail");
        trailRenderer = trailObject.AddComponent<TrailRenderer>();

        // 设置TrailRenderer的属性
        trailRenderer.time = 1.0f; // 轨迹持续时间
        trailRenderer.startWidth = 0.5f; // 起始宽度
        trailRenderer.endWidth = 0.1f; // 结束宽度
        trailRenderer.startColor = Color.red; // 起始颜色
        trailRenderer.endColor = Color.yellow; // 结束颜色

        // 设置其他属性,如材质、纹理等
        trailRenderer.material = new Material(Shader.Find("Sprites/Default"));
        trailRenderer.textureMode = LineTextureMode.Tile;
    }

    void Update()
    {
        // 在Update方法中可以动态更新TrailRenderer的位置等属性
        //if (trailRenderer != null)
        //{
        //    trailRenderer.transform.position = transform.position; // 设置TrailRenderer的位置跟随对象
        //}
    }
}

法2:通过编辑器手动添加TrailRenderer组件

  1. 在Unity编辑器中,选择要添加TrailRenderer组件的游戏对象。
  2. 在Inspector面板中,点击"Add Component"按钮。
  3. 在搜索框中输入"TrailRenderer",然后选择"TrailRenderer"选项。

法3:通过在Hierarchy中右键鼠标,点选Effects->Trail添加TrailRenderer组件

2、基本属性

如图所示,为TrailRenderer组件的一些基本属性。

其中,

  1. Width Curve:可以使用曲线来调整轨迹的宽度。
  2. Time:轨迹效果的持续时间。
  3. Min Vertex Distance:两个轨迹点之间的最小距离,用于控制轨迹的平滑度。
  4. Autodestruct:轨迹是否在播放完成后自动销毁。
  5. Emitting:是否在运行时生成轨迹。当Emitting属性为true时,TrailRenderer会生成轨迹效果,而当Emitting属性为false时,TrailRenderer将停止生成轨迹效果,但仍会保留当前的轨迹显示,可以用于动态控制轨迹生成。
  6. Color:用于设置轨迹的颜色。
  7. Corner Vertices:用于设置轨迹拐角的顶点数。增加这个值可以使轨迹在拐角处更加平滑。
  8. End Cap Vertices:设置轨迹端点处的顶点数。增加这个值可以使轨迹的端点更加平滑。
  9. Alignment :确定轨迹的对齐方式。
    • View:轨迹始终面向相机,无论相机位置如何,轨迹始终朝向相机。
    • Transform Z:控制轨迹在Z轴上对齐。
  10. Texture Mode :设置轨迹的纹理模式。
    • Stretch:纹理会被拉伸到整个轨迹上。
    • Tile:纹理会在轨迹上重复平铺。
    • Distribute Per Segment:纹理会在每个轨段上均匀分布,确保纹理不会被拉伸或压缩。
    • Repeat Per Segment:纹理会在每个轨段上重复显示,可能导致纹理在轨段之间不连续。
  11. Shadow Bias:用于调整阴影的偏移量,可以避免阴影出现Z-fighting问题。
  12. Generate Lighting Data:当启用时,Unity会为TrailRenderer生成光照数据,以便正确地响应场景中的光照效果。
  13. Use World Space :确定轨迹是使用世界空间坐标还是本地空间坐标进行绘制。
    • 当勾选时,轨迹将使用世界空间坐标进行绘制。
    • 当未勾选时,轨迹将使用相对于其父对象的本地空间坐标进行绘制。
  14. Materials:这个属性用于设置轨迹的材质。你可以为TrailRenderer指定一个或多个材质,用于控制轨迹的外观,例如颜色、贴图等。
  15. Lighting :这个属性用于控制轨迹在场景中的光照效果,其中:
    • Cast Shadows:属性用于控制轨迹是否投射阴影到其他物体上。
    • Receive Shadows:属性用于控制轨迹是否接收其他物体投射的阴影。
  16. Probes :探针相关设置,其中:
    • Light Probes(光照探针):用于在场景中采样光照信息,以便在动态物体上正确地应用光照。
    • Reflection Probes(反射探针):用于捕获环境中的反射信息,以便在物体表面正确地反映周围环境。
  17. Additional Settings(附加设置)
    • Motion Vectors(运动矢量):用于控制是否为轨迹启用运动矢量,以便在运动模糊等效果中使用。
    • Dynamic Occlusion(动态遮挡):用于控制轨迹是否参与动态遮挡计算,以在场景中实现更好的性能和视觉效果。
    • Sorting Layer(排序层):用于控制轨迹是否参与动态遮挡计算,以在场景中实现更好的性能和视觉效果。用于指定轨迹所在的排序层,以确定其在场景中的渲染顺序。
    • Order in Layer(层中的顺序):用于指定轨迹在其所在排序层中的渲染顺序,影响其在同一排序层中的渲染顺序。

用于指定轨迹所在的排序层,以确定其在场景中的渲染顺序。

  • Order in Layer(层中的顺序):用于指定轨迹在其所在排序层中的渲染顺序,影响其在同一排序层中的渲染顺序。

以上就是TrailRenderer组件的一些基本信息,我们只有了解它们,才能更好的运行它。

相关推荐
charon877816 小时前
UE ARPG | 虚幻引擎战斗系统
游戏引擎
小春熙子17 小时前
Unity图形学之Shader结构
unity·游戏引擎·技术美术
Sitarrrr19 小时前
【Unity】ScriptableObject的应用和3D物体跟随鼠标移动:鼠标放置物体在场景中
3d·unity
极梦网络无忧19 小时前
Unity中IK动画与布偶死亡动画切换的实现
unity·游戏引擎·lucene
逐·風1 天前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
_oP_i1 天前
Unity Addressables 系统处理 WebGL 打包本地资源的一种高效方式
unity·游戏引擎·webgl
代码盗圣1 天前
GODOT 4 不用scons编译cpp扩展的方法
游戏引擎·godot
Leoysq2 天前
【UGUI】实现点击注册按钮跳转游戏场景
游戏·unity·游戏引擎·ugui
PandaQue2 天前
《潜行者2切尔诺贝利之心》游戏引擎介绍
游戏引擎
_oP_i2 天前
unity中 骨骼、纹理和材质关系
unity·游戏引擎·材质