当前位置:   article > 正文

Unity如何画曲线?网格绘制贝塞尔曲线_unity ugui绘制贝塞尔曲线

unity ugui绘制贝塞尔曲线

原理

一般的Image Mesh为一个矩形区域,它的顶点数为4是固定在四个角的,所以我们能看到的是个矩形图。
在这里插入图片描述
为了让Image产生弯曲的效果,我们就是增加Mesh中矩形区域的数量,并且使其按一定的曲线排列。
最终达到曲线的效果。
在这里插入图片描述
这里使用的曲线为贝塞尔曲线,这种曲线非常灵活,可扩展,达到理想的效果。
脚本如下:

using UnityEngine;
using UnityEngine.UI;

public class BezierMeshImage : Image 
{
    //控制点坐标
    Vector2 controlV2 = new Vector2(0,200);
    //密集度 mesh数量
    int intensity = 50;
    //mesh 宽度 
    int width = 8;
    // 以上属于动态配置参数,为了方便共享才放在此中,建议使用时提取出去动态配置。

    float halfW;
    Vector3[] bezierPoints;
    protected override void Start()
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/580270
推荐阅读
相关标签
  

闽ICP备14008679号