Unity C# Mathf.Abs()取绝对值性能测试

171次阅读

共计 1618 个字符,预计需要花费 5 分钟才能阅读完成。

之前有人提到过取绝对值时 直接写三目运算符比用 Mathf.Abs()效率高 没觉得能高太多
今天测了一下 真是不测不知道 一测吓一跳 直接写三目运算符比 Mathf.Abs()效率高 2 - 3 倍

这性能差距有点不太合理啊!看下源码发现 很多 Mathf 的方法就是多封装了一层 Math 里的方法 把 double 型转成 float 型了 即便很简单得方法也没有重新实现
官方有点偷懒了 所以性能差距才会这么大 以后要求性能高的地方要注意 老老实实写一遍 能提升不少性能

Unity C# Mathf.Abs()取绝对值性能测试
ABS 效率对比

测试代码:

1
<table class="hljs-ln"><tbody><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="1"><div class="hljs-ln-n" data-line-number="1"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="1"><span class="hljs-keyword">using</span> UnityEngine;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="2"><div class="hljs-ln-n" data-line-number="2"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="2"><span class="hljs-keyword">using</span> UnityEditor;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="3"><div class="hljs-ln-n" data-line-number="3"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="3"><span class="hljs-keyword">using</span> System.Diagnostics;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="4"><div class="hljs-ln-n" data-line-number="4"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="4"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="5"><div class="hljs-ln-n" data-line-number="5"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="5"><span class="hljs-comment"><span class="hljs-doctag">///</span> <span class="hljs-doctag"><summary></span></span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="6"><div class="hljs-ln-n" data-line-number="6"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="6"><span class="hljs-comment"><span class="hljs-doctag">///</span> 执行时间测试</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="7"><div class="hljs-ln-n" data-line-number="7"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="7"><span class="hljs-comment"><span class="hljs-doctag">///</span> ZhangYu 2019-04-04</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="8"><div class="hljs-ln-n" data-line-number="8"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="8"><span class="hljs-comment"><span class="hljs-doctag">///</span> <span class="hljs-doctag"></summary></span></span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="9"><div class="hljs-ln-n" data-line-number="9"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="9"><span class="hljs-keyword">public</span> <span class="hljs-keyword">class</span> <span class="hljs-title">TimeTest</span> : <span class="hljs-title">MonoBehaviour</span> {</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="10"><div class="hljs-ln-n" data-line-number="10"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="10"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="11"><div class="hljs-ln-n" data-line-number="11"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="11">    <span class="hljs-keyword">public</span> <span class="hljs-built_in">int</span> executeTimes = <span class="hljs-number">1</span>;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="12"><div class="hljs-ln-n" data-line-number="12"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="12">    <span class="hljs-keyword">private</span> <span class="hljs-keyword">static</span> Stopwatch watch;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="13"><div class="hljs-ln-n" data-line-number="13"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="13"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="14"><div class="hljs-ln-n" data-line-number="14"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="14">    <span class="hljs-function"><span class="hljs-keyword">private</span> <span class="hljs-keyword">void</span> <span class="hljs-title">OnValidate</span>(<span class="hljs-params"></span>)</span> {times = executeTimes;}</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="15"><div class="hljs-ln-n" data-line-number="15"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="15"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="16"><div class="hljs-ln-n" data-line-number="16"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="16">    <span class="hljs-keyword">private</span> <span class="hljs-keyword">static</span> <span class="hljs-built_in">int</span> times = <span class="hljs-number">1</span>;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="17"><div class="hljs-ln-n" data-line-number="17"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="17">    [<span class="hljs-meta">MenuItem(<span class="hljs-string">"CONTEXT/TimeTest/ 执行 "</span>)</span>]</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="18"><div class="hljs-ln-n" data-line-number="18"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="18">    <span class="hljs-function"><span class="hljs-keyword">private</span> <span class="hljs-keyword">static</span> <span class="hljs-keyword">void</span> <span class="hljs-title">Execute</span>(<span class="hljs-params"></span>)</span> {watch = <span class="hljs-keyword">new</span> Stopwatch();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="19"><div class="hljs-ln-n" data-line-number="19"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="19"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="20"><div class="hljs-ln-n" data-line-number="20"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="20">        <span class="hljs-comment">// 数据</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="21"><div class="hljs-ln-n" data-line-number="21"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="21">        <span class="hljs-built_in">float</span> a = <span class="hljs-number">1</span>;</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="22"><div class="hljs-ln-n" data-line-number="22"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="22"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="23"><div class="hljs-ln-n" data-line-number="23"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="23">        <span class="hljs-comment">// Mathf.Abs</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="24"><div class="hljs-ln-n" data-line-number="24"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="24">        watch.Reset();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="25"><div class="hljs-ln-n" data-line-number="25"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="25">        watch.Start();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="26"><div class="hljs-ln-n" data-line-number="26"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="26">        <span class="hljs-keyword">for</span> (<span class="hljs-built_in">int</span> i = <span class="hljs-number">0</span>; i < times; i++) {a = Mathf.Abs(a);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="27"><div class="hljs-ln-n" data-line-number="27"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="27">        }</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="28"><div class="hljs-ln-n" data-line-number="28"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="28">        watch.Stop();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="29"><div class="hljs-ln-n" data-line-number="29"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="29">        <span class="hljs-built_in">string</span> msgMathfAbs = <span class="hljs-built_in">string</span>.Format(<span class="hljs-string">"Mathf.Abs: {0}s"</span>, watch.Elapsed);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="30"><div class="hljs-ln-n" data-line-number="30"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="30"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="31"><div class="hljs-ln-n" data-line-number="31"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="31">        <span class="hljs-comment">// 自己实现 Abs</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="32"><div class="hljs-ln-n" data-line-number="32"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="32">        watch.Reset();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="33"><div class="hljs-ln-n" data-line-number="33"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="33">        watch.Start();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="34"><div class="hljs-ln-n" data-line-number="34"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="34">        <span class="hljs-keyword">for</span> (<span class="hljs-built_in">int</span> i = <span class="hljs-number">0</span>; i < times; i++) {a = MyAbs(a);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="35"><div class="hljs-ln-n" data-line-number="35"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="35">        }</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="36"><div class="hljs-ln-n" data-line-number="36"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="36">        watch.Stop();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="37"><div class="hljs-ln-n" data-line-number="37"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="37">        <span class="hljs-built_in">string</span> msgMyAbs = <span class="hljs-built_in">string</span>.Format(<span class="hljs-string">" 自定义 Abs: {0}s"</span>, watch.Elapsed);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="38"><div class="hljs-ln-n" data-line-number="38"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="38"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="39"><div class="hljs-ln-n" data-line-number="39"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="39">        <span class="hljs-comment">// 三目运算符 Abs</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="40"><div class="hljs-ln-n" data-line-number="40"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="40">        watch.Reset();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="41"><div class="hljs-ln-n" data-line-number="41"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="41">        watch.Start();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="42"><div class="hljs-ln-n" data-line-number="42"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="42">        <span class="hljs-keyword">for</span> (<span class="hljs-built_in">int</span> i = <span class="hljs-number">0</span>; i < times; i++) {a = a < <span class="hljs-number">0</span> ? -a : a;}</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="43"><div class="hljs-ln-n" data-line-number="43"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="43">        watch.Stop();</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="44"><div class="hljs-ln-n" data-line-number="44"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="44">        <span class="hljs-built_in">string</span> msg3Abs = <span class="hljs-built_in">string</span>.Format(<span class="hljs-string">" 三目运算符 Abs: {0}s"</span>, watch.Elapsed);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="45"><div class="hljs-ln-n" data-line-number="45"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="45"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="46"><div class="hljs-ln-n" data-line-number="46"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="46">        print(msgMathfAbs);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="47"><div class="hljs-ln-n" data-line-number="47"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="47">        print(msgMyAbs);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="48"><div class="hljs-ln-n" data-line-number="48"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="48">        print(msg3Abs);</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="49"><div class="hljs-ln-n" data-line-number="49"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="49">    }</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="50"><div class="hljs-ln-n" data-line-number="50"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="50"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="51"><div class="hljs-ln-n" data-line-number="51"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="51">    <span class="hljs-comment">// == 执行次数:10000000</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="52"><div class="hljs-ln-n" data-line-number="52"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="52"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="53"><div class="hljs-ln-n" data-line-number="53"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="53">    <span class="hljs-comment">// Mathf.Abs</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="54"><div class="hljs-ln-n" data-line-number="54"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="54">    <span class="hljs-comment">// (1)0.2803558s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="55"><div class="hljs-ln-n" data-line-number="55"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="55">    <span class="hljs-comment">// (2)0.2837749s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="56"><div class="hljs-ln-n" data-line-number="56"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="56">    <span class="hljs-comment">// (3)0.2831089s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="57"><div class="hljs-ln-n" data-line-number="57"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="57">    <span class="hljs-comment">// (4)0.2829929s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="58"><div class="hljs-ln-n" data-line-number="58"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="58">    <span class="hljs-comment">// (5)0.2839846s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="59"><div class="hljs-ln-n" data-line-number="59"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="59"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="60"><div class="hljs-ln-n" data-line-number="60"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="60">    <span class="hljs-comment">// 自定义 Abs</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="61"><div class="hljs-ln-n" data-line-number="61"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="61">    <span class="hljs-comment">// (1)0.2162217s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="62"><div class="hljs-ln-n" data-line-number="62"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="62">    <span class="hljs-comment">// (2)0.2103635s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="63"><div class="hljs-ln-n" data-line-number="63"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="63">    <span class="hljs-comment">// (3)0.2103390s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="64"><div class="hljs-ln-n" data-line-number="64"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="64">    <span class="hljs-comment">// (4)0.2092863s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="65"><div class="hljs-ln-n" data-line-number="65"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="65">    <span class="hljs-comment">// (5)0.2097648s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="66"><div class="hljs-ln-n" data-line-number="66"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="66">    <span class="hljs-function"><span class="hljs-keyword">private</span> <span class="hljs-keyword">static</span> <span class="hljs-built_in">float</span> <span class="hljs-title">MyAbs</span>(<span class="hljs-params"><span class="hljs-built_in">float</span> a</span>)</span> {<span class="hljs-keyword">return</span> a < <span class="hljs-number">0</span> ? -a : a;}</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="67"><div class="hljs-ln-n" data-line-number="67"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="67"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="68"><div class="hljs-ln-n" data-line-number="68"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="68">    <span class="hljs-comment">// 三目运算符 Abs</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="69"><div class="hljs-ln-n" data-line-number="69"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="69">    <span class="hljs-comment">// (1)0.0893028s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="70"><div class="hljs-ln-n" data-line-number="70"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="70">    <span class="hljs-comment">// (2)0.1000181s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="71"><div class="hljs-ln-n" data-line-number="71"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="71">    <span class="hljs-comment">// (3)0.1017959s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="72"><div class="hljs-ln-n" data-line-number="72"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="72">    <span class="hljs-comment">// (4)0.1001749s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="73"><div class="hljs-ln-n" data-line-number="73"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="73">    <span class="hljs-comment">// (5)0.1005737s</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="74"><div class="hljs-ln-n" data-line-number="74"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="74"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="75"><div class="hljs-ln-n" data-line-number="75"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="75">}</td></tr></tbody></table>

