代碼演示:如何消除多線程渲染與物理模擬間的相互影響

原文地址:http://www.intel.com/cd/ids/developer/apac/zho/273725.htm

瞭解如何通過簡單的物理模擬演示來消除多線程環境中的渲染與物理模擬間的相互影響。本文中提供的代碼樣本可用作範例,或者直接應用在您的遊戲引擎中。

本文演示了立方體內的反彈球體,顯示了牛頓物理學中的“球面-球面”和“球面-平面”碰撞檢測機制。一開始,球面相互碰撞,並與立方體壁面碰撞。檢測到碰撞後,會執行碰撞反應代碼,以計算新速率。用戶可選擇運行多線程或單線程版本。會採用線程操作,在主線程中進行渲染,在另一個獨立線程中計算物理等式。

目的是展示如何使用獨立線程來獨立於實際渲染進程,執行 CPU 密集型物理計算。隨着未來處理器架構向着多個內核發展,使用多條線程來執行不同任務將受益匪淺。因此,通過多條線程獨立工作,充分利用可用CPU週期,可使應用的性能得到顯著提升。本文首先探討了此項實施的基礎情況,之後介紹了我們演示中用到的物理概念。此外,還包括未來的工作和參考部分。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章