Unity3D 画线插件 Vectrosity 画一个一直循环的正弦函数曲线
直接贴代码
public Material myMaterisl;
float fx;//曲线最左边的X坐标
float fy;//曲线趋于直线时y轴坐标
float fyMax = 0f;//曲线最高点
float fyContunt = 1f;//曲线于y轴坐标的交点
VectorLine energyLine;
Vector2[] energyLinePoints;
float timer;
float energyLevel = 4f;
void Start()
{
fx = 0f;
fy = 125f; energyLinePoints = new Vector2[100];
energyLine = new VectorLine("Energy", energyLinePoints, myMaterisl, 5f, LineType.Continuous);
fnSetEnergyLinePointsMove();
}
void fnSetEnergyLinePoints()
{
for (int i = 0; i < energyLinePoints.Length; i++)
{
float x = Mathf.Lerp(70f, 470f, (0.0f + i) / energyLinePoints.Length);//设置点X的坐标
energyLinePoints[i].y = fy * (1f + Mathf.Sin(x) * 0.1f * energyLevel);
energyLinePoints[i] = new Vector2(x, energyLinePoints[i].y);//第一次设置点x,y的坐标 }
}
void fnSetEnergyLinePointsMove()
{
for (int i = 0; i < energyLinePoints.Length; i++)
{
float x = Mathf.Lerp(70f, 470f, (i + .0f) / energyLinePoints.Length);//设置点X的坐标
energyLinePoints[i] = new Vector2(x, fy);//第一次设置点x,y的坐标
}
} void Update()
{ } void FixedUpdate()
{
//让曲线向左运动 int i;
for (i = 0; i < energyLinePoints.Length - 1; i++)
{
energyLinePoints[i].y = energyLinePoints[i + 1].y;//让当前点的y值=它右面点的y值,就是曲线向左移动
}
timer += Time.deltaTime * Mathf.Lerp(10.0f, 20.0f, energyLevel);
energyLinePoints[i].y = fy * (1f + Mathf.Sin(timer) * .1f * energyLevel); }
void LateUpdate()
{
energyLine.Draw();
}
把脚本添加到摄像机上
运行效果如图:
Unity3D 画线插件 Vectrosity 画一个一直循环的正弦函数曲线的更多相关文章
- Unity3D 画线插件 Vectrosity_Simple2DLine
Vectrosity是一个很方便的画线插件,用它我们可以画出2D,3D,贝塞尔,圆,椭圆等各种线条图案. :链接: http://pan.baidu.com/s/1pJjTFjt 密码: uesn 首 ...
- CGContextRef 画线简单用法
CGContextRef CGContextMoveToPoint(context,150,50);//圆弧的起始点 CGContextAddArcToPoint(context,100,80,130 ...
- unity3d NavMeshAgent 寻路画线/画路径
今天在群里看见有个小伙在问Game视图寻路时怎么画线 正好前几天写了个寻路,而且自己也不知道具体怎么在寻路时画线,所以决定帮帮他,自己也好学习一下 在百度查了一下资料,直接搜寻路画路径.寻路画线... ...
- unity3d之在屏幕上画线
如何在屏幕上画线,简单的代码如下: using UnityEngine; public class Test : MonoBehaviour { void OnGUI() { GL.LoadOrtho ...
- unity3d 使用GL 方式画线
这个是画线部分 private Vector3[] linePoints; public int m_LineCount; public int m_PointUsed; public void Re ...
- MFC画线功能总结
本文仅用于学习交流,商业用途请支持正版!转载请注明:http://www.cnblogs.com/mxbs/p/6216464.html MFC画线功能要点有二:其一,鼠标按下时记录初始位置为线的起始 ...
- MFC消息映射机制以及画线功能实现
---此仅供用于学习交流,切勿用于商业用途,转载请注明http://www.cnblogs.com/mxbs/p/6213404.html. 利用VS2010创建一个单文档标准MFC工程,工程名为Dr ...
- Android中Path类的lineTo方法和quadTo方法画线的区别
转载:http://blog.csdn.net/stevenhu_223/article/details/9229337 当我们需要在屏幕上形成画线时,Path类的应用是必不可少的,而Path类的li ...
- iOS小画板画线总结
一:基本画线: 使用贝赛尔曲线画: //创建路径 UIBezierPath* aPath = [UIBezierPath bezierPath]; //设置线宽 aPath.lineWidth = 5 ...
随机推荐
- Vijos1352 NOI2006 最大获利 最小权闭合图
Orz胡伯涛<最小割模型在信息学竞赛中的应用> 建图方法: 设立源点S和汇点T,S和用户(共M个)连边,载流量为满足其要求的获利 T和中转站(共N个)连边,载流量为建立该中转站的费用 每个 ...
- Android JIN返回结构体
一.对应类型符号 Java 类型 符号 boolean Z byte B char C short S int I long J float ...
- linux如何开机以命令行形式启动?
在管理员权限下,修改/etc/inittab文件即可.把id:5:initdefault:改为id:3:initdefault:就可以了. 如下图所示: 图1: . 图2:
- Dev gridview 调整字体大小
//调整表头字体大小 this.gridView1.Appearance.HeaderPanel.Font = new Font("Tahoma", 20, FontStyle.R ...
- input里面的查找标记 ő
<i id="J_SearchIcon" class="iconfont">ő</i> .iconfont {ont-family: i ...
- django笔记1
最近在博客园看来越来越多的关于python的文章,我看到时感觉特别的好,因为我也是一个特别喜欢python这门语言,喜欢python的简洁.干净,简洁而不失强大. 最近在学习django的Model模 ...
- Git配置安装使用教程操作github上传克隆数据
Git是何方神圣? Git是用C语言开发的分布版本控制系统.版本控制系统可以保留一个文件集合的历史记录,并能回滚文件集合到另一个状态(历史记录状态).另一个状态可以是不同的文件,也可以是不同的文件内容 ...
- iOS利用响应链机制点击tableview空白处关闭键盘-可以作为参考
http://www.jianshu.com/p/9717b792599c 是原文地址 处理关闭键盘的做法一般分为两种:1.放弃第一响应者身份:2.当前视图结束编辑.通常情况下只要我们在合适的时机 ...
- iOS开源项目
在结束了GitHub平台上“最受欢迎的Android开源项目”系列盘点之后,我们正式迎来了“GitHub上最受欢迎的iOS开源项目”系列盘点.今天,我们将介绍20个在GitHub上非常受开发者欢迎的i ...
- div+css知识点
前端书写规范: 1.所有书写均在英文半角状态下的小写: 2.id,class必须以字母开头: 3.所有标签必须闭合: 4.html标签用tab键缩进: 5.属性值必须带引号: 6.<!-- ht ...