Mathf.Abs()源码:

1
<table class="hljs-ln"><tbody><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="1"><div class="hljs-ln-n" data-line-number="1"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="1"><span class="hljs-comment">// Returns the absolute value of /f/.</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="2"><div class="hljs-ln-n" data-line-number="2"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="2"><span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">static</span> <span class="hljs-type">float</span> <span class="hljs-title">Abs</span><span class="hljs-params">(<span class="hljs-type">float</span> f)</span> </span>{<span class="hljs-keyword">return</span> (<span class="hljs-type">float</span>)Math.<span class="hljs-built_in">Abs</span>(f); }</td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="3"><div class="hljs-ln-n" data-line-number="3"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="3"> </td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="4"><div class="hljs-ln-n" data-line-number="4"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="4"><span class="hljs-comment">// Returns the absolute value of /value/.</span></td></tr><tr><td class="hljs-ln-line hljs-ln-numbers" data-line-number="5"><div class="hljs-ln-n" data-line-number="5"></div></td><td class="hljs-ln-line hljs-ln-code" data-line-number="5"><span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">static</span> <span class="hljs-type">int</span> <span class="hljs-title">Abs</span><span class="hljs-params">(<span class="hljs-type">int</span> value)</span> </span>{<span class="hljs-keyword">return</span> Math.<span class="hljs-built_in">Abs</span>(value); }</td></tr></tbody></table>

官方 Mathf 部分源码:

Unity C# Mathf.Abs()取绝对值性能测试
Mathf 部分源码 1
Unity C# Mathf.Abs()取绝对值性能测试
Mathf 部分源码 2

正文完
 0