Time of Update: 2018-12-05
大體畫了個結構圖, UML不知道用得對不對, 反正我自己看懂就行了......VisXXX可以看做是情境可見度裁剪的一部分, 渲染模組都是跟這個打交道的, 通過它可以把各個結點(node)排序以達到最佳化渲染目的.Model是一個可以繪製的對象, 由一些樹形結構的ModelNode組成. Model可以通過ModelServer建立, 這樣能保持同一個Model只會載入記憶體一次. 要繪製Model的話, 一個ModelInstance是必不可少的.
Time of Update: 2018-12-05
DirectX Runtime核心組件有Direct3D, DirectSound和DirectInput, 可以看作是作業系統的一部分. DirectX9.0c的核心組件自從DirectX SDK Summer 2004後就再也沒有變過了, 除了Vista上的DX10. 而DirectX9.0c已經包含在WinXP SP2中了, 我想現在應該還沒有人在用SP1或2000而不裝DX9.0c的吧?(除非不玩遊戲). 換句話說, 我們可以假設核心組件在使用者的機器都已經存在了,
Time of Update: 2018-12-05
Game Team 國外AI和Audio程式員所佔的角色還是很重要的, 而國內AI都是伺服器在做, Audio基本上沒有人下多少工夫美術的話TA越來越重要, 3D遊戲開發不缺少另外, 專案管理也很重要, 程式員沒有那麼多精力去關注這些事情Game Engine引擎的三個特性: 資料驅動, 可複用, 可擴充流派第一人稱 寫實效果, 對於技術要求最高. 真實渲染, 高幀率, 物理類比, 動畫和高智能AI, 多人遊戲支援第三人稱卡通效果, 豐富的動作, 可互動情境格鬥遊戲大量的動作, 打擊判定,
Time of Update: 2018-12-05
基於StormLib, 參考N3的ZipFileSystem實現了一個MpqFileSystem 有一點要注意, 檔案路徑裡不能用'/', 都要用'//' @_@ mpq檔案包裡的檔案是不儲存檔案名稱(或目錄名)的, 也就是說打包後的檔案是無法復原的. 但是在每個檔案包的根目錄下都有一個(listfile)檔案, 裡麵包含了檔案包中的檔案名稱列表(為什麼listfile檔案最後有一段Null 字元串呢???)沒有去實現寫入的功能, 雖然StormLib可以添加檔案,
Time of Update: 2018-12-05
圖形子系統是渲染層中圖形相關子系統的最高層. 它基本上是Mangalore圖形子系統的下一個版本, 但是現在整合進了Nebula, 並且與低層的渲染代碼結合得更加緊密. 最基本的思想是實現一個完全自治的圖形”世界”, 它包含模型, 燈光, 還有攝像機實體, 而且只需要與外部世界進行最少的通訊. 圖形世界的最主要操作是加入和刪除實體, 還有更新它們的位置. 因為Mangalore的圖形子系統跟Nebula2的完全分界線從Nebula3中移除了, 很多設想都可以用更少的代碼和互動來實現.
Time of Update: 2018-12-05
有用N3 + CLR做介面的衝動 建立一個CLR WinForm工程, 直接引入N3的標頭檔和庫進行編譯........ 編譯不過, 找了半天才發現原因暈死, .Net和N3都有個System命名空間, 沒法改Microsoft的東西, 只好把N3的System改成了NSystem 然後就是連結不過 一是__fastcall不被CLR支援, 改成__cdecl (/Gd)重遍 二是Multi-threaded Debug (/MTd)跟/clr衝突, 改成Multi-threaded
Time of Update: 2018-12-05
拼接後的紋理:正常的草地(不進行WRAP定址):WRAP = 5時的情況:MinFilter = Linear時的情況:shader實現:sampler2D atlasTexture;float4 texRect; //(left, top, width, height) of uvfloat2 invSize; //(1/width, 1/height)float4 uvRange; //(left, top, right, bottom) of uvfloat4 ps_main(
Time of Update: 2018-12-05
XACT本身是不帶3D音效的, 相關的功能是由X3DAudio來完成. 剛剛封裝完畢的時候, 沒有注意到哪裡有調節距離衰減的參數參考了一下SDK的文檔, 發現X3DAUDIO_EMITTER的pVolumeCurve, CurveDistanceScaler這兩個參數是用來做衰減用的.不過SDK的文檔寫錯了(March2008, 最新的沒問題), 搞得我鬱悶了半天.其實pVolumeCurve為NULL時CurveDistanceScaler仍然有效, 只不過是你需要在XACT的工具裡進行設定:
Time of Update: 2018-12-05
Tom has the final(?) say on the matter.... Or is it? Of course its not Rick has added a response including some perf and memory numbers.I figured I should put a quick summary list together that explains some of the history behind this.Tom started
Time of Update: 2018-12-05
XACT工程Wave BanksSound BanksGlobal Settings Wave Banks一個wave bank是包含多個wave檔案的集合的檔案, 副檔名.xwb比如介面音效一個檔案, 技能音效一個檔案Wave Bank模式In-Memory在記憶體中, 適用於小音頻資源. 如介面音效Streaming通過一個記憶體緩衝讀取, 適用於大音頻資源. 如背景音樂Waves音頻資料檔案. XACT支援以下幾種音頻格式:Windows audio waves(WAV)Xbox 360'
Time of Update: 2018-12-05
下載 Native Client SDKhttps://developers.google.com/native-client/sdk/download需要設定兩個環境變數, Python2.7.3的安裝路徑加到PATH裡, NACL_SDK_ROOT設定為對應版本目錄CHROME_PATH這個是後面VS調試用的, 如果不用VS開發, 可以不設定C++
Time of Update: 2018-12-05
(圖片來源:www.cnblogs.com)原文出處:OpenGL 3 & DirectX 11: The War Is Over現今在 DirectX 與 OpenGL 皆已相當普及的年代裡,我們似乎也逐漸淡忘了兩者從前的那段江湖恩怨。在著名硬體網站 Tom’s Hardware 的這篇專欄文章裡,作者帶領我們重新回顧這場「繪圖 API 戰爭」中的起伏轉折,以及 OpenGL 3 與 DirectX 11 的未來展望,是篇值得仔細閱讀的好文章。「DirectX
Time of Update: 2018-12-05
一些限制相對於Win32來說, NaCl相當於另一個平台, 一些作業系統相關的API需要移植. 除此之外, 參考Technical Overview, 還有一些其它的限制:不支援硬體異常不支援建立進程不支援傳統的TCP/UDP sockets (有其它方式去實現, RakNet已經有個預覽版本)不支援查詢可用記憶體內聯彙編必須相容 Native Client 驗證器(使用SDK中的 ncval 工具檢查) (一些使用彙編最佳化的代碼(如數學庫)可能不能使用)Pepper API
Time of Update: 2018-12-05
參考wowmapview寫了一個小地圖查看的控制項, 可以載入*.wdl檔案解析出一張類似於"衛星圖"的東西WDL檔案儲存的是WOW地圖的低精度高度資料, 冒似用來做遠處的LOD的每個地圖最大是64*64個tile, 而一個tile它儲存了17*17 + 16*16個16位的高度資料. 如果產生一張512*512大小的小地圖的話, 每個tile就只有8*8個像素因此, 我們只取17*17中的偶數點 下面這張是Kalimdor的產生效果#pragma once using namespace
Time of Update: 2018-12-05
NaCl的3D渲染API使用的GLES2.0, 這也很好理解, 因為這已經是公認的跨平台標準了. 手機, 平板, 網頁, PC都可以使用.就算在Windows上, 也有一些基於DX9的GLES2.0實現, 比如ANGLE. 有時候我真在想, 像M$這種升級個作業系統版本號碼就淘汰一種API的做法, 還不如全都使用標準庫, 這樣也節省了跨平台移植的成本~所以什麼DX10/DX11, 還是省省吧其實從DX9到GLES(本文提到的都是指2.0版本), 大部分只是API換了種寫法, 難度不大.
Time of Update: 2018-12-05
Tutorial by Siretu讓大多數接觸星際2編輯器的人歇菜的原因, 就是這個資料編輯器(Data Editor). 不管你是個新手, 還是使用魔獸3的編輯器做過一些東西, 當你懷著滿腔的熱情準備做一張星際2的地圖時, 資料編輯器就像擋在前面的一座大山, 讓人恨不得撞死算了.這種情況同樣發生在我身上. 我自信用魔獸3的對象編輯器用得爐火純青了, 但是當我開啟資料編輯器時, 連怎麼做個Unit都不知道.現在, 我總算能湊合著用資料編輯器了, 但也不是太好,
Time of Update: 2018-12-05
DLL 很多公司會採用完全的靜態連結, 這樣比較省事, 也比較安全靜態連結通常比較慢(編譯時間影響開發效率), 而且EXE也比較大DLL的話如果不使用interface封裝會暴露很多類定義如果使用C++/CLI的話不能使用靜態連結庫Debug Release能重現而Debug不能重現的BUG通常是變數沒初始化DMP檔案可以方便地重現崩潰時的堆棧調用Coding代碼規範是一個項目/引擎必須制定的東西,
Time of Update: 2018-12-05
: http://213.191.63.156/n3_sdks/之前所有更新都會在floh的blog上有一篇changelog, 這回一點也沒, 連個更新的訊息都沒.看了下變化挺大的, 不知道什麼時候才能穩定下來, 並且社區化呢? 我覺得, N3定位還是一個SDK, 而不是遊戲製作工具. 說到底, 就是一個程式底層. 不過對於C++這種標準庫嚴重欠缺的語言, 有個好的底層是一件多麼舒心的事. 工作了這麼長時間, 我還是沒有放棄.Net, 雖然沒有真正在工作中用到, 但是一直想引入進來.
Time of Update: 2018-12-05
上次已經繪製過基本圖元了, 這次只不過要貼張圖而已.....本來我想用Graphics的Model渲染流程來做, 不過這一層太進階了, 都是什麼情境管理資源地圖之類的做低級的事情, 就要用低級的API嘛圖形渲染的底層是CoreGraphics, 這個層我不打算再單獨寫(翻譯)一篇了, 因為都是Direct3D概念的一些抽象. 也就是說D3D用熟了基本上一看就明白(用GL的我就不清楚啦, 嘿嘿, N3的作者都放棄用GL去實現@_@). 還記得D3D Tutorial中的Textured例子不?
Time of Update: 2018-12-05
文章來源 www.17173.com 暴雪創辦人兼總裁Michael Morhaime在GDC Austin上發表了演講,談論他從《魔獸世界》和其他暴雪遊戲中總結出來的十條經驗。1·遊戲性第一。 如果你瞭解暴雪,那你知道他們在遊戲平衡性上力盡完美,或者說比任何人做的都好。暴雪哲學好懂但難掌握。他們希望你入門容易而維持長時間的興趣,用同一款產品同時吸引休閑和核心玩家。2·打造並保護品牌。 暴雪的目標是要消費者進入商店,看到暴雪的商標就知道那是好東西。但個人認為暴雪這方面做的不好,為何?