freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于粒子系統(tǒng)的噴泉模擬_本科畢業(yè)論文-wenkub

2023-07-07 11:28:55 本頁面
 

【正文】 trajectories fountain, bined acceleration motion to simplify particle movement, and the realization of particle texture fusion technology. Experiment results show that the method is simple, the fountain of simulation results meet requirement of realtime and lifelike. Key words: particle systems, Fountain simulation, Virtual reality, 0penGL 3 1 緒 論 計(jì)算機(jī)圖形學(xué) (Computer Graphics,簡(jiǎn)稱 CG)是一種使用數(shù)學(xué)算法將二維或三維圖形轉(zhuǎn)化為計(jì)算機(jī)顯示器柵格形式的科學(xué)。 近年來,諸如云彩、瀑布、雨、雪等不規(guī)則模糊物體的模擬越來越成為計(jì)算機(jī)圖形學(xué)中最具挑戰(zhàn)性的研究方向之一,它們的模擬在計(jì)算機(jī)游戲、影視、廣告、視景仿真等各種領(lǐng)域得到了越來越廣泛的應(yīng)用。結(jié)果表明等 加速運(yùn)動(dòng)方法使粒子運(yùn)動(dòng)路徑更加簡(jiǎn)單,可以獲得好的實(shí)時(shí)性,利用 融合渲染粒子的方法也使噴泉模擬效果滿足了虛擬現(xiàn)實(shí)、計(jì)算機(jī)仿真中真實(shí)感的要求 ??梢灶A(yù)見,在未來的信息工業(yè)和產(chǎn)業(yè)中,計(jì)算機(jī)動(dòng)畫將更進(jìn)一步發(fā)揮巨大的作用,占據(jù)重要的地位。隨機(jī)模型是處理這類問題的一種先進(jìn)的方法,在隨機(jī)模型中首推 Fournier的分形算法和 Reeves的粒子系統(tǒng)方法 [2]。因此,在虛擬風(fēng)景園林、虛擬校園、虛擬城市、虛擬公園等大的虛擬場(chǎng)景中,噴泉是一個(gè)風(fēng)景點(diǎn)。在虛擬場(chǎng)景中水的效果對(duì)增強(qiáng)場(chǎng)景真實(shí)感有十分重要的作用 ,其中噴泉效果是虛擬場(chǎng)景中常見的畫面,例如風(fēng)景園林的動(dòng)態(tài)噴泉水景,將計(jì)算機(jī)產(chǎn)生的許多奇妙噴泉水景圖像添加到虛擬漫游系統(tǒng)或影視作品中可以大大提高作品的觀賞效果。而自然景物的模擬一直是虛擬現(xiàn)實(shí)領(lǐng)域的重要研究?jī)?nèi)容,如 何在虛擬場(chǎng)景中真實(shí)的再現(xiàn)生活中的自然景物是極具挑戰(zhàn)性的課題之一。我國的徐迎慶 [9]等人從水力學(xué)方程出發(fā),提出了一個(gè)基于物理模型的模擬流水和波浪的方法;陳前華 [10]等人基于物理建模方法與隱式曲面造型技術(shù),實(shí)現(xiàn)了滴水漣漪的模擬。比如說對(duì)噴泉、水流、云、霧、煙、雪、火花等自然景物的模擬上,傳統(tǒng)的造型方法具有局限性,而粒子系統(tǒng)的出現(xiàn)卻較好的解決了這一難題。 從 1983年由 Reeves提出粒子系統(tǒng)訓(xùn)以來,許多的研究者對(duì)粒子系統(tǒng)進(jìn)行了研究與發(fā)展。MatthiasUnbescheiden和 Andrzej Trembilski[18]運(yùn)用粒子系統(tǒng),從云的物理原理出發(fā),結(jié)合紋理映射技術(shù)建立了云的模型,其核心是采用具有紋理的多面體頂點(diǎn)集代替粒子群,該模型大大減少了粒子系統(tǒng)中粒子的數(shù)量,從而使粒子系統(tǒng)的實(shí)時(shí)仿真得以實(shí)現(xiàn)。 本論文的技術(shù)路線 本文主要根據(jù)國內(nèi)外模擬噴泉的研究現(xiàn)狀進(jìn)行了分析和借鑒。 本論文主要從下面幾章闡述利用粒子系統(tǒng)實(shí)現(xiàn)噴泉的模擬: 第一章:主要綜述了課題的國內(nèi)外研究現(xiàn)狀。 第四章:通過噴泉粒子的運(yùn)動(dòng)規(guī)律,特征,軌跡 的分析研究 來實(shí)現(xiàn)系 統(tǒng)的設(shè)計(jì) 。OpenGL 是個(gè)專業(yè)的圖形程序接口,是一個(gè)功能強(qiáng)大,調(diào)用方便的底層圖形庫。 20xx 年 8 月, 版本發(fā)布 ~OpenGL 標(biāo)準(zhǔn)的主要制訂者并非原來的 SGI,而是逐漸在 ARB 中占據(jù)主動(dòng)地位的 3Dlabs。 20xx 年 8 月 Khronos 小組發(fā)布了 OpenGL ,這是一年以來 OpenGL進(jìn)行的第三次重要升級(jí)。幾何數(shù)據(jù)(頂點(diǎn)、線、多邊形)跟隨著這些路徑通過這些代表求值程序和每一個(gè)頂點(diǎn)操作的盒子,而像素?cái)?shù)據(jù)(像素、 圖像、位圖)的部分加工處理過程有些不同。參數(shù)化曲線和表面最初可能是通過控制點(diǎn)以及成為基函數(shù) (Basic function)的多項(xiàng)式函數(shù)進(jìn)行描述的。 基于頂點(diǎn)的操作 對(duì)于頂點(diǎn)數(shù)據(jù),接下來的一個(gè)步驟就是 基于頂點(diǎn)的操作 ,就是把頂點(diǎn)變換為圖元。如果使用了紋理,這個(gè)階段還將生成并變換紋理坐標(biāo)。在有些情況下,接下來需要執(zhí)行一個(gè)稱為透視除法 (perspective division)的步驟。取決于多邊形模式,多邊形可能被畫成點(diǎn)的形式或者直線的形式。接著,這些數(shù)據(jù)被縮放、偏移,并根據(jù)一副像素圖進(jìn)行處理。 OpenGL 有一種特殊的像素復(fù)制操作,可以把數(shù)據(jù)從幀緩沖區(qū)復(fù)制到幀緩沖區(qū)的其他位置或紋理內(nèi)存中。這樣,就可以很方便地在他們之間進(jìn)行切換。 光棚化 光棚化就是把幾何數(shù)據(jù)和像素?cái)?shù)據(jù)轉(zhuǎn)換為片斷 (fragment)的過程。 片斷操作 在數(shù)據(jù)實(shí)際存儲(chǔ)到幀緩沖區(qū)之前, 將要執(zhí)行一系列的操作。在紋理內(nèi)存中為每個(gè)片斷生成一個(gè)紋理單元 (texel,也就是 8 紋理元素 ),并應(yīng)用到這個(gè)片斷上。最后,經(jīng)過完整處理的片斷就被繪制到適當(dāng)?shù)木彌_區(qū),最終成為一個(gè)像素并到達(dá)它的最終 歸宿 。 MFC 類庫作為 C++與 Windows 的接口,建立在 Win32 應(yīng)用程序編 程接口 API 之上,封裝了大多數(shù)的 API 函數(shù),主要是 API 中與程序結(jié)構(gòu)相關(guān)的部分和最常用的部分。 Visual C++提供了相應(yīng)的工具 來完成這個(gè)工作: AppWizard 可以用來生成初步的框架文件(代碼和資源等);資源編輯器用于直觀地設(shè)計(jì)用戶界面; ClassWizard 用來協(xié)助添加代碼到框架文件;最后進(jìn)行編譯,則通過類庫實(shí)現(xiàn)了應(yīng)用程序特定的邏輯。 MFC 是一個(gè)編程框架, MFC 中的各種類結(jié)合起來構(gòu)成了一個(gè)應(yīng)用程序框架,它的目的就是讓程序員在此基礎(chǔ)上來建立 Windows 下的應(yīng)用程序,這是一種相對(duì) SDK 來說更為簡(jiǎn)單的方法。 MFC 類庫是 C++類庫。 ( 2)對(duì)應(yīng)用程序概念的封裝 使用 SDK 編寫 Windows 應(yīng)用程序時(shí),總要定義窗口過程,登記 Windows Class,創(chuàng)建窗口,等等。 ( 3)對(duì) COM/OLE 特性的封裝 OLE 建立在 COM 模型之上,由于支持 OLE 的應(yīng)用程序必須實(shí)現(xiàn)一系列的接口( Interface),因而相當(dāng)繁瑣。這些類中,最重要的類是 CObject 和 CCmdTarget。CCmdTarget 通過封裝一些屬性和方法,提供了消息處理的架構(gòu)。 程序員將結(jié)合自己的實(shí)際,從適當(dāng)?shù)?MFC 類中派生出自己的類,實(shí)現(xiàn)特定的功能,達(dá)到自己的編程目的。如果這些函數(shù)都設(shè)計(jì)成虛擬函數(shù),由于數(shù)量太多,實(shí)現(xiàn)起來不現(xiàn)實(shí)。 MFC 編程框架將在適當(dāng)?shù)臅r(shí)候、適當(dāng)?shù)牡胤絹碚{(diào)用程序的代碼。針對(duì)不同的應(yīng)用和目的,程序員采用不同的模板。 為了支持對(duì)應(yīng)用程序概念的封裝, MFC 內(nèi)部必須作大量的工作。 總之, MFC 封裝了 Win32 API, OLE API, ODBC API 等底層函數(shù)的功能,并提供更高一層的接口,簡(jiǎn)化了 Windows 編程。 MFC 是 C++類庫,程序員就是通過使用、繼承和擴(kuò)展適當(dāng)?shù)念悂韺?shí)現(xiàn)特定的目的。這些文件分四類:頭文件( .h),實(shí)現(xiàn)文件 (.cpp),資源文件 (.rc),模塊定義文件 (.def),等。對(duì)這些類或者對(duì)象解釋如下。 如果要支持工具條、狀態(tài)欄,則派生的邊框窗口類還要添加 CToolBar 和 CStatusBar 類型的成員變量,以及在一個(gè) OnCreate 消息處理函數(shù)中初始化這兩個(gè)控制窗口。視窗口通過文檔對(duì)象來訪問和更新數(shù)據(jù)。 MDI 應(yīng)用程序使用多文檔模板類 CMultiDocTemplate; SDI 應(yīng)用程序使用單文檔模板類 CSingleDocTemplate。如果是多文檔應(yīng)用程序,文檔模板使用 CMultiDocTemplae,主框架窗口從 CMdiFarmeWnd 派生,它包含工具條、狀態(tài)欄和文檔框架窗口。表 1 列出了 AppWizard 所生成的頭文件,表2 列出了了 AppWizard 所生成的實(shí)現(xiàn)文件及其對(duì)頭文件的包含關(guān)系。刪除對(duì)話框中的靜態(tài)文本,調(diào)整控件的位置; 2. 配置基于 OpenGL+ MFC 的開發(fā)環(huán)境 (1)將 , , , , 文件拷貝到操作系統(tǒng)WINNT/System32 目錄下。選擇 View|ClassWizard 菜單項(xiàng) ,打開MFC對(duì)話框,在 Add Class之中選擇 New,以便添加一個(gè)新類 COpenGL,且該類的基類選擇 generic CWnd;最后利用 MFC ClassWizard 為 COpenGL 類添加消息 WM_CREATE, WM_PAINT 的映射。pfd)) == 0 ) 14 { MessageBox(ChoosePixelFormat failed)。 return FALSE。 并 添加 WM_CREATE 消息處理函數(shù),然后在 OnCreate 函數(shù)中進(jìn)行調(diào)用: // TODO: Add your specialized creation code here Init()。 //在修改前重設(shè)坐標(biāo)系 glLoadIdentity()。 glLoadIdentity()。 void vect_mult(struct point *A, struct point *B, struct point *C)。 void LoadTexture(char *fn, int t_num)。 struct particle *tempp。 // 粒子的生命期 15 float v。 // 粒子的 X 和 Z 方向增加值 char type。 hrc = ::wglGetCurrentContext()。 CView::OnDestroy()。 用計(jì)算機(jī)生成三維形體圖形,是計(jì)算機(jī)圖形學(xué)的基本研究?jī)?nèi)容。在視點(diǎn)坐標(biāo)系中,進(jìn)行背面剔除、視域四棱錐裁剪。 粒 子系統(tǒng)的理論 粒子系統(tǒng)是不規(guī)則模糊物體建模及其圖像生成的一種方法,粒子系統(tǒng)的基本原理是采用大量的、具有一定生命和屬性的微小粒子圖元作為基本元素來繪制不規(guī)則的模糊物體對(duì)象.在粒子系統(tǒng)中,粒子圖元的形狀可以是小球、立方體、正四面體或其它的形體。粒子系統(tǒng)中,把運(yùn)動(dòng)的模糊物體看作由有限的具有確定屬性的流動(dòng)粒子所組成的集合,這些粒子以連續(xù)或離散的方式充滿它所處的空間,并處于不斷的運(yùn)動(dòng)狀態(tài),粒子在空間和時(shí)間上具有一定的分布。系統(tǒng)中的每個(gè)粒子并不是抽象的,它們都具有一系列的屬性,比如質(zhì)量屬性、存在的空間位置屬性、外觀屬性 (如顏 色、亮度、形狀、尺寸等 )、運(yùn)動(dòng)屬性 (如速度、加速度等 )、生存屬性 (生命期 ),其中顏色、亮度等屬性隨著時(shí)間不斷地發(fā)生變化。粒子在存活期間始終是按一定的方式運(yùn)動(dòng)的。 1.粒子生成的時(shí)間 通常粒子系統(tǒng)在初始化的時(shí)候就生成了一定數(shù)量的粒子,這部分粒子很大程度上決定了模糊物體的形態(tài)。 3.粒子的數(shù)量 粒子的數(shù)量是粒子系統(tǒng)的重要參數(shù),它關(guān)乎著粒子系統(tǒng)模擬效果的真實(shí)程度以及系統(tǒng)運(yùn)行的實(shí)時(shí)性。 第二種是物體面積衡量法。 1.外觀屬性 外觀屬性包括粒子的形狀、尺寸和顏色,它們共同決定了系統(tǒng)對(duì)不規(guī)則模糊物體模擬的逼真程度。 (3)粒子顏色:粒子的初始顏色由系統(tǒng)設(shè)定,粒子從生成到消亡的過程中,粒子顏色從初始顏色變成消亡顏色,體現(xiàn)了顏色分布的物理特性。 圖 5 粒子的初始位置 3.運(yùn)動(dòng)屬性 運(yùn)動(dòng)屬性是指粒子的運(yùn)動(dòng)速度,粒子的初始運(yùn)動(dòng)速度由大小和方向兩部分組成: 公式( 21)如下 InitialVelocity=MeanVelocity+Rand()*VarVelocity ( 21) MeanVelocity 和 VarVelocity 分別表示粒子的平均速度和隨機(jī)速度變化范圍。 粒 子的運(yùn)動(dòng)狀態(tài) 粒子動(dòng)態(tài)描述了粒子在三維空間中的狀態(tài)變化過程,狀態(tài)變化包括粒子空間位置、速度、形態(tài)和顏色的改變。 P 為位置, V 為速度, A 為加速度,粒子的狀態(tài)變化可用公式 (22)、公式 (23)計(jì)算: V(t+△ t)=V(t)+A(t)△ t (22) P(t+△ t)=P(t)+V(t)△ t (23) 19 粒子的消亡 粒子產(chǎn)生后,經(jīng)過一定的時(shí)間間隔,由于某種原因從系統(tǒng)中被刪除的過程稱為粒子的消亡過程。這些限制條件一般為超出顯示區(qū)域、顏色與背景色融合或粒子透明度已經(jīng)等于零 等。在以點(diǎn)光源形式繪制粒子時(shí),映射在任何像素上的光強(qiáng)和顏色都可以看成所有映射在該點(diǎn)的粒子的光強(qiáng)和顏色的簡(jiǎn)單疊加,從而避免了大量排序操作。 增強(qiáng) 了 模擬效果的真實(shí)感與實(shí)時(shí)性。 其次,假設(shè)繪制時(shí)只考慮不規(guī)則模糊物體本身,即粒子系統(tǒng)中的各個(gè)粒子與虛擬環(huán)境中的其它規(guī) 則物體不會(huì)出現(xiàn)交錯(cuò)、融合與碰撞檢測(cè)計(jì)算,因此只對(duì)系統(tǒng)中的粒子進(jìn)行繪制。由于粒子存在于三維空間中,每個(gè)粒子都帶有其自身的深度信息,在繪制時(shí)也要解決遮擋、陰影和部分透明物體重疊等繪制規(guī)則圖形體素要解決的問題,并且基于粒子系統(tǒng)的不規(guī)則物體可以與基于面片的規(guī)則物體存在于同一場(chǎng)景中。粒子生命周期的遞減可以按照每一幀來遞減,也可以按照物理時(shí)間來遞減。為了模擬復(fù)雜環(huán)境中粒子的運(yùn)動(dòng),可以引入“場(chǎng)”的概念,如重力場(chǎng)、風(fēng)力場(chǎng)、電磁場(chǎng)等,通過控制這些場(chǎng)的參數(shù),就可以控制場(chǎng)中粒子的運(yùn)動(dòng)軌跡。 4.生命屬性 新粒子生成時(shí)都被系統(tǒng)賦予了生命周期 (Lifetime),生命周期是用來計(jì)算粒子在系統(tǒng)中的存活時(shí)間,隨著時(shí)間的推移,不斷有粒子消亡同時(shí)不斷有新粒子生成,生命周期 (粒子壽命 )用粒
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1