緣由是看到這篇文章:
主要是這一段話啟發了我:
在之前,精度控制固定為:
float
epsilon
=powf(
0.1f
, static_cast
<
float
>
(config.precision));
//精度
於是將**修改成為:
intdepth
=std::min(
10, getnodedepth(pbone));
const
float
maxprecision
=config.precision
-min_precision
+1.2f
;float
factor
=std::max(
1.0f
, maxprecision *(
1.0f
-1.0f
/depth));
epsilon
=powf(
0.1f
*factor, static_cast
<
float
>
(config.precision));
//精度
optimizeskeletal(epsilon, bone.keyframes);
注:getnodedepth是用來取骨骼所在骨架中的深度
maxprecision用來控制最大變化量
factor控制最後的精度,骨骼深度越大,factor越接近maxprecision
這樣一來,通過觀察,maxprecision = 1.2是個看上去合適的值,動畫不會太受影響,最終的skeleton資料可以減少約0.2 - 0.5不等(相比之前)。
進一步優化ListView
之前我已經分享過一篇 viewhodler的通用寫法,就是專門用來優化listview的載入的,但是對於複雜的布局,我們還需要在listview滑動和不滑動時進行自己的處理,今天我看到一篇文章就是講這方面的,雖然不是很完善,但思想已經對了。主要思想 實現方法 下面的方法僅僅是起乙個說明的作用,實際中...
關於容器輸出的進一步優化
以前我討論過了在自己學習過程中經常要用到的乙個特性,就是容器的輸出問題,總感覺不是太方便,在學習過程中用的又非常多,我曾經在 學了模板再來看容器輸出的簡化 中已經把他處理的很簡單了,不過最近看了tc pl受了點啟發,又將程式進一步改進,主要的好處是更符合標準庫容器的使用習慣,以首尾兩個迭代器為輸入,...
bufferedReader進一步理解
public static void main string args string mystring system.out.println 請輸入明文 bufferedreader buf new bufferedreader new inputstreamreader system.in try...