Saturday, October 11, 2008

Email from Crytek!

昨天檢查email時發現一封來自Cevat Yerli的信, 這名字聽來有些熟悉, 於是打開一看, 原來他是Crytek(做Crysis的那家遊戲公司)的CEO, 難怪覺得這名字很熟.

在信中他提到他每年年底都會寄信給他所追蹤的talented individuals, 他說他已經注意我的LynxEngine一陣子了, 覺得做的還不錯, 正好他們又要擴充研發人員, 所以問我有沒有興趣. Gee! 我知道德國有一些人會上我的網頁, 但沒想到居然其中居然有Crytek的人! 這封信給我很大的鼓勵, 表示目前LynxEngine已經有達到我所設定的水準了, 這幾年的努力總算沒有白費.

不過已經好一陣子沒更新網頁了, 雖然沒有新的rendering畫面, 不過這幾天還是將進度post上去一下好了, 免得大家以為LynxEngine的計畫已經胎死腹中了 :)

Thursday, October 09, 2008

Pictures of Poor Cola

好久沒看到可樂啦, 昨天收到SuperDog寄來的可樂近照, 可樂看起來蠻不錯的, 因此比較放心了. 但是看了照片後卻開始missing her了, 看來我還是趁12月回美國開會回去多倫多一趟好了 :(

LynxEngine Update : Deferred Shading Support

之前一段時間因為太忙了, 花在引擎上的時間比較少, 所以也就很少post新的進度. 回台灣後, 則是因為寫引擎太忙了, 所以也沒時間post新的進度 :P

回來這一個月其實也都是都花在修正引擎的一些設計上, 算是refactoring, 所以並沒增加新的功能, 但是引擎的架構更強固也更有彈性了. 有鑑於現在遊戲對光源數量的要求越來越高, 前天晚上則開始將deferred shading部分加入引擎的lighting 系統中, 昨天晚上完成了大致的架構, 基本上會用到三張跟back buffer size相同的GBuffer, 所以當解析度高時記憶體用量會是個問題.

同樣用之前的場景做了測試, 即便在只有一盞環境燈跟一盞聚光等的情況下, 在HD4870上仍有20%的效率提升, 所以光源數多的話效能會提升更多, 而最佳化後也還可以有更好的效能提升(目前還沒有做unlighted pixel的rejection). 看來我應該會朝這方向移動了, 尤其DX10之後很多deferred shading原本的缺點都可以解決了.

Wednesday, October 08, 2008

LynxEngine Performance on HD4870, HD4870X2 and GTX260

因為最近在修改UnrealEngine 3的code所以需要跟NV的卡做一些效能比較, 於是今天跑去光華商場買了一張MSI的GTX260, 8900台幣, 896M記憶體. 晚上想說從沒在NV的卡上跑過我的引擎, 正好可以來試試, 結果大出我意料. 測試場景很簡單只有一個角色一個正方形的房間以及一盞環境光跟一盞聚光燈, 用到的效果則有SSAO, DOF, Blooming, PCF4x4 Shadow Map, Motion Blur. 結果在HD4870X2可以跑到250fps, HD4870可以跑到166fps, 而在GTX260卻只有90fps!

基本上我還沒有開始對ATI的卡做最佳化, 而是都使用最相容的方式來做, 我一直認為HD4870只比GTX260快一些而已, 這個數據頗令我意外的, 計算起來HD4870效能是GTX260的1.84倍! 這結果也在一次印證我過去對遊戲開發者所說的, 當遊戲引擎使用general的最佳化技巧時, 通常在ATI的卡上效能都比在NV上好.