當前位置:編程學習大全網 - 源碼下載 - Qqsdk源代碼

Qqsdk源代碼

天龍八部的源代碼很可能是天龍八部代碼流出後改寫的,因為在代碼中可以找到壹些證據。整個客戶端分為:編輯器和客戶端,采用OGRE+cegui+自編簡單物理碰撞檢測+FMOD+自編網絡庫。

服務器端代碼目前並沒有密切關註。

客戶端的總體描述如下:

UI系統CEGUI UI基本系統

CEGUI渲染器

Expat XML parser依賴於CEGUI,所以估計寫手不愛用。

FreeType2跨平臺,開源的字體渲染器用來畫中文。

編寫luaPlus腳本

3D顯示引擎Ogre是壹款開源高效的渲染引擎。最新的食人魔是1.7.2。

用於沖突檢測的操作碼是開源的,占用的內存較少。可以考慮bullet,ODE或者其他(壹般根據實際需要選擇)。

天龍的碰撞檢測似乎只是簡單的碰撞盒檢測。

TinyXML的解析工具遊戲中使用的XML解析器,目前用RapidXML其實可以更小。

音樂& amp音效FMOD SDK就夠了,不過OPENAL也是不錯的選擇。

WX系統

WXClient動作運營管理包括聊天、物品、生活技能等等,其實都是針對圖標運營的。

光標鼠標指針管理(還附帶了許多命令)

數據庫客戶端使用內存數據庫實現WXEngine中DB的定義,包括查找、獲取、打開文件的功能,TLBB_DBC。可以確定的是,雖然叫武俠,但是留下了天龍的影子。

數據池統壹管理遊戲中的所有數據,包括UI、TeamOrGroup等。裏面有壹個CModelShowInUI類(奇怪的是,這個類不應該放在這裏吧?)

事件遊戲事件處理程序,分為事件隊列和慢處理事件隊列,值得參考!!!采用註冊事件處理程序的方式,參數非常靈活!

FakeObject用於ui上顯示的對象(這裏作為壹個管理器類)。

Helper用luaPlus導出,並構建壹個幫助系統窗口。

輸入輸入類

接口是整個遊戲的外部接口控制類。所有外部模塊都需要通過這個接口來控制遊戲的數據和控制,作為腳本調用類型。

網絡消息的處理

對象邏輯基類Object與顯示無關,當然是派生出可以顯示的類型!和遊戲中特定對象類型。

程序遊戲流程,登錄,角色選擇,角色創建,等待進場,MMO遊戲主流程,登錄服務器。

資源文件各種鼠標。cur文件。

腳本腳本系統管理器,繼承自引擎的腳本環境,調用腳本。

聲音

源文件tWinMain在這裏2

可變配置參數系統

世界場景區域ZONE,Scene,世界管理器,尋路等功能,壹個ZONE的大小正好是壹個屏幕的大小,Zone構成了場景。

WXCore

碰撞碰撞檢測主要涵蓋了ogre的骨骼模型的處理方法。

特效系統

額外的附加模型類型模型定義

SkeletonMesh(疑似廢棄)Dobject_NT包裝了Ogre::Entity,可以掛在SceneNode上。

使用SkeletonMeshUrl作為存儲Dobject_NT的存儲格式。

LogicModel渲染層與客戶端的結合層,在不調用渲染層代碼的情況下,利用渲染層實現了客戶端對場景中動態對象的需求。

OgreExt對Ogre的擴展和渲染。

後置濾鏡3D圖片效果,後置濾鏡

ResourceSystem Ogre的文件系統,用於整體讀取和加載文件系統。

頭文件& amp& amp源文件可渲染對象層基本可渲染及其子類

地形實現及其管理編輯和優化

WX::對象繼承boost::enable_shared_from_this。

XercescParser在這裏找到了另壹個XML解析庫。

Wx:: acroobj,Wx:: actor object,Wx:: logicmodeobject要仔細閱讀,找出原理。

場景基類,管理,序列化,編輯等方法

wx引擎光標

數據庫

調試用的Debuger?但是沒見過用在什麽地方。是為了劇本嗎?

例外包括Xzip的壓縮目錄...當然,它還包括拋出異常的定義,崩潰報告假對象,gfx,helper,input。

數學、個人資料、腳本、聲音

時間、UI、util和變量函數的虛擬類,當然也有具體的類。等待繼續排序分析2

內核TDKernel管理類註冊和插件信息CEGUISystem和WXRender都繼承自TDNode(以及對應TDNode的TDClass)並通過插件添加到內核(待驗證)。

TDNode設置核心節點類,類似於樹,方便在內核中組織數據。

TDClass節點定義壹個類,並根據類名取所定義的類的名稱。類似於MFC,建立了自己的類鏈。重要的是幾個類定義實現了自動初始化tClass的宏。順便也實現了CreateObject函數。

遊戲動作

數據池

事件2

連接

目標

世界

WXNetPackets戰鬥營地數據結構表,技能和效果數據表記錄結構,數據表通用管理閱讀器有模板數據管理器。

數據庫TLBB_DBC.h定義了服務器客戶機通用的DBC數據庫文件類。

整個遊戲的通用定義,GameStruct。

GameUtil方便函數,CRC校驗,鎖,二進制轉換成字符串DB等等。

隨機函數,類型,腳本命令結構,技能數據管理,玩家狀態2。

重要數據包定義

頭文件& amp& amp源文件基本都是利用Packet在Common\Net中的具體情況來實現Packet->;執行數據包定義的實現

WXRender相機3種相機

WXEngine中基於渲染層對象基類tEntityNode的對象RFObject

RFObj繼承了RFObject對WX::Object使用的包,在WX::Object的數據中放入了自己的指針。

RFObj _ actor、rfobj _ model和rfobj _ static都繼承自rfobj figure、動態模型和靜態模型2。

RFObj_Actor的原設計應該是用了SkeletonMesh.h中的Dobject_NT,但實際上並沒有關聯。WXLogicModel解釋為替換原來的Dobject 2。

頭文件& amp& amp源文件DebugPanel包括調試信息和HitObjectPanel (strike信息?)

RenderSystem集成了環境對象、渲染後過濾管理和核心系統。加載資源有很多技巧。

ResourceProvider系統內部使用Ogre的資源組管理器進行統壹管理判斷。ResourceLoadListener用於分析腳本時查找詳細錯誤,它是scriptparsinglistener:public orge::ResourceLoadListener真的很強大。

RFFakeObjectManager是UI顯示模型的呈現層的管理器。

TerrainGrid地形網格可以渲染物體。

WXObj_ProjTex WXObj投影紋理,包括選擇環、陰影點和足跡。

  • 上一篇:文件型病毒的查殺方法
  • 下一篇:裝修1平米多少錢 各個檔次裝修費用攻略
  • copyright 2024編程學習大全網