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

正文內(nèi)容

3d多人在線角色扮演游戲畢業(yè)論文(編輯修改稿)

2025-07-19 12:23 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 /返回紋理存儲(chǔ)格式顏色和cMaterial:通過改變繪制表面的顏色值,就可以改變渲染對(duì)象的外觀。cMaterial部分代碼如下: BOOL SetDiffuseColor(char Red, char Green, char Blue)。 BOOL GetDiffuseColor(char *Red, char *Green, char *Blue)。 BOOL SetAmbientColor(char Red, char Green, char Blue)。 BOOL GetAmbientColor(char *Red, char *Green, char *Blue)。 BOOL SetSpecularColor(char Red, char Green, char Blue)。 BOOL GetSpecularColor(char *Red, char *Green, char *Blue)。 BOOL SetEmissiveColor(char Red, char Green, char Blue)。 BOOL GetEmissiveColor(char *Red, char *Green, char *Blue)。使用cLight:cLight處理光照光照同材質(zhì)一樣簡(jiǎn)單。使用光照可以通過很多方式實(shí)現(xiàn)很多效果。cLight部分代碼如下:/ /設(shè)置一個(gè)默認(rèn)的光點(diǎn) ZeroMemory(amp。m_Light, sizeof(D3DLIGHT9))。 SetType(D3DLIGHT_POINT)。 Move(, , )。 SetDiffuseColor(255,255,255)。 SetAmbientColor(255,255,255)。 SetRange()。 SetAttenuation0()。使用cFont:cFont處理文本和字體雖然ID3DXFont對(duì)象處理起來比較容易,但是設(shè)置字體卻讓人痛苦不堪。不要緊,使用cFont類就能快速并容易地得到字體。cFont部分代碼如下:BOOL cFont::Create(cGraphics *Graphics, char *Name, long Size, BOOL Bold, BOOL Italic, BOOL Underline, BOOL Strikeout){LOGFONT lf。if(Graphics == NULL || Name == NULL)return FALSE。 if(GraphicsGetDeviceCOM() == NULL)return FALSE。 // 清除字體結(jié)構(gòu) ZeroMemory(amp。lf, sizeof(LOGFONT))。 // 設(shè)置字體名稱和高度 strcpy(, Name)。 = Size。 = (Bold == TRUE) ? 700 : 0。 = Italic。 = Underline。 = Strikeout。 // 創(chuàng)建的字體對(duì)象 if(FAILED(D3DXCreateFontIndirect(GraphicsGetDeviceCOM(),amp。lf, amp。m_Font)))return FALSE。 return TRUE。}定點(diǎn)和cVertexBuffer:頂點(diǎn)是個(gè)麻煩的東西,有時(shí)對(duì)它束手無策。通過提供一種快速創(chuàng)建、設(shè)置以及渲染頂點(diǎn)集合的方法,cVertexBuffer類能夠減少次煩惱。cVertexBuffer部分代碼如下:世界變換和cWorldPosition:雖然處理世界變換矩陣并不難,但使用一個(gè)類來處理諸如世界坐標(biāo)、旋轉(zhuǎn)值以及縮放因子等所有細(xì),就更簡(jiǎn)單明了。cWorldPosition部分代碼如下://移動(dòng)世界矩陣BOOL cWorldPosition::MoveRel(float XAdd, float YAdd, float ZAdd){return Move(m_XPos + XAdd, m_YPos + YAdd, m_ZPos + ZAdd)。}//旋轉(zhuǎn)世界矩陣BOOL cWorldPosition::Rotate(float XRot, float YRot, float ZRot){m_XRotation = XRot。m_YRotation = YRot。m_ZRotation = ZRot。 D3DXMatrixRotationYawPitchRoll(amp。m_matRotation, m_YRotation, m_XRotation, m_ZRotation)。return TRUE。}觀察變換和cCamera:cCamera類和cWorldPosition類非常類似,但cCam類處理的是觀察變換矩陣。cCamera部分代碼如下:BOOL cCamera::MoveRel(float XAdd, float YAdd, float ZAdd){ return Move(m_XPos + XAdd, m_YPos + YAdd, m_ZPos + ZAdd)。}//移動(dòng)攝像機(jī)方法BOOL cCamera::Rotate(float XRot, float YRot, float ZRot){ D3DXMATRIX matXRotation, matYRotation, matZRotation。 m_XRot = XRot。 m_YRot = YRot。 m_ZRot = ZRot。 D3DXMatrixRotationX(amp。matXRotation, m_XRot)。 D3DXMatrixRotationY(amp。matYRotation, m_YRot)。 D3DXMatrixRotationZ(amp。matZRotation, m_ZRot)。 m_matRotation = matZRotation。 D3DXMatrixMultiply(amp。m_matRotation, amp。m_matRotation, amp。matYRotation)。 D3DXMatrixMultiply(amp。m_matRotation, amp。m_matRotation, amp。matXRotation)。 return TRUE。}//旋轉(zhuǎn)攝像機(jī)方法使用cMesh加載可加載的網(wǎng)絡(luò):處理網(wǎng)格很難。當(dāng)然,這里除了要講述蒙皮網(wǎng)格外,還要講述標(biāo)準(zhǔn)網(wǎng)格。cMesh部分代碼如下:BOOL cMesh::Load(cGraphics *Graphics, char *Filename, char *TexturePath){// 創(chuàng)建的文件對(duì)象 if(FAILED(DirectXFileCreate(amp。pDXFile))) return FALSE。 // 注冊(cè)模板 if(FAILED(pDXFileRegisterTemplates((LPVOID)D3DRM_XTEMPLATES, D3DRM_XTEMPLATE_BYTES))) { pDXFileRelease()。 return FALSE。} // 創(chuàng)建一個(gè)枚舉對(duì)象if(FAILED(pDXFileCreateEnumObject((LPVOID)FilenameDXFILELOAD_FROMFILE, amp。pDXEnum))) {pDXFileRelease()。return FALSE。}}使用cObject繪制對(duì)象:要繪制網(wǎng)格,必須在網(wǎng)格定義和顯示器之間搭設(shè)一道橋梁。為什么不使用cMesh對(duì)象處理渲染呢?原因在于內(nèi)存使用(memory usage)。如果要反復(fù)使用相同的網(wǎng)絡(luò),該怎么辦?cObject部分代碼如下:BOOL EnableBillboard(BOOL Enable = TRUE)。BOOL AttachToObject(cObject *Object, char *FrameName = NULL)。BOOL Move(float XPos, float YPos, float ZPos)。BOOL MoveRel(float XAdd, float YAdd, float ZAdd)。BOOL Rotate(float XRot, float YRot, float ZRot)。BOOL RotateRel(float XAdd, float YAdd, float ZAdd)。BOOL Scale(float XScale, float YScale, float ZScale)。BOOL ScaleRel(float XAdd, float YAdd, float ZAdd)。使用cAnimation移動(dòng)網(wǎng)格:cAnimation類是網(wǎng)格動(dòng)畫組件,也是圖形內(nèi)核的最后一個(gè)類。使用cAnimation,把它們同cObject結(jié)合起來創(chuàng)建網(wǎng)格動(dòng)畫。cAnimation部分代碼如下://添加網(wǎng)格對(duì)象BOOL Load(char *Filename, cMesh *MapMesh = NULL)。BOOL Free()。BOOL MapToMesh(cMesh *Mesh)。//設(shè)置動(dòng)畫BOOL SetLoop(BOOL ToLoop, char *N
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1