Mathf.Floor 与 (int) 的性能比较

2023-12-27

当我想知道哪个更快时,我正在创建和翻译一些算法。

a) (int)float

or

b) Mathf.FloorToInt(float)

提前致谢。

编辑:如果有比这两种方法更快的方法,那也会有帮助。


像我提到的那样用秒表进行测试。这个答案在这里是因为我相信你的答案的结果是错误的。

下面是一个使用循环的简单性能测试脚本,因为您的算法涉及许多循环:

void Start()
{

    int iterations = 10000000;

    //TEST 1
    Stopwatch stopwatch1 = Stopwatch.StartNew();
    for (int i = 0; i < iterations; i++)
    {
        int test1 = (int)0.5f;
    }
    stopwatch1.Stop();

    //TEST 2
    Stopwatch stopwatch2 = Stopwatch.StartNew();
    for (int i = 0; i < iterations; i++)
    {
        int test2 = Mathf.FloorToInt(0.5f);
    }
    stopwatch2.Stop();

    //SHOW RESULT
    WriteLog(String.Format("(int)float: {0}", stopwatch1.ElapsedMilliseconds));
    WriteLog(String.Format("Mathf.FloorToInt: {0}", stopwatch2.ElapsedMilliseconds));
}

void WriteLog(string log)
{
    UnityEngine.Debug.Log(log);
}

Output:

(整数)浮点数:73

Mathf.FloorToInt:521

(int)float显然比Mathf.FloorToInt。对于这样的事情,用编辑器统计中的FPS来做出判断确实很糟糕。你做一个测试Stopwatch。编写着色器代码时应使用 FPS。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mathf.Floor 与 (int) 的性能比较 的相关文章

