Update: 2006-12-12 Author: smile636 From: GameRes BBS 在學習粒子系統(tǒng)后,繼續(xù)學習到shader編程時,我忽然想到:能不能把很多粒子運算從CPU上轉移到GPU上去? 一般情況下計算粒子位置好解決,可是生命周期處理不好辦,因為shader不能寫頂點buffer,這個一時把我難住了,后來在網上看到篇GPU處理粒子系統(tǒng)的文章,受到點啟發(fā),再經過一翻思考,自己的實現(xiàn)方案產生了,遂整理出文章一篇,以拋磚引玉。 Update: 2006-4-7 Author: shaoxiaoning From: GameRes 許多自然現(xiàn)象都存在一些小的粒子做一些相似的運動。(例如,下落的雪花,火焰里的火苗,未來戰(zhàn)爭槍械里的子彈).粒子系統(tǒng)就使用這樣的模型。 Update: 2004-5-2 Author: 周軍 From: GameRes 游戲制作離不開各種各樣的特效,火焰效果更是這些特效當中最常用的一種。在網上有很多的這方面的例子,但似乎都不太理想。這里主要介紹幾種有效的火焰模擬算法。代碼
Update: 2003-10-24 Author: 周軍 From: 放飛技術網 隨著視頻游戲的發(fā)展,玩家們對游戲質量的要求也不斷提高,新技術的不斷出現(xiàn)、更新,使得游戲變得更為精彩。下面我要介紹的是一個有效的模擬技術——粒子系統(tǒng),該系統(tǒng)廣泛用在光特效中。 Update: 2003-8-26 Author: 潘李亮 From: GameRes 關于水波和火焰的效果的模擬算法有很多。其中有很多都已經被實現(xiàn)也被證明是非常有效的。本文提出的水波模擬程序和其它常見的算法不太一樣。這是從虎克定理來近似導出水波波動的物理模型。一般的水波模擬通常從能量的觀點出發(fā)、而本文則從受力和速度之間的關系入手,引入一種新的水波模型。例程代碼:http://dev./Visual/Effects/DMyRippleII.rar Update: 2003-8-26 Author: 潘李亮 From: GameRes 算法的主要部分就是當鼠標點下去的時候,生成一群粒子。粒子有兩種狀態(tài):上升和擴散。開始的時候粒子處在上升狀態(tài)。當上升到一定的高度時候它就變成了擴散狀態(tài)了。當一個粒子進入擴散狀態(tài)后為了讓它更加顯眼我們在每次繪制的時候它周圍隨機的加入幾個點。例程代碼:http://dev./Visual/Effects/Dpllpravite.rar 借助DirectDraw技術實現(xiàn)對水波的計算機模擬 Update: 2001-3-22 Author: 郎銳 From: 目前,各種高性能計算機正以其強大的運算能力被廣泛應用于各種領域,其中對自然界的物理現(xiàn)象和自然規(guī)律進行仿真是主要應用之一。由于許多專業(yè)書籍對此類仿真技術諱莫如深,使不少程序設計人員對此類程序的設計問題感到無從下手。本文以對真實水波的產生、擴散、衰減以及多個水波的交迭過程的計算機模擬為例,介紹此類程序的設計思路與解決方法。 Update: 2001-3-20 Author: 劉小軍 From: 瀑布用粒子系統(tǒng)來實現(xiàn)非常簡單,想象一下中學物理學過的拋物運動,一個乒乓球(OC天天放在口袋里的那種)在平滑的桌面受到一水平外力作用從桌面的一端滾下,從離開桌面的一刻起,乒乓球在水平方向作勻速運動,同時在垂直方向作勻加速運動,當乒乓球落到地面時還要發(fā)生彈性碰撞。 Update: 2001-3-19 Author: 劉小軍 From: 我不知道這篇文章該以什么做模型,云、煙、火還是霧,原來打算寫霧的,臨時又改變主意寫火焰。Why?因為我前些時候寫過一篇火焰的文章,記得嗎?之所以再寫火焰,是想通過兩種不同的方法的比較,讓大家體會一下粒子系統(tǒng)究竟有多大的魅力。 Update: 2001-3-18 Author: 劉小軍 From: 原本不想寫這篇文章的,因為到目前為止我對它的效果還不是很滿意,不過后來我想可能有人需要它,所以還是把它作為第三個粒子系統(tǒng)應用放在這里了,需要源碼的請單擊這里下載。 Update: 2001-3-17 Author: 劉小軍 From: 前面我們的運動圖標應該是粒子系統(tǒng)運用中比較簡單的一種了,這也是我在游戲月亮之子里見到過的一種特效,這種特效是通過一系列的數(shù)學運算而產生的動態(tài)圖像效果。在特效的實現(xiàn)過程當中還有一種是通過對現(xiàn)實事物的模仿演變而成的。在月亮之子這個游戲中還有一種特效,就是漂浮的煙霧,慢慢成型,演變成精靈圖像。 Update: 2001-3-16 Author: 劉小軍 From: 粒子系統(tǒng)是啥西?小軍曰:所謂的粒子系統(tǒng),就是將我們看到的物體運動和自然現(xiàn)象,用一系列運動的粒子來描述,再將這些粒子運動的軌跡映射到顯示屏上,然后呢?就是我們在顯屏上看到的物體運動和自然現(xiàn)象的模擬效果了。 Update: 2001-3-15 Author: 燕良 譯 From: 你將發(fā)現(xiàn)在重力下墜落是粒子的最普通的動作之一,爆炸的碎片、火星兒、雨、雪都遵循類似的規(guī)則。所有這些"啞"粒子('dumb' particles),它們被簡單的物理規(guī)則所驅動,并且不能自己行動。 Update: 2001-3-14 Author: 燕良 譯 From: 星空,還記得那個demo嗎?它們都擁有一個星空和一些滾動的文字。在慣用的320*200的解析度下,這些星星看上去真的很糟糕,遠處的星移動的非常的慢,蹣跚的從屏幕中央向外移動,吃力的從一個像素移到下一個像素,低的屏幕解析度使得低速移動的像素非常的難看,怎樣克服解析度的限制呢?答案就是反走樣(Antialiasing)。 Update: 2001-3-13 Author: 燕良 譯 From: 普通的Breshenham算法畫線很快,但并不是很精細,通常的整數(shù)畫線因為只能在整數(shù)坐標上繪圖,所以產生難看的鋸齒。我在Michael Abrash的一本書力看到一個很好的反走樣直線畫法,并決定用非整數(shù)坐標改進它。 Update: 2001-3-12 Author: 燕良 譯 From: 在很多粒子系統(tǒng)中,你希望粒子可以產生某種方式的交互作用,你可能會希望它們互相排斥,反彈或者粘著,不管是什么,把每一個粒子與其他所有其他粒子比較的過程將會非常的慢,你必須做的比較的次數(shù)和粒子個數(shù)的平方成正比,如果你把粒子的個數(shù)增加一倍,比較的次數(shù)將增加四倍。 Update: 2001-3-11 Author: 燕良 譯 From: 很多的現(xiàn)象都可以用粒子系統(tǒng)精確的或者近似的模擬,火焰、噴泉、爆炸、魚群、星空等等,他們都運行在一個近似的情況下。 Update: 2001-3-10 Author: 老赫 From: 以MS的能力,為DX寫一堆標準的Bresenham直線,點,圓函數(shù)并不是問題。問題是這會招至真正的計算機圖形高手程序員們的痛罵。因為Windows GDI的效果….大家如果用過Mac或者SGI就會發(fā)現(xiàn)Windows GDI繪圖的效果簡直是慘不忍睹。 Update: 2001-3-9 Author: 老赫 From: Plasma是個原理極其簡單的特效,被廣泛的應用于DEMO中,大量的DEMO都會來上一段柔和的,粘稠的,象什么漿汁一樣流動的PLASMA伴隨強勁的音樂,產生少許惡心的效果。你注意看某些電視廣告的背景是幻變的背景,那是由專用視頻硬件產生的類似Plasma效果,我們把那叫做電子背景。不論硬件軟件,效果原理都類似。 Update: 2001-3-8 Author: 老赫 From: 如果稍稍擴展一下這個數(shù)據結構,摻入一點 3D 的思想和一些小技巧 … 就能作出完全不同的 FX。下面我們先來看一看 3D 編程世界吧。 Real-time Cloth Deformation [實時變形布] Update: 2001-3-7 Author: Imagic From: 寫這個小程序的目的是為了驗證一個想法,那就是布的模擬并沒有人們所想的那么復雜。如果你對物理模型的方法和3D Coding比較熟悉的話,很快就可以編出一個類似的程序。 Update: 2001-3-6 Author: Imagic From: 粒子火焰可以說是Particle System在2D圖象上的經典應用,曾經有一個著名的粒子火焰屏幕保護,可以說是將2D Particle System的能力發(fā)揮到了及至。 Update: 2001-3-5 Author: Imagic From: 看到左邊這幅動畫(如果沒有出現(xiàn),請耐心的稍等片刻),你也許不會相信它其實是用電腦做出來的,這就是“水波”特效的魅力所在。 Particle System Overview [ 粒子系統(tǒng)概述] Update: 2001-3-4 Author: Imagic From: 最早認識Particle System還是從OverClock的主頁上(當時叫DirectX Guide,現(xiàn)在已改名為Fractal3D,http://fractal3d.yeah.net),當時上面介紹了一個老外研究出來的水波算法。 Update: 2001-3-3 Author: 云風 From: 云風工作室 爆炸效果是各種游戲中不可或缺的。產生這種效果的方法多種多樣,本文介紹一種較為簡單的算法,以期拋磚引玉:)這里僅給出必要代碼,請理解后自己編程。如果你有更好的算法,也請E給云風一份:)~ Update: 2001-3-2 Author: Imagic From: 在介紹編程之前,先讓我們來回顧一下在高中的物理課上我們所學的關于水波的知識。水波有如下幾個特性:擴散、衰減、水的折射、反射、衍射。 Update: 2001-3-1 Author: From: 水波特效在游戲當中也比較多見,波紋實時生成算法很多,這里介紹一種快速算法。之所以說它是一種快速算法,是因為它的計算既沒有用到sin、cos函數(shù)也沒有用到sin、cos函數(shù)的查表算法,它只是根據波的傳播原理,通過少量的加減、位移運算來完成。 |
|