亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 應用 > 軟件技巧 > 正文

Away3D骨骼動畫處理方法、Away3D骨骼優化的多種嘗試及結果

2024-07-16 17:16:18
字體:
來源:轉載
供稿:網友

用過Away3D的朋友估計都會發現,在Away3D里面使用超過一定骨骼數量的角色,當場景里面角色的數量稍微多一點,整個場景就會很卡。
對于這個現象,我之前得出的結論是。Stage3D的VC緩存器數量的限制,造成了對需要占用VC的骨骼信息有限制。對于超過了限制數量的骨骼部分,Stage3D會把數據退回CPU計算。
這里存在幾個誤區:
1、退回CPU的處理不是Stage3D做的,而是away3D本身做的。
原生的Stage3D對于超過能允許數量的骨骼,因為超出了128個vc,不會做其他處理,只會直接報錯:
ArgumentError: Error #3615: AGAL 驗證失敗: 程序大小小于  程序的最小長度。
2、不是部分的退回,是通過一個開關判斷是否需要退回,全部退回。
開關是變量usesCPU。一開始給材質賦值的時候,會判斷該模型是否需要退回cpu計算。假如不需要,就全部推到GPU計算,即使沒有動畫信息的時候,頂點著色器也會使用蒙皮計算的一套。假如需要退回cpu計算,那么就不會再使用蒙皮動畫的頂點程序,而直接用最基礎的頂點程序計算。
在明白了這兩點之后,看看Away3D對這個是否超出長度的功能做了什么處理:
1、通過對AnimationSetBase.cancelGPUCompatibility斷點,發現了在SkeletonAnimator.testGPUCompatibility方法里面有檢查是否需要退回CPU的判斷。其判斷的條件是:
if (!_useCondensedIndices && (_forceCPU || _jointsPerVertex > 4 || pass.numUsedVertexConstants + _numJoints * 3 > 128))
可以看出:
除了_useCondensedIndices ==false,還需要
1._forceCPU == true
2.一個頂點受到大于4個骨骼的影響。
因為每個va只能存xyzw四個數,按照Away3D的頂點著色器的處理,就只能最多一個頂點受到4根骨骼的影響。
3.已經使用的Vc,加上骨骼占用的VC,要少于128個。
由于Away對于骨骼 Transform推入GPU的計算是三個基向量,也就是占用3個緩存器,所以需要 骨骼數*3
后兩個條件,出現了優化的空間:
首先,一般頂點最多受到3根骨骼影響已經很足夠了。超過4根的信息可以考慮判斷其影響大小,將超出的而且權重小的部分排除掉。
然后,可以考慮一下怎樣減少輸入的vc數量,把三個基向量看有沒有辦法變成2個四維向量分別傳入位移和旋轉信息。由于Away3D使用的md5動畫格式本身就沒有導出縮放的,所以在沒有自己再寫解析器的情況下,沒有必要處理縮放的信息。
2、對于沒有超出允許范圍的情況,Away3D會通過代碼解析器組成頂點程序,然后每幀推入骨骼的三個基向量給agal計算。
在SkeletonAnimator.setRenderState方法里面,把計算出的所有骨骼的信息(_globalMatrices)傳入GPU,_numJoints是骨骼的數量。vertexConstantOffset是VC偏移量。也就是說,在vertexConstantOffset之前是其他頂點程序需要的VC,從vertexConstantOffset開始往后的所有VC都是骨骼信息使用的。由于每根骨骼有三個基向量,所以是_numJoints*3。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品精品久久久| 午夜精品视频在线| 欧美怡春院一区二区三区| 欧美精品久久久久久久久久| 日韩电影中文字幕在线观看| 国产精品久久综合av爱欲tv| 一本色道久久综合狠狠躁篇怎么玩| 日本免费在线精品| 亚洲自拍另类欧美丝袜| 亚洲肉体裸体xxxx137| 欧美电影免费观看电视剧大全| 国产精品啪视频| 午夜剧场成人观在线视频免费观看| 欧美国产日韩xxxxx| 亚洲欧洲第一视频| 欧美极品在线播放| 欧美激情精品久久久久久蜜臀| 韩国三级日本三级少妇99| 亚洲自拍av在线| 亚洲欧美在线第一页| 国产拍精品一二三| 久久在线免费观看视频| 亚洲美女av黄| 久久久精品2019中文字幕神马| 色婷婷av一区二区三区在线观看| 欧美在线一区二区三区四| 国产999精品久久久| 亚洲欧洲中文天堂| 亚洲国产精品电影在线观看| 久久全球大尺度高清视频| 91福利视频在线观看| 亚洲精品电影在线| 日韩精品视频在线免费观看| 91精品美女在线| 亚洲成人精品视频| 国产免费一区视频观看免费| 91po在线观看91精品国产性色| 日韩有码在线播放| 亚洲成人av中文字幕| 亚洲国产欧美在线成人app| 精品国产一区二区三区久久狼5月| 国产精品亚发布| 久久999免费视频| 国产精品久久久久av免费| 国产成人精品视频在线观看| 亚洲欧美日韩中文在线| 久热精品视频在线免费观看| 国产日韩欧美自拍| 久久久久久成人精品| 91色琪琪电影亚洲精品久久| 亚洲人成人99网站| 在线日韩欧美视频| 欧美怡红院视频一区二区三区| 国产亚洲欧美一区| 九九九久久国产免费| www高清在线视频日韩欧美| 国产玖玖精品视频| 在线视频国产日韩| 91亚洲精品视频| 亚洲精品aⅴ中文字幕乱码| 亚洲自拍偷拍福利| 国产精品九九九| 色偷偷偷综合中文字幕;dd| 色婷婷av一区二区三区在线观看| 亚洲欧美国产精品久久久久久久| 色狠狠久久aa北条麻妃| 中国china体内裑精亚洲片| 欧美日韩亚洲精品内裤| 欧美一级电影在线| 久久久影视精品| 日韩欧美高清视频| 国产精品免费视频xxxx| 免费av在线一区| 亚洲free嫩bbb| 91沈先生作品| 国产免费久久av| 国产精品夜色7777狼人| 精品成人国产在线观看男人呻吟| 欧美日韩免费在线观看| 久久久久久久久久久免费精品| 国产精品91久久| 精品国产成人av| 国产精品爽爽爽爽爽爽在线观看| 国内精品久久久久影院优| 午夜精品久久久久久久久久久久| 91免费福利视频| 欧美国产视频日韩| 国产在线精品一区免费香蕉| 亚洲人成电影网站色| 亚洲天堂成人在线| 日韩精品在线播放| 国产成人在线视频| 韩国精品久久久999| 国产精品国产福利国产秒拍| 欧美成人在线网站| 国产精品视频最多的网站| 高清一区二区三区日本久| 亚洲最大成人在线| 97免费视频在线| 美女福利视频一区| 91香蕉电影院| 国产亚洲精品激情久久| 最好看的2019年中文视频| 午夜精品在线视频| 日韩欧美在线一区| 日韩欧美有码在线| 欧美激情videos| 日韩在线视频免费观看高清中文| 亚洲精品国产美女| 欧美日韩成人黄色| 国产精品99一区| 精品毛片网大全| 91精品国产高清久久久久久久久| 欧美激情乱人伦| 2019最新中文字幕| 国产精品成av人在线视午夜片| 久久天天躁日日躁| 亚洲欧美精品一区| 亚洲精品电影网| 国产一区二区三区丝袜| 国产成人久久久| 66m—66摸成人免费视频| 欧美午夜无遮挡| 狠狠久久五月精品中文字幕| 亚洲免费视频观看| 国产精品免费网站| 国产精品大片wwwwww| 韩日精品中文字幕| 亚洲日本中文字幕| 久久国产精品久久国产精品| 久久国产精品久久久久久久久久| 精品av在线播放| 亚洲美女自拍视频| 久久精品中文字幕一区| 国产激情综合五月久久| 国产日产欧美a一级在线| 日韩女优在线播放| 亚洲第一黄色网| 91精品视频在线播放| 国产精品91在线| 久久久久久亚洲精品中文字幕| 久久久久国产视频| 日本一欧美一欧美一亚洲视频| 九九精品视频在线| www.精品av.com| 欧美日韩在线免费| 欧美日本亚洲视频| 高清视频欧美一级| 欧美日韩激情网| 国产一区二区丝袜| 国产亚洲欧洲黄色| 在线观看欧美日韩国产| 欧美性猛交xxxx乱大交| 欧美www视频在线观看| 亚洲精品视频在线观看视频| 精品中文字幕久久久久久| 日本精品视频网站| 亚洲欧美日韩一区二区在线| 日韩性生活视频| 欧美第一黄网免费网站| 国产成人精品视频在线| 日韩中文字幕久久| 国产一区二区三区精品久久久| 欧美性生活大片免费观看网址|