Unity AnimationCurve 曲线代替Cos Sin计算的性能比较
很多时候我们免不了需要用Mathf.cos\ Mathf.sin 来计算圆周运动相关XY坐标位置。但是本人出于对Cos在Updata内性能的担忧,想着用AnimationCurve来代替,做了本次测试。
一、代码
1、cosSina的代码
void Update(){if(index==0){Debug.LogError("开始时间"+ Time.time);}if(index<=5555){index++;for (int i = 0; i < 15; i++){//Debug.Log(Mathf.Cos(Time.time));posX = 100 * (Mathf.Cos(Time.time) + 100 * Mathf.Sin(Time.time));//计算x位置posY = 100 * (Mathf.Sin(Time.time) - 100 * Mathf.Cos(Time.time));//计算y位置}}else{Debug.LogError(Time.time);}}
2、AnimationCurve测试代码
void Update(){if (index == 0){Debug.LogError("开始时间" + Time.time);}if (index <= 5555){index++;for (int i = 0; i < 15; i++){//Debug.Log(animationCurve.Evaluate(Time.time / 360));posX = 100 * (animationCurve.Evaluate(Time.time) + 100* animationCurve2.Evaluate(Time.time));//计算x位置posY = 100 * (animationCurve2.Evaluate(Time.time) - 100 * animationCurve.Evaluate(Time.time));//计算y位置}}else{Debug.LogError(Time.time);}}
二、性能对比
1、cos 性能 最小的时候有只有15fps (超过了33ms延迟线)【开头结尾是启动和停止不算】,计算时间18.46s
2、AnimationCurve性能基本保持在35fps左右(基本在16ms延迟线下)【开头结尾是启动和停止不算】计算时间19.6s略慢
Unity AnimationCurve 曲线代替Cos Sin计算的性能比较相关推荐
- Unity 动画曲线-AnimationCurve 实例
Unity 动画曲线-AnimationCurve 实例 以Unity 自带的动画曲线实现一些简单的动画,如往复运动,曲线运动,不规则运动,掉血飘字等. 下面先上代码 using UnityEngin ...
- C++输入角度计算三角函数cos sin tan
#include <iostream> #include <cmath> using namespace std; //const double pi (3.14159265) ...
- C++中cos,sin,asin,acos这些三角函数操作
C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度, 你需要把角度转化为弧度. 弧度=角度*Pi/180; 例子1: 比如对边和邻边分别为a,b 设角度为x,则 x=at ...
- C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度,
C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度, 你需要把角度转化为弧度. 弧度=角度*Pi/180; 例子1: 比如对边和邻边分别为a,b 设角度为x,则 x=at ...
- ios/Android工程:自定义圆形/扇形运动轨迹,cos\sin值的简单运用
ios/Android工程:利用cos\sin函数创建圆形轨迹 设备/引擎:Mac(11.6)/cocos 开发工具:Xcode(13.0) 开发需求:利用cos\sin函数创建圆形轨迹,并让元素按给 ...
- Unity绘制曲线--入门篇
Unity绘制曲线–入门篇 Unity绘制曲线有多种方式,这里只写一个最简单的绘制方法–Debug.DrawLine 废话不多说,上代码 using UnityEngine;public class ...
- 深入理解ROC曲线的定义以及绘制ROC曲线过程,其与模型性能的关系,以及AUC
深入理解ROC曲线的定义以及绘制ROC曲线过程,其与模型性能的关系,以及AUC 很多学习器是为测试样本产生一个实值或者是概率预测,然后将这个预测值和一个分类阈值(threshold)进行比较.若大于阈 ...
- 车险往年保单关联计算的性能优化
[摘要] 保险行业计算车险往年保单,需要按照车辆 vin 码.车架号.牌照种类和牌照号等多字段关联,涉及到几千万甚至上亿的大表,用存储过程计算非常耗时.点击车险往年保单关联计算的性能优化,去乾学院看看 ...
- 光滑曲线_消防水泵-流量扬程性能曲线
石峥嵘,消防资源网创始人,消防大讲堂主讲人,从业消防25年,参与近千项目设计施工,解答消防疑问数万条,极为资深的实践经验,结合深厚理论基础,汇集金典,奉献大家! 石峥嵘:消防水泵的性能应满足消防给水系 ...
最新文章
- 大陆唯一7nm光刻机被抵押!武汉千亿投资、台积电大牛掌舵的芯片项目官宣停摆...
- IntelliJ IDEA 使用 Java 11新特性以及Java 8 以来的Java 11新特性介绍
- Fragment官方解析
- Java基础-IO流对象之数据流(DataOutputStream与DataInputStream)
- java puzzler_Java Puzzler学习笔记
- vue指令-循环指令
- graphics 位深度_热门上海乐家人才公寓深度解析又是一个神
- 逐行创建、读取并写入txt(matlab) 生成文件夹里文件名的.bat文件
- Linux下Socket网络编程send和recv使用注意事项
- php gd support not found.,安装php71w-gd并获取错误GD库扩展不适用于此PHP安装
- Embeded linux之地址映射
- 关于本公众号科研交流群(微信群)的说明
- 多模态信息用于推荐系统问题(MMDIN,hyperCTR)
- Vim 编辑器真的 yyds
- Electron + Vue 实现输入法自动刷字数
- npm 安装 bin/npm: line 1: ../lib/node_modules/npm/bin/npm-cli.js: No such file or directory
- EasyUI(2):PHP+EasyUI的增、删、改操作的完整示例
- 什么是POP3、SMTP和IMAP?
- apg 代码_正则表达式的替代方法:apg-exp
- pfsense WAN口如何ping通
热门文章
- MUI——混合APP开发之离线打包
- 神经网络梯度反向传播公式
- oracle 的rpad函数,Oracle中Lpad函数和Rpad函数的用法
- Kubeflow第一篇--大致了解
- TEXTAREA只读
- 直角坐标XY和经纬度BL正算反算(西安80坐标3度分带)php
- 红黑树( 图解 + 秒懂 + 史上最全)
- 8位数码管矩阵键盘c语言程序,BASCOM-8051 动态数码管显示与矩阵键盘处理程序例子...
- 【Python编程从入门到实践】学习笔记
- Oracle 时间格式转换-11-10月-13转为yyyy-mm-dd hh24:mi:ss