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

正文內(nèi)容

基于directx的三維人體建模與運(yùn)動(dòng)仿真結(jié)題報(bào)告-wenkub.com

2025-06-27 03:19 本頁面
   

【正文】 三種類型變換的作用效果和施加變換的次序規(guī)則 不論是標(biāo)準(zhǔn)網(wǎng)格模型還是蒙皮網(wǎng)格模型,它們都具有一個(gè)相同的狀態(tài),即分解成零散的關(guān)節(jié)或骨骼后被置放在世界坐標(biāo)系的 中 心位置,而且特別強(qiáng)調(diào)關(guān)節(jié)與上層關(guān)節(jié),骨骼與上層骨骼的連接點(diǎn) 幾乎 是與坐標(biāo)原點(diǎn) (0, 0, 0)重疊在一起的 ,甚至連關(guān)節(jié)或骨骼的幾何對(duì)稱軸都近乎與坐標(biāo)軸重合 。的旋轉(zhuǎn)變換對(duì)應(yīng)的矩陣保存到臨時(shí)矩陣中;然后將當(dāng)前的變換矩陣與臨時(shí)矩陣相乘,并將相乘的結(jié)果賦給框架的變換矩陣。還是以上述偏轉(zhuǎn)臉部的朝向?yàn)槔?dāng)前朝向?yàn)?45176。那么只需直接將變換矩陣通過數(shù)值計(jì)算重新賦為偏角為 45176。比如,當(dāng)前人體模型臉部的朝向是前方右偏 45176。比如,假設(shè)一個(gè)人的手臂在上臂和下手臂的連接處脫臼了,下手臂不受人體控制處于下垂?fàn)顟B(tài),那么當(dāng)此人忍痛舉起上臂時(shí),下手臂便由于皮膚的連接作用,受上臂的牽動(dòng),經(jīng)過一段移動(dòng)后被懸吊起來,但是仍然處于下垂?fàn)顟B(tài)。 組合整體模式,是指對(duì)一個(gè)部位做一個(gè)控制,則與該部位想連接的下層部位都受到相同的控制作用,從而表現(xiàn)出像是對(duì)整個(gè)關(guān)聯(lián)部位的控制。比如,只希望模型的上臂細(xì)小一些,而不影響下手臂和手掌等部位的特征。所以對(duì)模型的設(shè)置只能在重組變換矩陣上做文章。所以在做變換矩陣的設(shè)置時(shí),一定要嚴(yán)格根據(jù)控制的目的,正確地選擇設(shè)置的框架對(duì)象以及變換矩陣對(duì)象。由上文變換矩陣作用原理 可知道變換矩陣 matCombined 是本地變換矩陣和上層框架坐標(biāo)系變換矩陣相乘的結(jié)果。WorldMatrix) 方法來設(shè)置網(wǎng)格繪制的位置以及繪制的方式,比如旋轉(zhuǎn)多少度繪制,按什么比例繪制等。 多種模式下的模型運(yùn)動(dòng)控制 對(duì)三維模型的控制效果最終表現(xiàn)在繪制出的模型的視覺表現(xiàn)。 }。 信息科學(xué)與技術(shù)學(xué)院 電子工程與信息科學(xué)系 ( EEIS) 20 // Function to start parsing an .X file BOOL Parse(char *Filename, void **Data = NULL)。 protected: // Function called for every template found BOOL ParseObject(ID3DXFileData *pDataObj, ID3DXFileData *pParentDataObj, DWORD Depth, void **Data, BOOL Reference)。 // Hierarchies used during loading XSSD3DXMESHCONTAINER_EX *m_pRootMesh。 char *m_pTexturePath。 從 XSSD3DXMESHCONTAINER_EX 的定義中可以看到,我們?yōu)榫W(wǎng)格容器添加了用于查找網(wǎng)格的索引信息、區(qū)別網(wǎng)格類型的標(biāo)識(shí)信息、一個(gè)指向包含該網(wǎng)格的框架的指針以及一組指向網(wǎng)格紋理信息的指針。 // Find the mesh by name XSSD3DXMESHCONTAINER_EX *Find(char *MeshName)。 D3DXMATRIX **ppFrameMatrices。 XSSD3DXFRAME_EX *pPackCellFrame。功能函數(shù)上添加有統(tǒng)計(jì)框架數(shù)量,查找特定框架,更新變換信息,設(shè)置變換信息和導(dǎo)出變換信息等。 bool DownLoadTransform(DWORD nNumMatrix, DWORD * pnMatrixIndex, D3DXMATRIX * pRootMatrix, DWORD nDummyConfigType = XSSDUMMYCONFIG_BOTH)。 // Reset transformation matrices to original feature and configuration void ResetToOriginal()。 // Reset transformation matrices to Recent feature only void ResetToRecentFeature()。 ~XSSD3DXFRAME_EX()。 // To store separate Translate Transformation to configure or Control the dummy XSSD3DXFRAME_EX * pFrameParent。 // Rotation Transformation to control the dummy D3DXMATRIX matControlS。 // Translation Transformation to configure the dummy D3DXMATRIX matFeatureR。 // Original transformation from .X D3DXMATRIX matNewFeature。 .X 文件的解析方法概述 將 .X 文件中的模型讀取的過程辨識(shí) .X 文件的解析過程,大致分為以下步驟: 定義一個(gè)框架容器或直接用 Direct3D SDK 中的 D3DXFRAME 結(jié)構(gòu)體,定義一個(gè)網(wǎng)格容器或直接用 Direct3D SDK 中的 D3DXMESHCONTAINER。 由上文標(biāo)準(zhǔn)網(wǎng)格模型和蒙皮網(wǎng)格模型的結(jié)構(gòu)解析中可知,在 .X文件中不同的模型對(duì)應(yīng)有不同的數(shù)據(jù)信息來存儲(chǔ)模型的所有信息。 array FLOAT weights[nWeights]。 [...] } 用于 定義一個(gè) Mesh 對(duì)象。Mesh template Mesh { 3D82AB4462DA11cfAB390020AF71E433 DWORD nVertices。在骨骼動(dòng)畫中可以裝載一塊或一系列骨骼(如手臂),(表示骨骼時(shí))可以沒有 Mesh 對(duì)象。 特別介紹一下 DirectX 標(biāo)準(zhǔn)模板: DirectX .X 標(biāo)準(zhǔn)模板由 Microsoft 公司定義并打包到 SDK 里。 重點(diǎn)說明一下模板的全局唯一標(biāo)識(shí)號(hào)( GUID): GUID 是一個(gè)用于唯一標(biāo)識(shí)模板的編號(hào)。 [2]對(duì)其理解可以類比 C/C++中結(jié)構(gòu)體數(shù)據(jù)類型的定義,當(dāng)然還要結(jié)合一點(diǎn)編譯原理中正則表達(dá)式的思想,因?yàn)?.X 文件數(shù)據(jù)模板是允許嵌套定義的。 .X 文件頭 .X 文件頭包含文件的類型標(biāo)識(shí)符、文件版本、數(shù)據(jù)記錄格式以及數(shù)據(jù)中浮點(diǎn)數(shù)值的位數(shù)等信息。 Direct3D 中也使用了這種文件格式來存儲(chǔ) 3D 模型的各個(gè)信息,如網(wǎng)格數(shù)據(jù),紋理數(shù)據(jù),動(dòng)畫關(guān)鍵幀 數(shù)據(jù)等。所以在標(biāo)準(zhǔn)網(wǎng)格模型的存儲(chǔ)過程中,各個(gè)關(guān)節(jié)模型上的各個(gè)頂點(diǎn)被原樣記錄下來,其次是比例變換 An,再次是用于拼接的變換矩陣 Bn。 標(biāo)準(zhǔn)網(wǎng)格模型中變換矩陣的作用原理 標(biāo)準(zhǔn) 網(wǎng)格模型的存儲(chǔ)方式 標(biāo)準(zhǔn)網(wǎng)格模型的建立過程更像是在制作一臺(tái)機(jī)器,首先我們需要制作構(gòu)成機(jī)器的各個(gè)零部件,即人體模型的各個(gè)關(guān)節(jié),然后再將這些關(guān)節(jié)拼裝起來。一次,考慮頂點(diǎn)受到多個(gè)骨骼影響的情形,頂點(diǎn)運(yùn)動(dòng)后的坐標(biāo)還要與該頂點(diǎn)的權(quán)重值想成。根據(jù)權(quán)重矩陣的定義,有 Xframe_0 = X0*H。在 .X 文件中,骨骼在某一幀時(shí)刻的 Animation Key 矩陣對(duì)象就是這些骨骼矩陣。 現(xiàn)在烤爐骨骼繞關(guān)節(jié)點(diǎn)的旋轉(zhuǎn)。如果將根骨骼(層次關(guān)系中處于最上層的那塊骨骼)的父骨骼坐標(biāo)系定義為世界坐標(biāo)系(包含網(wǎng)格頂點(diǎn)坐標(biāo)的 Frame 所在的坐標(biāo)系實(shí)際就是所謂的局部坐標(biāo)系),那么,每個(gè)骨 骼都有一個(gè)骨骼矩陣,折疊矩陣就是在 .X 文件中看到的一系列具有層次關(guān)系的 Frame 對(duì)象中的變換矩陣。 在每一條骨骼上建立一個(gè)骨骼坐標(biāo)系。其中, 從連接關(guān)系上, 骨骼 1 是骨骼 2 的父骨骼,骨骼 2 是骨骼 3 的父骨骼。所以在蒙皮網(wǎng)格模型的存儲(chǔ)過程中,原始模型上的所有的頂點(diǎn)被原樣記錄下來,其次是各個(gè)骨骼對(duì)應(yīng)的變換矩陣 An,然后是將骨骼還原到原始位置或近似原始位置的矩陣 Bn。隨后才分塊定義不同的骨骼,相當(dāng)于將一個(gè)模型根據(jù)所需的精細(xì)程度,按部位的不同分割開,然后通過變換矩陣 An 將各個(gè)骨骼移動(dòng)到世界坐標(biāo)系的中心處,并確保其中與上層關(guān)節(jié)的連接點(diǎn)與原點(diǎn)重合。稍 有不同的是,標(biāo)準(zhǔn)網(wǎng)格中的頂點(diǎn)只能絕對(duì)地屬于某一特定部位,從而歸屬于某一特定的集合;而蒙皮網(wǎng)格中的頂點(diǎn)則可以歸屬于多個(gè)與之相關(guān)的骨骼,如上臂和下手臂之間連接處的頂點(diǎn)就同時(shí)歸屬于兩個(gè)骨骼,從而這些連接處的頂點(diǎn)就受到多重變換矩陣的控制。常言道“牽一發(fā)而動(dòng)全身”,那是因?yàn)楸慌哿俗龀龅目鋸埛磻?yīng),而此處的“動(dòng)盆骨則動(dòng)全身”,則是我們的身體結(jié)構(gòu)所決定的,否則我們的骨架就要脫臼了。由此兩例可以看出,人體結(jié)構(gòu)具有特殊而嚴(yán)格的連接關(guān)系,這種連接關(guān)系影響著機(jī)體運(yùn)動(dòng)的方式。又如,當(dāng)我們發(fā)現(xiàn)一個(gè)模型整條手臂的比例都很協(xié)調(diào)很美觀,然而它相對(duì)于身體的其他部位顯得小了一些,那么我們是期望可以對(duì)整個(gè)手臂做 信息科學(xué)與技術(shù)學(xué)院 電子工程與信息科學(xué)系 ( EEIS) 7 一個(gè)比例縮放,使之與其他的關(guān)節(jié)在尺度上協(xié)調(diào)起來。 3. 人體建模與運(yùn)動(dòng)仿真實(shí)現(xiàn)原理 三維人體模型關(guān)節(jié)運(yùn)動(dòng)控制原理 結(jié)合真實(shí)人體運(yùn)動(dòng)的特點(diǎn)可以清楚地知道,模型中的關(guān)節(jié)運(yùn)動(dòng)主要是各部位繞著彼此間連接處的關(guān)節(jié)點(diǎn)的旋轉(zhuǎn)運(yùn)動(dòng),在單個(gè)關(guān)節(jié)的運(yùn)動(dòng)過程中要保證模型的整體性,則要確保與之連接的上一個(gè)關(guān)節(jié)和下一個(gè)關(guān)節(jié)仍然保持原有的連接關(guān)系,即一個(gè)關(guān)節(jié)的運(yùn)動(dòng),勢(shì)必影響其他與之相關(guān)的關(guān)節(jié)的變化,形象的說,這種變換帶來的影響是傳遞的。 MFC 應(yīng)用程序框架上的三維模型編輯軟件的構(gòu)建 MFC 應(yīng)用程序框架是工程以及信息處理領(lǐng)域?qū)I(yè)應(yīng)用型程序編寫所基于的主要程序框架。如上所述,一個(gè)模型部位 信息科學(xué)與技術(shù)學(xué)院 電子工程與信息科學(xué)系 ( EEIS) 6 對(duì)應(yīng)一個(gè)頂點(diǎn)集合,一個(gè)頂點(diǎn)集合對(duì)應(yīng)一組變換矩陣,而變換矩陣作用在頂點(diǎn)上時(shí)是對(duì)集合中所有的頂點(diǎn)做同樣的變換,從而相應(yīng)的模型部位以一個(gè)整體在空間中做出相應(yīng)的變化。眾多三角平面的拼接,圍成一個(gè)三維、立體的模型外殼,通過為三角面配置不同的材質(zhì),為頂點(diǎn)確定不同的紋理,得到一個(gè)具有特色的仿真模型。在實(shí)現(xiàn)效果上,如果可以做到讓模型做出人們所期望的動(dòng)作,那么運(yùn)動(dòng)便可以是一系列動(dòng)作的按時(shí)序的組合形成的一套動(dòng)畫,因此如果達(dá)到可以任意控制模型動(dòng)作的目的,那么運(yùn)動(dòng)仿真的初步實(shí)現(xiàn)問題就基本突破了。值得 特別說明的是,由于對(duì)模型的形態(tài)編輯與控制時(shí)基于對(duì)作用在模型上的變換矩陣的編輯實(shí)現(xiàn)的,故而所建立的模型必須按照嚴(yán)格的設(shè)計(jì)規(guī)則,尤其是各個(gè)部位間的鏈接關(guān)系和層次關(guān)系,它們將直接關(guān)系到模型是否能得到正常、合理的控制。 三維人體模型的獲取 微軟公司( Microsoft169。 信息科學(xué)與技術(shù)學(xué)院 電子工程與信息科學(xué)系 ( EEIS) 5 DirectShow 為 Windows 平臺(tái)上處理各種格式的媒體文件的回放、音視頻采集等高性能要求的多媒體應(yīng)用,提供了完整的解決方案。 DirectPlay 主要提供多人網(wǎng)絡(luò)游戲的通信、組織功能。 Direct3D) 、DirectSound、 DirectPlay、 Direct3D、 DirectInput、 DirectSetup、 AutoPlay 等。 圖 1 Direct3D 與 其他系統(tǒng)組件之間的關(guān)系示意圖 從功能角度, DirectX 是一種圖形應(yīng)用程序接口( API),簡單的說它是一個(gè)輔助軟件,一個(gè)提高系統(tǒng)性能的加速軟件。當(dāng)然,目前在使用這兩類函數(shù)庫進(jìn)行模型編輯的運(yùn)用中,大多為直接替換整個(gè)作用在模型某一部位的變換矩陣,而不是對(duì)模型的尺度、角度及方位分別進(jìn)行控制。微軟公司( Microsoft169。尤其在娛樂多媒體領(lǐng)域,從由來已久的 3D 游戲到氣勢(shì)恢宏倍受青睞的 3D 電影《阿凡達(dá)》( AFATAR),再到由此掀起的當(dāng)今的 3D 熱潮,無不展現(xiàn)出 3D 的巨大魅力。 作者簽名: 日期: 年 月 日 導(dǎo)師簽名: 日期: 年 月 日 指導(dǎo)教師評(píng)閱書 指導(dǎo)教師評(píng)價(jià): 一、撰寫(設(shè)計(jì))過程 學(xué)生在論文(設(shè)計(jì))過程中的治學(xué)態(tài)度、工作精神 □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格 學(xué)生掌握專業(yè)知識(shí)、技能的扎實(shí)程度 □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格 學(xué)生綜合運(yùn)用所學(xué)知識(shí)和專業(yè)技能分析和解決問題的能力 □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格 研究方法的科學(xué)性;技術(shù)線路的可行性;設(shè)計(jì)方案的合理性 □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格 完成畢業(yè)論文(設(shè)計(jì))期間的出勤情況 □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格 二、論文(設(shè)計(jì))質(zhì)量 論文(設(shè)計(jì))的整體結(jié)構(gòu)是否符合撰寫規(guī)范? □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格 是否完成指定的論文(設(shè)計(jì))任務(wù)(包括裝訂及附件)? □ 優(yōu) □ 良 □ 中 □ 及格 □ 不及格
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1