关于Unity中定时器的简易使用
定时器
一段指定的时间后执行某个函数或者某个语句
用法
//定时器写法1
flaot total_time;
void Update(){
this.total_time += (Time.deltaTime);
if(total_time > = )//5秒后停止
{
return;
}
}
//定时器写法2
void Hello(){ }
this.Invoke("Hello",5.0f);//5秒后执行Hello函数
void Hello(){ }
this.InvokeReapting("Hello",,);//每隔3秒调用一次Hello函数
this.CancelInvoke("Hello");//取消重复定时器
//定时器写法3
协程的定时中断
using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class game : MonoBehaviour
{
private int level = ;
// Use this for initialization
void Start()
{
//启动一个协程,必须是继承自MonoBehaviour才能使用
this.StartCoroutine(this.con_entry()); //主线程依然在执行
//...
} //协程和主线程是在同一个线程里面的,不会有什么线程切换
//协程的入口函数
IEnumerator con_entry()
{
//协程的代码
Debug.Log("con_entry run!!");
Debug.Log("level:" + this.level);//也能够拿到this的变量
//end yield return new WaitForSeconds();//定时,使用yield中断协程程序,设置3秒中之后才中断协程 //协程结束以后的代码,比如去网上捞一个什么东西,下载图片之类的,捞完之后的操作
//end
} // Update is called once per frame
void Update()
{ }
}
//定时器写法4
多线程里面的线程休眠方法
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Threading;//多线程要用到的库,多线程对象所在的名字空间 public class game : MonoBehaviour
{
// Use this for initialization
void Start()
{ //创建一个线程t1,关联入口函数
Thread t1 = new Thread(this.thread_run);//不是像协程那样直接运行
t1.Start();//这里才开始执行,开启线程 } //线程t1的入口函数
void thread_run()
{
int i = ;
while (i < )
{//打印10次,每次直接间隔3秒
Debug.Log("thread_run");
i++;
Thread.Sleep();//让线程休息3秒钟,有点像定时器,里面参数是毫秒为单位的
}
} // Update is called once per frame
void Update()
{ }
}
关于Unity中定时器的简易使用的更多相关文章
- Unity中的定时器与延时器
JavaScript中的定时器与延时器,分别是 setInterval.setTimeout,对应的清理函数是:clearInterval.clearTimeout. 而在Unity中,则分别是:In ...
- 浅谈unity中gamma空间和线性空间
转载请标明出处:http://www.cnblogs.com/zblade/ 一.概述 很久没有写文章了,今天写一篇对gamma空间和线性空间的个人理解总结,在查阅和学习了各个资料后,算是一个个人笔记 ...
- 在Unity中检测死循环和卡死
当游戏在手机/模拟器上卡死,logcat没有日志输出,也没有卡死堆栈信息或者bugly也没有捕获到异常,你是否很焦急?本文介绍一下我们项目中检测Unity卡死的方法,也许适合你使用. 实现原理 在绝大 ...
- Unity中使用Attribute
Attribute是c#的语言特性 msdn说明如下: The Attribute class associates predefined system information or user-def ...
- 在Unity中使用UGUI修改Mesh绘制几何图形
在商店看到这样一个例子,表示很有兴趣,他们说是用UGUI做的.我想,像这种可以随便变形的图形,我第一个就想到了网格变形. 做法1: 细心的朋友应该会发现,每个UGUI可见元素,都有一个‘Canvas ...
- Unity中使用WebView
Unity中使用WebView @(设计) 需求,最近游戏中需要引入H5直播页面和更新比较频繁的赛事页面,需求包括:加密传参数.和Unity交互,在Unity框架下其实有几种方案: 内置函数Appli ...
- Unity中创建二维码
在网络上发现了一个可以把字符串转换成二维码的dll,但是我们要怎么使用他呢.不废话,直接进入主题. 用到的引用 using UnityEngine;using ZXing;using ZXing.Qr ...
- 在Unity中创建可远程加载的.unity3d包
在一个Unity项目中,发布包本身不一定要包括所有的Asset(译为资产或组件),其它的部分可以单独发布为.unity3d,再由程序从本地/远程加载执行,这部分不在本文讨论范围.虽然Unity并没有直 ...
- 【原创翻译】初识Unity中的Compute Shader
一直以来都想试着自己翻译一些东西,现在发现翻译真的很不容易,如果你直接把作者的原文按照英文的思维翻译过来,你会发现中国人读起来很是别扭,但是如果你想完全利用中国人的语言方式来翻译,又怕自己理解的不到位 ...
随机推荐
- IOS 实现录音PCM转MP3格式(边录音边转码)
最近做的一个项目,项目中有个录音功能,采用的录音方法是IOS下的AVAudioRecorder.录音效果不错,但是录制的原生.pcm文件太大,每分钟大约10M左右. 找了下相关的音频压缩方法,用spe ...
- [100]find&xargs命令
打算把基础命令常用选项做个总结. find命令参数 - 命令格式 find . -type f -name '*.txt' - 命令参数 find #查找文件 -type #指定类型 f 文件 d 目 ...
- WCF学习分享2
整个solution结构例如以下: 以下介绍每一个project: 1. Service.Interface 定义契约 ICalculator.cs watermark/2/text/aHR0cDov ...
- JAVA CAS原理深度分析 volatile,偏向锁,轻量级锁
JAVA CAS原理深度分析 http://blog.csdn.net/hsuxu/article/details/9467651 偏向锁,轻量级锁 https://blog.csdn.net/zqz ...
- raft Paxos
CONSENSUS: BRIDGING THEORY AND PRACTICE https://ramcloud.stanford.edu/~ongaro/thesis.pdf https://web ...
- select元素添加option的add()方法 | try{}catch{}
1.javascript中的select元素添加option使用add()方法 select的add方法,第一个参数是需要被添加的option元素,第二个参数决定了被添加的位置 普通浏览器中,第二个参 ...
- [PY3]——环境配置(1)——pyenv | pip | ipython | jupyter(含安装pyenv环境shell脚本)
1.关于pyenv (1)pyenv是一个开源的.shell脚本编写的工具:Simple Python version management (2)为什么使用pyenv:当多个项目同时在开发与维护时, ...
- ubuntu14 安装 端口转发工具rinetd
1,下载 第一中方式 用 apt-get install rinetd 或者从官网下载http://www.boutell.com/rinetd/ 2,配置,端口转发的配置在 /etc/rinet ...
- Animation.setFillAfter and Animation.setFillBefore的作用
转:http://blog.csdn.net/yangweigbh/article/details/9788531 setFillAfter(boolean fillAfter) 在Android ...
- 【转】提交http请求之python与curl
提交http请求之python与curl 由于Openstack是python实现wsgi的REST ful架构,在学习和调试的过程中,常常会遇到http请求的提交,于是顺手整理下python和cur ...