Time of Update: 2018-12-04
類cAnimMesh是最關鍵的一個類,所有與骨骼動畫相關的具體實現細節都封裝在該類中,該類還定義了類cAllocateHierarchy的一個對象m_alloc_hierarchy,該對象完成從檔案中載入動畫網格模型的骨骼階層、動畫資料以及其他用於繪製模型的幾何資料。 類cAnimMesh的定義如下所示:class cAnimMesh{private:cAllocateHierarchy*m_alloc_hierarchy;IDirect3DDevice9*m_device;D3DXFRAME*
Time of Update: 2018-12-04
多動畫集在D3D下的渲染對於只包含一個主要畫面格.x檔案的渲染,無論是圖書還是論壇都有很多介紹,可是對於包含多個動畫的.x檔案的渲染,卻很少提及,可是在實際的遊戲情境中,單楨動畫的應用幾乎很少,人物不但要能表現站立、行走的簡單動作,還要表現施放魔法等複雜的動作。那麼怎麼才能渲染這些動作呢?SDK裡面的MultiAnimation
Time of Update: 2018-12-04
從網上下了個模型,匯出成.X檔案放程式裡後發現有些問題。雖然模型動作很多,但是所有動作都放到同一個動畫集裡了。這樣導致的後果就是這個模型只能看不能用。。。 在經過對.X檔案格式分析後,發現可以修改下.X檔案來把所有動作分離出來,放到不同動畫集(AnimationSet)裡去。理論上完全可以。於是便開始手動修改,像老黃牛般的改了一個多小時,等到頭暈眼花的時侯,才發現手動修改不現實。一個多小時才完成不到十分之一的工作。。。
Time of Update: 2018-12-04
DAO物件模型組成 DAO物件模型,也就是Data Access Object,它是一個針對Jet引擎的訪問操作。所以對於Access資料庫來說,使用DAO無疑是最佳首選。而MFC DAO是微軟提供的用於訪問Microsoft Jet資料庫檔案(*.mdb)的強有力的資料庫開發工具,它通過對DAO的封裝,向程式員提供了各種輔助類,從而大大降低了DAO對象使用複雜度。DAO模型通過多個DAO對象構成一個體繫結構,在這個結構裡,各個DAO對象協同工作。對應MFC
Time of Update: 2018-12-04
國際上衡量引擎的主要指標和參數(都是最基本的核心技術): Direct Illumination(直接光照) Indirect Illumination(印射光) Global Illumination(全域光照) Local Illumination(局部印射) Photonmap(光子貼圖) Raytracing(光線追蹤) Radiosity(光能傳遞) bouncing light(光子反彈) sub-surface scatterring(3S材質) TRANSLUCENCY
Time of Update: 2018-12-04
Free Heap block XXXXXX modified at XXXXXX after it was freed 相信不少朋友碰到過以上問題,而往往苦於無法定位到錯誤的代碼位置,其實出現該問題一般就是使用了野指標導致的. 那麼何為野指標呢? 野指標與NULL指標不同.所謂野指標是指指標所指的記憶體已經回收,而繼續使用該指標,導致未定義行為. 例如: char *p = new char[512];*p = '/0';delete[] p;*p = 'a'; // 此處出現了野指標
Time of Update: 2018-12-04
丟失的裝置一個Microsoft?
Time of Update: 2018-12-04
最近研究彙編比較多,看自己C++代碼的彙編源碼簡直是一種折磨,這迫使我將所有數學庫重新用彙編指令實現,當然,包括對CPUID的檢測和使用擴充指令集。測試結果是與D3DX9的數學函數比較的,效果另人滿意,除了矩陣相乘的演算法總是與D3DXMatrixMultiply函數有7%的差距外,其餘都是持平甚至遙遙領先(也許是我瘋了,大家自己測一下)。 由於本人技術淺薄,測試效率的方法又比較簡陋,所以還請高手指正!第一步是介紹我的Vector類,以下是聲明:struct
Time of Update: 2018-12-04
最近一直接觸的都是C#的東東,好久沒寫C++代碼了,怕手生忘記了,打算寫寫C++的代碼。寫什麼好呢?想來想去,以前的工作學過接觸了些OpenGL,那我就學習一下D3D吧。原以為D3D的中文入門資料會很多的,結果找了半天也沒找到合適的。哎,隨便將就著學吧。 既然是來興趣學一下,我可不想去下個超大的DirectX安裝包,所以首先,當然得找到lib庫和標頭檔啦,我在GameRes遊戲開發資源網上找到了,只有3.2M,呵呵,夠小吧。地址如下: DirectX9.0C SDK library
Time of Update: 2018-12-04
同步傳輸與非同步傳輸的區別
Time of Update: 2018-12-04
//--- Hello, World! for CppUnit#include <iostream>#include <cppunit/TestRunner.h>#include <cppunit/TestResult.h>#include <cppunit/TestResultCollector.h>#include <cppunit/extensions/HelperMacros.h>#include
Time of Update: 2018-12-04
最近用了下PowerCmd,雖然有很多細節沒做好,但是總的來說還是挺好用的,常用很多命令列視窗的話,可以把這個放入常用工具箱裡了,可惜就是只能試用一段時間,到期要註冊。 我用的版本是2.1 build 120 先查殼,居然是.net寫的,沒加殼,心裡一喜,這可少好多工作量了 odbg載入,運行,輸入任意註冊資訊,彈出"Not a valid serial number", 沒問題,這麼一看,正是新手練習的好材料啊 尋找字串參考,下斷點 慢慢調試吧,最後發現005E0D2E /75 2
Time of Update: 2018-12-04
測試對象序列化容易被遺漏的重要測試文檔選項<trvalign="top"><td width="8"><img alt="" height="1" width="8"src="//www.ibm.com/i/c.gif"/></td><td width="16"><img alt="" width="16"height="16" src="//www.ibm.com/i/c.gif"/></td><td
Time of Update: 2018-12-04
嘛,一般你會看到這樣的資訊:程式破解員:分析遊戲的加密方式,能寫基本的檔案解包工具和打包工具,能對加了密的遊戲文本進行抽取,還原並進行編輯。懂得彙編和反組譯碼以及一門熟悉的程式設計語言,懂得一些常見的壓縮演算法(如:LZ777,ZLIB等)日本的遊戲不管是PC還是掌機都會因為著作權的問題將除去遊戲架構以外的資源檔單獨歸檔加密儲存我們討論 最常見的 最簡單日本遊戲常用的壓縮和密碼編譯演算法這裡不是密碼學/壓縮課程,如果需要瞭解更多
Time of Update: 2018-12-04
http://222.77.75.70:1001/video_music/dahanghai.mp3大航海作詞:李丹丹 楊啟舫作曲:張千一演唱:譚晶夢多深 志多堅 幾人懂天多高 路多遠 誰能猜把命運當做舞台演繹壯烈讓時空化做筆墨記載豪邁道無形 愛無涯 義無邊讓萬國 和友邦 共澎湃把風浪踏平任由我闖蕩讓天地鋪教畫卷繪精彩給我一艘船 給我一張帆東方英雄豪情傳天外給我一片海 給我一陣風世界看我中華大航海
Time of Update: 2018-12-04
我們知道程式界有一個著名公式是:程式=資料+演算法。這充分說明了資料在程式設計中的重要地位。而當資料規模達到一定程度的時候,為了達到資料的快速儲存和快速存取,就必須使用資料庫(Database)來進行資料的儲存。因為資料庫是按照資料結構來組織、儲存和管理資料的倉庫,利用資料庫進行儲存具有儲存訪問快速、管理方便、合理組織、減少資料的冗餘度等優勢。 資料庫有很多種類型,從最簡單的儲存有各種資料的表格到能夠進行海量資料存放區的大型資料庫系統都在各個方面得到了廣泛的應用。資料庫模型有階層模型、網狀結構
Time of Update: 2018-12-04
一個好的軟體日誌系統的重要性: A.在軟體開發過程中,為了方便調試,我們經常要輸出某些日誌, B.在單線程的時候,還可以直接看Output視窗,但是多線程就要經常寫入日誌了。 C.如果沒有日誌系統,在程式發布之後,出現問題了,就很難定位錯誤所在。 ...... 所以,在一個好的軟體,一個好的程式,都會有自己的日誌系統。日誌可以是寫入Txt檔案,可以是寫入Event
Time of Update: 2018-12-04
先行編譯標頭檔今天在改一個很大的程式,慢慢看,慢慢改。突然發現一個.c檔案,裡面什麼也沒有,就幾個標頭檔,我一看,我靠,這不是把簡單的問題搞複雜了嗎,隨手刪掉那個c檔案。結果不能編譯了,我靠:fatal error C1083: Cannot open precompiled header file: /'Debug/v13_3.pch/':No such file or directory怎麼rebuild all都不行。上網查了一下,才搞懂了:----------------總結------
Time of Update: 2018-12-04
MFC的CString是字串管理類,其為了實現高效率的緩衝管理,使用了引用記數及CopyBeforeWrite技術。這在一定程度上加大了其神秘感和理解難度。好在他的代碼是公開的,所以可以給我們研究它的內部實現提供條件。下面就來看看到底是如何?的。由於不同版本的MSVC其CString實現有些許差別,下面是針對VS2003來說明的。 由於它的基礎類使用了模板技術,可以實現記憶體管理的定製,我們只研究MFC的預設記憶體管理方式。即CAfxStringMgr類提供的方式。MFC在strcore.cpp
Time of Update: 2018-12-04
我們的產品是嵌入式的東東,用的是WinCE5.0,今天同事叫我幫忙,下了一份代碼,我們做了一個指令碼,平常寫代碼,編譯,連結都用這個指令碼完成,完全沒用Platform Builder 這個IDE,IDE只是用來Debug用的。 結果怎麼編譯都出錯,沒辦法,是在Sysgen階段出錯的,但是到底是什麼原因出錯的就怎麼也差不出來。最後突發奇想,wince的指令碼預設把echo 關閉了,我把cmd命令列下的echo開啟後,再嘗試,呵呵,Sysgen過程中所有的詳細資料都有了。