Unity 之 使用定时调用与Update 正常帧更新的运行答疑

这篇具有很好参考价值的文章主要介绍了Unity 之 使用定时调用与Update 正常帧更新的运行答疑。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Unity 之 使用定时调用与Update 正常帧更新的运行答疑,Unity,unity,游戏引擎

疑惑

就是说,当我们在Start 函数里面定义了一个InvokeRepeating 函数,那么我们又在Update 定义了一个基本操作,想联合控制物体一个往返的一个运动时,我们应该怎么办?
就是说系统是怎么编译的呢?

代码辨析

这里我提供两个代码,大家看一下区别

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SimpleLogic : MonoBehaviour
{
    public float speed = 1f;

    // Start is called before the first frame update
    void Start()
    {
        InvokeRepeating("DoSomesing", 2,2);
    }

    // Update is called once per frame
    void Update()
    {
        Debug.Log("***this is Update ***" + Time.time);

        transform.Translate(0, speed * Time.deltaTime, 0, Space.Self);
    }
    void DoSomesing()
    {
        Debug.Log("***use Dosing ***"+ Time.time);
        //transform.Translate(0, -1*speed * Time.deltaTime, 0, Space.Self);
        speed = 0 - speed;
    }
}


另一个代码和它非常像

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class SimpleLogic : MonoBehaviour
{
public float speed = 1f;

// Start is called before the first frame update
void Start()
{
    InvokeRepeating("DoSomesing", 2,2);
}

// Update is called once per frame
void Update()
{
    Debug.Log("***this is Update ***" + Time.time);

    transform.Translate(0, speed * Time.deltaTime, 0, Space.Self);
}
void DoSomesing()
{
    Debug.Log("***use Dosing ***"+ Time.time);
    transform.Translate(0, -1*speed * Time.deltaTime, 0, Space.Self);
    //speed = 0 - speed;
}

}

这两个代码就是一行的差别,那么你知道哪一个可以真正实现往返运动吗?

其实第一个代码正确

具体解释

Unity 之 使用定时调用与Update 正常帧更新的运行答疑,Unity,unity,游戏引擎

就是说我们的Update 是每一帧都运行,而InvokeRepeating 只有特定的时间才运行,那么我们把控制物体运行的关键点速度就只能放在InvokeRepeating 里面了,而对于控制前进的代码就应该放在Update 中,毕竟每一帧都要前进的!文章来源地址https://www.toymoban.com/news/detail-701977.html

到了这里,关于Unity 之 使用定时调用与Update 正常帧更新的运行答疑的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序数据库更新update的使用

            微信小程序数据库的update功能不可以直接使用db.collection.update,此功能虽然在collection的使用说明文档中有,但是经过实际操作之后是无法成功更新的,必须使用db.collection.doc.update才可以完成。         使用db.collection.doc.update方式时,数据记录则应由add功能添加

    2024年02月03日
    浏览(47)
  • Mybatis使用update更新值为null时不生效

    该文章纯属记录使用过程中遇到的问题更新null值没有生效的问题解决办法,内容较为简单。 1.出现的问题 前端修改数据时把属性内容删除然后进行保存,默认传的null,后端更新时属性值为null,然后调用updateById进行更新时发现该属性还是原来的值: 后面百度发现该update方法

    2024年02月04日
    浏览(35)
  • Elasticsearch Java API 的使用-更新索引(update & upset)与 Bulk的批量更新

    Java更新索引(update upset) update 更新使用UpdateRequest(update类型更新,只能更新) upset 要用IndexRequest设定添加文档,UpdateRequest设定更新文档,设定upset执行有则修改无则更新(upset类型更新,文档不存在时创建) 基于Bulk的批量更新(update upset) 动态的更新一个 documents 中的任

    2024年02月11日
    浏览(41)
  • PVE使用apt-get update更新出现401的解决办法

    PVE安装完毕后,会自动添加一个企业存储库的订阅,但如果您是免费用户,在使用 apt-get update 更新软件的时候会出现401错误,错误内容如下: 解决办法 备份原有的存储库: 然后修改 /etc/apt/sources.list 在末尾添加免费的存储库: 最后再更新即可: apt-get update 此文部分内容参

    2024年02月13日
    浏览(55)
  • python(8):使用conda update更新conda后,anaconda所有环境崩溃----问题没有解决,不要轻易更新conda

    (1) 不要轻易使用 conda update 更新 conda ----我遇到了解决不了的问题 python (2) 使用 python 时一定要用工具,如 anaconda 等,管理自己创建的虚拟环境,不要让自己创建的环境污染系统的base环境,不然就需要重新安装系统了----我这里目前最好的解决方案是删除并重装 anaconda (系统的

    2024年02月03日
    浏览(53)
  • mybatis-plus使用this.baseMapper.update和updateById更新null值不生效

    mybatis-plus 在 serviceImpl 层可以直接使用 this.baseMapper.update 和 updateById , 如果更新的字段值是null,这时候需更新为 null 的字段更新不成功。打印的 sql 也没有更新为 null 的字段。 原因: 解决: 1)当需要设置可能为null的字段,需要用 lambdaUpdate() 使用方法为: 或者 实体类需更

    2024年02月13日
    浏览(34)
  • MybatisPlus 使用 saveOrUpdate 详解(慎用),及问题解决方法&mysql保存或更新 ON DUPLICATE KEY UPDATE

    今天的想法是,要在插入数据库时,如果有某某一个主要字段的值重复,则不插入,否则则插入! 看了一下mybatis-Plus是有这个saveOrUpdate 方法! 原本使用save时是没有问题了,改成saveOrUpdate 用了一下就报错了。 com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: error: can not execut

    2024年02月11日
    浏览(24)
  • pyinstaller使用后exe文件无法正常运行的问题解决

    本次发布是记录一下我在学习过程中遇到的问题,以免后来者入坑! 第一次尝试用pyinstaller打包python脚本,结果发现打包成功之后的exe闪了一下就消失了(开始怀疑自己),闪退太快无法截图  解决思路: 1.python文件只有打印操作,所以exe文件是执行过的,可以在python文件中

    2024年02月08日
    浏览(33)
  • Stable Diffusion在更新了WIN10系统的22H2版本后无法正常使用,求助怎么解决让我的SD能正常使用,感谢

    Stable Diffusion在更新了WIN10系统的22H2版本后无法正常使用,并提示未安装VC++运行库,导致PyTorch无法正常运行,求助怎么解决让我的SD能正常使用,感谢

    2024年02月10日
    浏览(34)
  • 第二章:25+ Python 数据操作教程(第二十二节如何从 R 调用或运行 python)持续更新

    本文介绍了如何从 R 调用或运行 python。这两种工具都有自己的优点和缺点。使用这两个工具中最好的包和功能并将其组合起来总是一个好主意。在数据科学领域,这些工具在使用方面拥有良好的市场份额。R 主要以数据分析、统计建模和可视化而闻名。而Python在深度学习和自

    2024年02月07日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包