栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

轨迹路线生成与运动插件 Curvy Spline 的使用

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

轨迹路线生成与运动插件 Curvy Spline 的使用

一、前言

关于路线插件,Unity商店有一个简单好用且免费插件——Bézier Path Creator (https://assetstore.unity.com/packages/tools/utilities/b-zier-path-creator-136082)。可以支持路径运行和路线物体排序。使用比较简单这里就不过多介绍,这里主要讲的是另一款更强大的路线插件——Curvy Spline (https://assetstore.unity.com/packages/tools/utilities/curvy-splines-7038)。当然这是一款收费插件,我改用Curvy Spline 的重要原因是它拥有Bézier Path Creator没有的两个重要功能(其实多出的远不止两个功能)。一个是它支持动态生成mesh;二是分叉路线切换运行。但Curvy Spline一个很大缺点就是学习上手成本比较大。这次讲讲他的主要使用。

二、Curvy Spline使用 (一) 路线编辑

导入插件后再Scene窗口会多出及个工具菜单

其中Create里的Shape是几个插件内置的路线图形,

而旁边的Generator则是一个蓝图编辑工具编辑工具

DrawSpline就是我们路线点绘制工具

如图可以选择不同平面进行绘制,按住Ctrl键然后在Scene中即可用鼠标点击绘制

同时会在Hierachy窗口生成相应的元素对象

插值模式中我们最常用的应该是贝塞尔曲线,选择的贝塞尔曲线就可以很灵活的在每个贵点点进行曲度编辑

(二)动态Mesh生成

首先要创建打开编辑蓝图

右键点击添加Shap Extrusion

构成动态mesh的4个基本块如下:

形成的mesh效果如下

一个mesh中也可以使用多个材质球,首先要在蓝图的ShapeExtrusion勾选材质和展UV,还要在Volume里再添加一个材质球,然后材质球就有默认的编号Mat0,Mat1。

最后在对应的形状节点选择需要使用的材质ID,以及使用位置,相当于分UV.

我这里使用了一个金属材质和全透明材质

(三) 排序模型

添加排序模型需要增加如下3个蓝图组件

效果如下

再增加一个物体排序

(四)路线运动

需要让物体沿轨迹运动,挂上SplineController脚本即可

实现路径岔道运行,则需要先把两条路径的点连接起来,选中两点,然后点击菜单工具的Connect即可


然后再在运动物测上挂一个代码

public class SplineTest : MonoBehaviour
{
    public SplineController splineController;
    void Start()
    {
        //运行到每个节点触发
        splineController.OnControlPointReached.AddListenerOnce(OnCPReached);
    }

    private void OnCPReached(CurvySplineMoveEventArgs arg0)
    {
        //切换一条路径
        splineController.ConnectionBehavior = SplineControllerConnectionBehavior.RandomSpline;
        Debug.Log(arg0.ControlPoint);
    }
}

这样就能在运动到交叉节点切换路线了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/901680.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号