[摘 要] 本文對虛擬環境中布料這樣一種虛擬商品的碰撞檢測研究給與了全方位分析。
[關鍵詞] 布料 仿真 碰撞檢測
當前,基于計算機二維圖形學技術的CAD系統研發已經基本成熟,在行業內已經被廣泛采用。但這種平面式的設計系統,已經逐漸顯現出交互性差、可視性差的諸多問題。一種既能滿足大規模工業化生產且又能滿足個性需求、真實表達人們對空間思維的回歸、展示出服裝與人體相互依存關系的技術,越來越受到關注。服裝行業要求一種更便捷、靈活、直觀的設計工具,能夠幫助設計師在電腦上實現設計創意,實時交互式的設計系統。這個系統應該能夠使設計師在設計初始就可以見到虛擬布料的真實效果,逼真模擬出有質感,花色與動態效果。因此,如何利用計算機圖形學,計算幾何以及計算機動畫等領域最新的科研成果,建立基于布料的3D模型和碰撞檢測與響應方法是當前的研究熱點。建立基于布料的3D模型研究已經是比較成熟的領域,本文主要對布料碰撞檢測與響應方法進行研究概述。
一、布料碰撞檢測研究現狀分析
在布料的動態仿真過程中,碰撞問題是一個不容回避的問題,如果不能及時地進行碰撞檢測,就會出現物體之間相互穿透和彼此重疊等不真實的現象。碰撞檢測是影響柔性布料仿真速度的重要因素,它所占用的時間通常會占到總時間的40%左右。由此可見,碰撞問題解決的優劣直接關系到柔性布料仿真的實時性和精確性。
2001年8月魏迎梅等人中給出了一種基于固定方向凸包包圍盒樹的碰撞檢測方法, 并著重論述了利用線性規劃的思想以解決剛體自由運動后包圍盒樹的更新以及通過一種自底向上的方法解決軟體對象變形后包圍盒樹的更新。實驗表明, 該方法不僅能較好地解決剛體間的碰撞檢測, 而且能有效地解決剛體與軟體間的碰撞檢測。
2002年8月,為了加速檢測過程, Robert Bridson等人采用軸向層次包圍盒技術;Choi等人的算法則采用基于體素的算法來加速碰撞檢測。
2002年11月顧爾丹等人提出了一種面-面碰撞檢測算法的服裝動態模擬方法。其中考慮了布料的非理想彈性屬性和變化的空氣流作用力, 并針對系統實現的瓶頸——服裝和人體的碰撞問題, 提出一種碰撞檢測算法。
2004年8月,Pascal Volino等人使用多邊形網格層次的方法對包括布料的柔性物體進行了高效檢測。
2006年2月張明等人提出一種粒子系統,能在任何需要正確模擬碰撞的地方自適應的生成新粒子。當粗糙網格與物體發生碰撞時使網格自動細化。因此這種模型與一般的粒子系統相比,只需要少量的粒子就能獲得精確的物理仿真效果。同時,使用粗糙網格進行快速仿真成為可能。
2006年8月,李文輝等提出了一種面向可變形物體快速的碰撞檢測方法。此方法將粒子群優化算法和隨機碰撞檢測相結合,通過在物體特征域內采樣把三維物體空間內碰撞檢測問題轉換到二維離散搜索空間中解決。這不但可以控制算法的運行速度和檢測質量,更重要的是增加了算法適應性:輸入的可以是不具有拓撲信息的任意物體模型。同年,周云波等人的文章講述了碰撞檢測的基本算法和碰撞檢測領域中經常用到的幾大類碰撞檢測算法:包圍盒層次法、距離跟蹤法和空間剖分法,對包圍盒層次法中的AABB、包圍球、OBB、k-dop算法,距離跟蹤法中的Lin-Canny 算法、Enhanced GJK算法進行了分析。
2006年12月馬登武等人首先對常用檢測算法的檢測效率進行了分析和比較。然后重點針對復雜虛擬場景中含有大量物體的特點,提出了混合包圍盒碰撞檢測算法。該算法利用幀與幀之間的時間和幾何相關性,把對(c2n+m)個對象的動態跟蹤轉化為它們在三個坐標軸上的投影的排序問題,把時間復雜度由O(n2)降低為O(n)。理論分析和仿真計算都表明,該算法能夠滿足多達幾百個運動物體的實時交互碰撞檢測。
2007年1月王季等人結合層次包圍盒和基于圖形硬件的方法,以帶深度紋理的包圍盒替代物體的幾何模型,利用圖形硬件在紋理映射時進行深度比較,以實現碰撞檢測實驗結果表明,與CULL IDE 算法相比,文中算法執行效率更高且執行時間固定,具有較高的實時性。
二、總結
經過研究發現,國內外目前急需一種易實現的碰撞檢測綜合方法,這也是我們今后很長一段時間的研究重點。
參考文獻:
焦新伏:柔性織物動態仿真關鍵技術研究[D].燕山大學碩士學位論文,2007