关于 int Mathf.PingPong(t, length); 原理,相当于

#include <iostream>
#include <vector> int test(int t, int length)
{
if(t / length % == )
return length - t % length;
else
return t % length;
} int main()
{
int length = ;
std::vector<int> vect{,,,,,,,,};
for(auto& item : vect)
{
std::cout<<test(item,length)<<",";
}
}

说明参见:http://forum.unity3d.com/threads/mathf-repeat-vs-mathf-pingpong.1388/

类似的还有 Color.Lerp    / Vector3.Lerp

在 Update 里调用  Color32.Lerp(colorWhite, colorBlack, Time.time); 一般是指在1秒钟内完成变色,但如果一开始Time.time就不等于0,则结果不是这样,假设Time.time开始执行时就>1,则执行到此代码时,立即变色,如下:

float time = ;

void Update () {
time += Time.deltaTime;
if(time>)
{
Color c = Color32.Lerp(Color.white, Color.black, Time.time);
Debug.Log(c.r + "," + c.g + "," + c.b);
gameObject.GetComponent<Image>().color = c;
}
}

如果要使用3秒时间完成变色,则需要如下代码:

float time = ;

void Update () {
gameObject.GetComponent<Image>().color = Color32.Lerp(Color.white, Color.black, time);
time += Time.deltaTime / ;
}

Time.time是指

unity 协程

调用 StartCoroutine ,相当于创建并进入了另一个线程,并执行其中的函数,直到遇到第一个 yield return,此时协程暂停,然后将程序执行权返还给调用函数,什么时候恢复执行是根据 yield return 后面的参数决定的,如果是 yield return null; 表示一帧后恢复,如果是 yield return new WaitForSeconds(3); 表示3秒后恢复,如果后面跟一个对象,则该对象不为 nil 时恢复 。

Unity API的更多相关文章

  1. 离线unity API文档

    只要安装的时候勾选上document 打开unity选择help-ScriptReference就可以打开本地API了.

  2. unity API 之EventSystem.current.IsPointerOverGameObject()

    命名空间 :UnityEngine.EventSystems 官方描述: public bool IsPointerOverGameObject(); public bool IsPointerOve ...

  3. Unity API 解析 (陈泉宏著)

    1 Application类 2 Camera类 3 GameObject类 4 HideFlags类 5 Mathf类 6 Matrix4x4类 7 Object类 8 Quaternion类 9 ...

  4. Unity API学习笔记(1)

    首先创建测试项目: 这里我选择了2D,其实都可以,之后可以在项目中修改. 修改方法: 进入正题. 首先看一下官方提供的>手册和>脚本API文档. 创建C#脚本文件并打开: 默认的脚本文件为 ...

  5. Unity API 解析(13)—— Vector3 类

    三维向量或三维坐标点 normalized —— 单位化向量 返回方向相同模长为1的向量 sqrMagnitude —— 模长平方 Scale —— 向量缩放 Angle —— 两向量夹角 Cross ...

  6. Unity API学习笔记(2)-GameObject的3种Message消息方法

    官方文档>GameObject 首先建立测试对象: 在Father中添加两个脚本(GameObejctTest和Target),分别用来发送Message和接受Message: 在其它GameO ...

  7. Unity API笔记

    1. 返回某范围的随机数 Random.Range method. static float Range(float min, float max); returns a float – return ...

  8. Unity中文API参考手册

    转载请标明原文地址:http://www.cnblogs.com/zhangyukof/p/6835582.html  Unity5中文脚本手册 网页版 Unity API 执行顺序: Unity5中 ...

  9. 快速上手Unity原生Json库

    现在新版的Unity(印象中是从5.3开始)已经提供了原生的Json库,以前一直使用LitJson,研究了一下Unity用的JsonUtility工具类的使用,发现使用还挺方便的,所以打算把项目中的J ...

随机推荐

  1. 【bzoj1499】 NOI2005—瑰丽华尔兹

    http://www.lydsy.com/JudgeOnline/problem.php?id=1499 (题目链接) 题意 给出一个n*m的地图,刚开始人在(x,y),每次给出一段区间(l,r,t) ...

  2. 看看你的正则行不行——正则优化一般的json字符串

    json字符串很有用,有时候一些后台接口返回的信息是字符串格式的,可读性很差,这个时候要是有个可以格式化并高亮显示json串的方法那就好多了,下面看看一个正则表达式完成的json字符串的格式化与高亮显 ...

  3. Cannot convert value of type [java.lang.String] to required type [java.util.Date] for property 'xxx': no matching editors or conversion strategy found

    今天在完成项目的时候遇到了下面的异常信息: 04-Aug-2014 15:49:27.894 SEVERE [http-apr-8080-exec-5] org.apache.catalina.cor ...

  4. django 提示ImportError: cannot import name json_response

    from json_response import JsonResponse, json_response as json_resp 使用的语句如上,其实并不是没有安装,只是需要升级一下 pip in ...

  5. Unable to execute dex: java.nio.BufferOverflowException.解决办法

    异常提示: [2014-01-16 09:27:35 - Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Ch ...

  6. 【Alpha版本】 第七天 11.15

    一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 完成我要招聘的招聘详情显示,完成简历填写及显示功能 完成我要应聘的 ...

  7. JZOJ P1830[9.30]送牛奶

    传送门 临近NOIp,写一些简单题. 二分+BFS,注意的是要把数组开小点,有效减少memset的时间. //OJ 1830 //by Cydiater //2016.9.22 #include &l ...

  8. BZOJ4590: [Shoi2015]自动刷题机

    显然看着就是二分,仔细看的话显然刷的题数随n增大单调不升. 挂了一发是因为无解输出一个-1而不是两个…… #include<cstdio> #include<algorithm> ...

  9. 9月26日JavaScript表单验证、正则表达

    一.非空验证 trim:去空格(去掉前后的空格),任何字符串都可以用这个方法.写法为:if(v.trim().length==0),表示如果去掉空格后的字符串的长度为0. <body> & ...

  10. javascript字符串截取的substring、substr和slice

    本文详细的介绍了javascript中substring().substr()和slice()三个JS字符串截取的方法,substring()方法用于提取字符串中介于两个指定下标之间的字符.subst ...