当前位置:   article > 正文

【巨人的肩膀上制造世界】——10——Unity3D实用插件之Vectrosity,轻松便捷的实现2D/3D画线功能_unity中vectrosity

unity中vectrosity

            【巨人的肩膀上制造世界】——10——Unity3D实用插件之Vectrosity,轻松便捷的实现2D/3D画线功能


目录

1、博客介绍

2、内容

 (1)编辑器预制线条

 (2)编辑器修改线条

 (3)线条的属性

 (4)代码画线

 (5)线条碰撞

3、推送

4、结语


1、博客介绍

       本篇作为插件学习类第10篇文章,介绍一款号称Untiy最好用的画线工具,Vectrosity,博主试了试又看了看例子,确实好使,本篇文章做个简短的介绍。


2、内容

(1)编辑器预制线条

首先,导入插件后,我们可以直接通过Hierarchy面板,右键>UI>VectorLine的形式创建一个线段,这时就可以在视窗和面板内看到生成的线条。

 

 (2)编辑器修改线条

我们选中线条后可以看到在Scene视窗内线条两端会出现能够拖动的圆球,我们可以通过圆球来改变线条的位置和长度

 

按下Shift键后点击Scene视窗,我们可以增加线段点的数量

 

按下Ctrl键后点击Scene视窗,我们可以删除已存在的线段的点,但最低要保存两个点

 

按下Alt键我们可以整体的拖动线条的位置

 

(3)线条的属性

Style修改线条整体颜色,宽度和碰撞盒等
Texture给线条赋上贴图
Partial Line那些段的线条被显示
Line Points显示线条上的点的坐标
Colors设置每段线条的颜色和过度
Widths设置每段线条的宽度和过度

 

(4)代码画线

上述说的都是在编辑器情况下干的事情,这里说一下在代码中画线,通过几个小例子展示给大家,更多的功能就自己探索吧。

 

  1. //画直线
  2. var linePoints = new List<Vector2>();
  3. linePoints.Add (new Vector2(0, 0));
  4. linePoints.Add (new Vector2(200,500));
  5. var line = new VectorLine("Line", linePoints, 2.0f);
  6. line.Draw();
  7. 所有的画线均是通过实例一个VectorLine来实现的,最基本的画线就是添加坐标后,
  8. 实例时赋值给VectorLine,最后调用Draw方法来绘制在屏幕上。

 

  1. //画曲线
  2. var line3 = new VectorLine("CurveLine", new List<Vector2>(110),null, 5.0f, LineType.Continuous, Joins.Weld);
  3. line3.MakeCurve(new Vector2(0, 0),new Vector2(0,100),new Vector2(300,0),new Vector2(300,300),100);
  4. line3.Draw();
  5. 我们先看VectorLine的参数信息
  6. 参数一:"CurverLine"是生成的线条在Hierarchy面板上的名字
  7. 参数二:new List<Vector2>(110) 是存放曲线点的链表,曲线的点数不能大过链表的长度
  8. 参数三:null 这里是设置线条的贴图
  9. 参数四:5.0f 这里设置线条的宽度
  10. 参数五:LineType 这里设置线条的类型
  11. 参数六:Joins 这里是设置两条线段之间的过度方式
  12. 我们再看曲线方法MakeCurve的参数
  13. 参数一:曲线的起点
  14. 参数二:曲线的参考锚点
  15. 参数三:曲线的终点
  16. 参数四:曲线的参考锚点
  17. 参数五:曲线的点数

  1. //画圆
  2. var line3 = new VectorLine("CurveLine", new List<Vector2>(110),null, 5.0f, LineType.Continuous, Joins.Weld);
  3. line3.MakeCircle(new Vector3(100,100),100);
  4. line3.Draw();
  5. 同样是先实例VectorLine,在调用画圆方法MakeCircle
  6. 我们看MakeCircle的参数
  7. 参数一:圆的圆心位置
  8. 参数二:半径

还有很多封装好的方法呀,围绕模型定点画线等等的,具体的自行查看吧文档吧

 

 (5)线条碰撞

线条是可以添加碰撞器的,而且在特定情况下是可以影响3D物体的,需要设置一下几点

1、线条属性勾选Collider

2、渲染一下相机  VectorLine.SetCamera3D(gameObject);

3、3D模型的刚体和碰撞盒必须设置为2D


3、推送

Github:https://github.com/KingSun5


4、结语

       该插件功能还是很强大的,具体有需要的可以查看文档和查看插件附带的例子,若是觉得博主的文章写的不错,不妨关注一下博主,点赞一下博文,另博主能力有限,若文中有出现什么错误的地方,欢迎各位评论指摘。

       QQ交流群:806091680(Chinar)

       该群为CSDN博主Chinar所创,推荐一下!我也在群里!

       本文属于原创文章,转载请著名作者出处并置顶!!!!
 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/118399
推荐阅读
相关标签
  

闽ICP备14008679号