[發明專利]基于GPU的粒子系統優化無效
| 申請號: | 201210451443.3 | 申請日: | 2012-11-13 |
| 公開(公告)號: | CN102982506A | 公開(公告)日: | 2013-03-20 |
| 發明(設計)人: | 不公告發明人 | 申請(專利權)人: | 沈陽信達信息科技有限公司 |
| 主分類號: | G06T1/20 | 分類號: | G06T1/20 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 110164 遼寧省沈陽*** | 國省代碼: | 遼寧;21 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 gpu 粒子 系統 優化 | ||
?
技術領域
????本發明涉及計算機圖形技術領域,更具體地說,涉及粒子系統的渲染優化方法。
背景技術
煙火、云霧、瀑布、植物和土壤等自然景物的可視化是計算機圖形學中極具挑戰性的研究課題,傳統的造型方法很難比較真實地描述它們的形狀和特征。
粒子系統適用于不規則物體的可視化仿真。粒子系統需要對復雜的運動系統進行模擬,例如一場暴風雪,一個爆炸,就需要大量的三角形繪制。同時,粒子的位置更新和碰撞檢查,需要耗費大量的CPU時間,GPU與CPU的調用嚴重不同步,GPU大量的時間是在等待CPU進行完粒子的生成與位置更新。
發明內容
本發明要解決的技術問題在于,采用可編程頂點著色器,把精靈粒子更新的部分操作轉移到GPU中,采用多線程技術,減少CPU與GPU的等待時間。
為了實現上述目的,本發明所采用的技術方案是基于GPU的粒子系統優化,其步驟如下:
1)根據當前的粒子系統,預生成頂點位置貼圖,該位置是CPU更新的位置,通過這個位置,結合的當前視點信息,可以生成最終的粒子三角形;
2)組織頂點,把視點的位置和朝向信息傳入頂點著色器,同時在Shader中讀取貼圖,計算出最終三角形位置;?
3)把更新操作轉移到多線程中,當粒子未更新完畢時,采用上一幀數的頂點繪制粒子,當多線程計算的粒子位置結束后則更新渲染中的頂點位置;
4)根據粒子的種類,組織同一種粒子,進行靜態批次渲染,減少顯卡的渲染命令調用次數。
本發明主要采用了shader3.0中的頂點紋理技術,把粒子預存為貼圖數據,傳入頂點著色器,然后根據當前幀的視點信息,進行粒子三角形的位置計算。同時結合多線程技術,把Cpu中關于粒子更新部分轉移到專門的線程中進行計算。通過將可編程GPU技術引入到粒子系統當中,將一部分本應由CPU負責的粒子更新任務放到GPU中進行,使部分負載從CPU轉移到GPU,從而將CPU從繁重地頂點變換汁算中解脫出來;同時采用多線程,減少GPU與CPU的等待時間,結束靜態批次,提高粒子的渲染效率。
具體實施方式
????基于GPU的粒子系統優化,其步驟如下:
1)根據當前的粒子系統,預生成頂點位置貼圖,該位置是CPU更新的位置,通過這個位置,結合的當前視點信息,可以生成最終的粒子三角形;
2)組織頂點,把視點的位置和朝向信息傳入頂點著色器,同時在Shader中讀取貼圖,計算出最終三角形位置;?
3)把更新操作轉移到多線程中,當粒子未更新完畢時,采用上一幀數的頂點繪制粒子,當多線程計算的粒子位置結束后則更新渲染中的頂點位置;
4)根據粒子的種類,組織同一種粒子,進行靜態批次渲染,減少顯卡的渲染命令調用次數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于沈陽信達信息科技有限公司,未經沈陽信達信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210451443.3/2.html,轉載請聲明來源鉆瓜專利網。





