位置: 编程技术 - 正文

【译】协程的使用(协程有什么用)

编辑:rootadmin

推荐整理分享【译】协程的使用(协程有什么用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:协程的理解,协程原理从入门到精通,协程的概念,协程到底是什么,协程的意义,协程的理解,协程的理解,协程的意义,内容如对您有帮助,希望把文章链接给更多的朋友!

作者ChevyRay ,年9月日,snaker7译 原文地址:

协程的参数

抽象化一个协程的第一个方法是给它传递参数,协程作为一个函数方法来说,它自然能够传递参数。这里有一个协程的例子,它在特定的地方输出了特定的信息。

嵌套的协程

在此之前,我们yield的时候总是用0(或者null),仅仅告诉程序在继续执行前等待下一帧。协程最强大的一个功能就是它们可以通过使用yield语句来相互嵌套。

&#;见为实,我们先来创建一个简单的Wait()程序,不需要它做任何事,只需要在运行的时候等待一段时间就结束。

接下来我们要编写另一个协程,如下:

第二个方法用了yield,但它并没有用0或者null,而是用了Wait()来yield,这相当于是说,“不再继续执行本程序,直到Wait程序结束”。

现在,协程在程序设计方面的能力要开始展现了。

控制对象行为的例子

在最后一个例子中,我们就来看看协程如何像创建方便的计时器一样来控制对象行为。协程不仅仅可以使用可计数的时间来yield,它还能很巧妙地利用任何条件。将它与嵌套结合使用,你会得到控制游戏对象状态的最强大工具。

运动到某一位置

【译】协程的使用(协程有什么用)

对于下面这个简单脚本组件,我们可以在Inspector面板中给targetPosition和moveSpeed变量赋&#;,程序运行的时候,该对象就会在协程的作用下,以我们给定的速度运动到给定的位置。

这样,这个程序并没有通过一个计时器或者无限循环,而是根据对象是否到达指定位置来yield。

按指定路径前进

我们可以让运动到某一位置的程序做更多,不仅仅是一个指定位置,我们还可以通过数组来给它赋&#;更多的位置,通过MoveToPosition() ,我们可以让它在这些点之间持续运动。

我还加了一个布尔变量,你可以控制在对象运动到最后一个点时是否要进行循环。

把Wait()程序加进来,这样就能让我们的对象在某个点就可以选择是否暂停下来,就像一个正在巡逻的AI守卫一样,这真是锦上添花啊!

注意:

如果你刚接触协程,我希望这两个教程能帮助你了解它们是如何工作的,以及如何来使用它们。以下是一些在使用协程时须谨记的其他注意事项:

l 在程序中调用StopCoroutine()方法只能终止以字符串形式启动(开始)的协程;l 多个协程可以同时运行,它们会根据各自的启动顺序来更新;l 协程可以嵌套任意多层(在这个例子中我们只嵌套了一层);l 如果你想让多个脚本访问一个协程,那么你可以定义静态的协程;l 协程不是多线程(尽管它们看上去是这样的),它们运行在同一线程中,跟普通的脚本一样;l 如果你的程序需要进行大量的计算,那么可以考虑在一个随时间进行的协程中处理它们;l IEnumerator类型的方法不能带ref或者out型的参数,但可以带被传递的引用;l 目前在Unity中没有简便的方法来检测作用于对象的协程数量以及具体是哪些协程作用在对象上。

如果您发现教程中存在问题和错误的信息,或者有任何建议又或者您想要在这里看到其他需要的教程,可以发邮件或者在评论中留言。

翻译词数:

碰撞检测 BoxCollider 的特殊实现 当做触发器的Collider检测,可以通过privatevoidOnTriggerStay(Collidercollider);privatevoidOnTriggerEnter(Collidercollider);privatevoidOnTriggerExit(Collidercollider);来实现,当

unity学习之在续NGUI unity学习,希望我的博客能给喜欢unity的朋友带来帮助今天继昨天讲的,接着学习NGUI,让我们可以做出一个简单的登陆注册界面来。实现打字机效果创建

unity碰撞器与触发器 我们今天学习了unity之碰撞检测和出发检测。两者的区别在在添加碰撞器时,碰撞组件属性下面的trigger按钮要勾选上,就是碰撞器;相反在Trigger按钮不

标签: 协程有什么用

本文链接地址:https://www.jiuchutong.com/biancheng/375768.html 转载请保留说明!

上一篇:【转】Unity 3D Best Practices(unity 3d教程)

下一篇:碰撞检测 BoxCollider 的特殊实现(什么是碰撞检测)

  • 待抵扣进项税额和待认证进项税额的区别
  • 政府返还土地款的会计处理
  • 可供出售金融资产和交易性金融资产
  • 冲红的发票税款计提分录要冲红吗
  • 软件租赁费计入哪个科目
  • 不超45万是含税还是不含税
  • 企业收入为0要报企业所得税吗
  • 软件销售利润
  • 盈余公积转增股本的分录怎么写
  • 房地产企业在开盘前的销售费用是否可以在税前扣除
  • 假发票是怎么开出来的?
  • 工资薪金所得扣税
  • 股票质押式回购交易业务
  • 增值税销项税如何进行处理,有哪些种情况
  • 收到返还利润可以抵扣吗
  • 个税手续费返还会计分录
  • 卷式增值税发票校验码怎么查
  • 商品混凝土的增值税费率
  • 继承房产也需要缴税吗
  • 开个人发票需要身份证号码吗
  • 进口采购交的增值税
  • 农产品零税率
  • 政府无偿给企业划拨土地是否需摊销
  • 处置股权后相应债权坏账损失怎么处理?
  • ScanMailOutLook.exe - ScanMailOutLook是什么进程 有什么用
  • 清理c盘清理
  • 耕地占用税的税收优惠
  • 分公司收到总公司利润分录怎么写
  • 发票抵扣条件
  • 冲减管理费用是什么意思
  • phpseessid
  • 劳务公司已开票,可款项未收到,税票多久有效
  • php 加密
  • php foreach as
  • 合并抵销
  • php抽象类和普通类的区别
  • 扣税免除项
  • 如何升级智慧中小学app
  • sql 行列转换
  • 库存商品余额在借方是什么意思
  • 企业所得税法允许按规定的比例在税前扣除的准备金
  • 餐费计入哪个科目合理避税
  • 丢失增值税专用发票的征管政策
  • 建行e信通贴现高不高
  • 装修费用进什么科目
  • 原材料不足
  • 现金形式福利费个税软件怎么申报个税
  • 缴纳房产税如何做账务处理
  • 预付卡充值入什么科目
  • 免征增值税账务处理办法
  • 发票冲红的会计怎么处理
  • 主营业务成本如何做分录
  • 2023最新税收优惠政策有哪些
  • 一般纳税人的进项税额可以抵扣吗
  • 通行费电子发票抵扣填写到附表二的第几栏次
  • 开办费包括哪些内容多少钱
  • ubuntu debain
  • 访问和更改关系的区别
  • sqlserver 错误6005
  • 新移动硬盘安装视频教程
  • win7补丁部分更新没有安装
  • 电脑xp系统运行速度慢
  • 苹果mac怎样
  • LINUX系统下MySQL 压力测试工具super smack
  • .exe是什么软件
  • xp注册表文件在哪
  • 如何管理和维护宿舍卫生
  • [置顶] 此外,车牌号:458143(懂得都懂[吃瓜])
  • 安卓手机管家推荐
  • unity ugui教程
  • 自己搭配电脑
  • 基于python的研究
  • JAVAscript字符串类型单引号和双引号意一样吗
  • python 解析算法
  • 衡水市地税局
  • 企业年报通怎么注销
  • 转让土地的土地增值税
  • 税控盘怎么分发
  • 退契税的时间是什么时候
  • 税收筹划与避税的性质相同
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设