随机推荐

  • 按因子水平对数据框进行子集化

    我有一个大数据框 其中一列中包含州名称 其他列中包含不同的索引 我想按状态进行子集化 并创建一个适合最小化索引或已给出计算的数据框的对象 这是我所拥有的一个简单 简短 示例 m x y 1 A 1 0 2 A 2 0 3 A 1 5 4 B
  • 在 REST API 中,什么时候我应该使用信封?如果我在一个地方使用它,我应该一直使用它吗?

    我正在致力于构建 RESTful Web 服务 我已经尽可能地阅读了每种机制使用 HTTP 的原理 并且大多数时候 比如在获取资源时 它都工作得很好 但是 当我需要发布某种新条目时 为了清晰和稳健 无论客户端可能做什么 我都想提供新条目可能
  • 在python中用字符串打印偶数字符

    s Abrakadabra for k in len s if k 2 1 print s k 这段代码不起作用 问题出在哪里 您正在尝试迭代 int len s 我认为你只是错过了range功能 s Abrakadabra for k i
  • NSTextFieldCell 垂直对齐,解决方案似乎挤压了水平对齐

    我有一个 NSTextFieldCell 我希望以中间垂直对齐方式显示 感谢这里的一个旧问题和一篇博客文章 我有两个可行的解决方案 然而 这两种解决方案似乎都削弱了我将单元格设置为右对齐的能力 谁能帮助我使这些解决方案中的任何一个都支持两种
  • JIRA:查找我上周记录的所有工作

    我如何创建一个 JIRA 过滤器来列出我遇到的所有问题 记录时间 然后我可以将其应用到活动流 通过 JQL 使用高级搜索 worklogAuthor currentUser AND worklogDate gt 2016 12 01 AND
  • 如何用python打开mp4文件?

    我试图制作一个使用默认 Windows 应用程序播放电影的脚本 但是当我尝试运行此脚本时 出现错误 强制转换为 Unicode 需要字符串或缓冲区 找到函数 我应该如何进行 import os print Push enter to pla
  • 使用 VBA 解析 JSON (Access 2010)

    我需要使用下面的 JSON 文件更新 MS Access 中的货币表 timestamp 1465843806 base CAD rates AED 2 87198141 AFN 54 21812828 ALL 95 86530071 AM
  • 如何向 Android 原生“编辑文本”上下文菜单添加选项

    是否可以将某些内容添加到用户长按任何编辑文本时显示的项目列表中 剪切 复制粘贴 选择文本 全选 输入法 我想在此菜单中添加另一个选项 但无法弄清楚 这个问题有重复的here https stackoverflow com questions
  • 如何防止用户更改系统日期/时间(在 Android 中)?

    我用谷歌搜索过 但我找不到任何建议来阻止用户更改 android 中的系统日期 时间 我们正在开发一个企业应用程序 我们希望阻止设备的用户能够设置时间设置 换句话说 我们想要设置一个策略来定义用户不能更改 Android 设备中的日期和时间
  • 安装的Python脚本无法导入包模块

    我创建了一个具有以下目录结构的 Python 包 LICENSE MANIFEST IN README rst VERSION docs multitool init py core init py classes py utils py
  • 从 Visual Studio 2017 在 Chrome 中调试网站时启用扩展

    从 Visual Studio 2015 切换到 2017 我发现启动 Web API 项目现在会启动一个干净 独立的 Chrome 窗口 在很大程度上我喜欢这样 而且我当然喜欢这个想法 但是 这也意味着Chrome 中缺少扩展程序 有没有
  • 限制 GWT 中的小数位数?

    在纯 Java 中 我通常会使用如下所示的函数来将小数位数限制为decimalCount对于给定的数字value 但是 根据 GWT 文档 GWT 不提供对日期和数字格式化类 例如 java text DateFormat java tex
  • 如何在Python 3.6中等待声音文件以vlc结尾

    我在 python 中的 vlc 有一个问题 import vlc sound vlc MediaPlayer sound mp3 sound play i wanna wait until the sound ends then do s
  • Java:没有 AtomicFloat 或 AtomicDouble 吗?

    我已经发现AtomicInteger AtomicLong 但是在哪里AtomicFloat or AtomicDouble 也许有什么技巧 API 文档为java util concurrent package http download
  • 在多租户数据库中索引 TenantID

    我正在为应用程序创建多租户数据库 我在每个表方法中都使用了 TenantID 效果非常好 我正处于性能调整阶段 我的问题是 每个表中的每个 TenantID 是否都应该建立索引以进行优化搜索 因为数据库上的每个查询都会在此列上进行过滤 期待
  • 在node.js中重新定义变量

    该脚本的执行 tmp js 其中包含 var parameters 1 eval var parameters a 1 1 eval console log parameters node tmp js 产生 如果我们注释掉第一条语句 并再
  • 使用.NET Moq时如何转发到另一个对象?

    给定一个对象 我想创建一个模拟 它实现该对象的接口并模拟一个方法 但将其余方法转发给真实对象 不是基类 例如 ISqlUtil sqlUtil GetTheRealSqlUtilObjectSomehow var mock new Mock
  • 如何获得更多的饲料项目?

    如何获取 Feed 的下一页或更多结果 例如 当我去现在安全 http leoville tv podcasts sn xmlfeed 页面 没有任何类型的 下一个 链接 并且 page 100 的 url 参数不执行任何操作 http l
  • 权限如何在 mac 上运行 sbin 命令?

    我正在使用 mac os x 并且我正在尝试运行shutdown命令但它说我不是超级用户 不过 我可以跑ifconfig无需成为超级用户 这两个命令都在 sbin 中 我的 PATH 环境变量包括 sbin 这就是为什么我可以运行 ifco
  • Mathf.Floor 与 (int) 的性能比较

    当我想知道哪个更快时 我正在创建和翻译一些算法 a int float or b Mathf FloorToInt float 提前致谢 编辑 如果有比这两种方法更快的方法 那也会有帮助 像我提到的那样用秒表进行测试 这个答案在这里是因为我