2009年1月31日 星期六

一年之計在於春

春節9天假期即將結束,馬上又要上班了。

上班第一件事情不是處理工作事情,而是準備春酒跳舞。

因為我是舞蹈負責人兼音樂編輯者XD。

咳~回到主題,

今年的目標呀....除了工作上的backlog之外,

再來就是針對自己的能力有所提升,這樣才不會被淘汰掉。

所以還是一直想提升英文和日文能力,在閱讀文章方面是沒什麼問題,

只是在說的能力方面還是有問題(學語言最難的在於「說」)。

再來就是Direct3d 10了,為了要迎接Direct3d 11的來臨,

當然要好好接觸DX 10囉~

春節這幾天一直在看DX 10,發現到有些地方不太一樣,

光是拿掉fix pipeline這件事情,倒是滿不一樣的。

不知道台灣和大陸有多少間遊戲公司是以HLSL為主要架構的render engine,

因為fix pipeline已經被拿掉了,所以想跨到DX10必須要以此為主。

其他部分本人還在看,也還在等兩本原文書(不用錢,公司買低)。

等到摸熟DX10之後,想實作一下一些DirectX10所特有的範例,

在boost上,也希望能多多去閱讀。雖然在公司只有我在用Orz,

不過它對我的幫助滿大的,給我們工程師相當大的想像空間。

最後好好跟閃光培養感情XD。

跟她交往沒多久,所以今年請多多包涵呀~

HLSL的Text Editor

如果想在visual studio之下方便撰寫shader code的話,

除了keyword可以自行定義顏色之外,

還有其他好用的功能:自動跳出keyword(像C#)。

請到這網站下載: InteliShade

如果想要衍生出其他副檔名的話(*.fx 或*.hlsl ....等),

請到他的論壇:InteliShade forums

2009年1月22日 星期四

整合real-time shadow

最近render engine工作,是要把real-time shadow整合到

script render pipeline,也就是利用script去描述出來。

我們是採shadowmap的技術,不過詳細作法會有不一點,

有興趣者,可以去參考此資料:Parallel Split Shadow Map

將它script化的過程是沒什麼很大的困難點,

只是要多加一些機制,讓往後出現的需求更加的有彈性,

在real-time shadow的技術,我們大致上是不會更加的去鑽研。

最近也買了vista正版(隨機版),花了4千2 ....。

也體會到人人所講的不穩定。我玩crysis時,會常常當機,

在XP相當穩定,後來今早升級到SP1,結果不能上網...。

唉~下午就請個特休去把這問題搞好,不然我無心上班。

2009年1月14日 星期三

這幾天發生的事情...

這幾天跟因課長理念不同,而產生衝突。

也看清台灣的研發極限(賺最多錢的公司)。

課長的名句:只有好的產品才會賣錢,沒有好的技術會賣錢。

我不太百分百認同此句,沒有技術的支援,怎會有好產品呢?

不要說晶圓技術,造福許多新產品以及開闊新市場,

說說從以前的遊戲到現在,

我唯一所感想的是:此技術是否被市場所接受。

從任天堂到will,還有ps到ps3,技術每年都會提高,

但是市場的接受程度並不一定會跟著提高,也許會被淘汰,

也許只是時機未到。

所以技術提升的價值,來至於開闊未來市場的一個契機。

DVD光碟,從以前不被看好,結果現在呢?都已經再推藍光了。

說了這些,重點在於公司環境不想推高技術,

只想完全專注現有的市場。這對我們engine部門相當大的殺傷力,

我看直接買unreal3還比較快,別開發engine了,一切都以專案為主。

唉~現在只能羨慕韓國的遊戲產業,他們真的很有野心也敢衝,

不過他們背後有強大的財力XD。

我在公司也開始停止技術發展了,一切都配合專案。

其實這樣有好處:我的工作量減少許多XD。

我有很多時間慢慢磨,多餘的時間去看看其他東西,

慢慢給自己一個進修的空間。(好久沒看C++內功心法了)

或許以後會慢慢轉到game play那邊,

其實我滿想作WOW的命令巨集功能。

2009年1月12日 星期一

敗家一下

在公司1多年,今天剛好可以領滿一年的年終,

也領了不少錢,所以想敗一下家XD。

昨晚跟閃光一起買螢幕,結果是選22吋的,總共4990。

現在在家中跟公司一樣使用雙螢幕,

而且都是神卡階級,差別在於公司是ATI的卡,家中是Nvidia。

在過一陣子打算再買vista家用進階版5千左右,

可能還會再買更大的硬碟。

會買vista的原因,在於年底directX 11的問世,

所以會先摸一下directX 10.0和10.1。

先瞭解一下新的技術,然後未來要踏上directX 11時,

會比較順利點。公司部分,要等到專案差不多時候,

我才會有多餘的時間去裝商業版的vista。

到時候後... AGE Engine的Render Engine部分,

再由我再次打造起來,專屬於DirectX 11,

好讓玩家能夠發揮顯示卡的威能。

2009年1月7日 星期三

終於完成了....物件導向

剛放完元旦連續假期之後,整個人進入備戰一樣,開始趕shader物件導向。

今天終於給它趕完並且測試完畢,感覺上....滿順利似的XD

這機制的優點有:

1.有效提昇效率。(shader lod)
2.geometry綁的material相當有彈性。
3.管理顯示卡型號和廠商。
4.有彈性地支援特殊的技術。
5.post-pass和pre-pass更佳有彈性。


我就詳細說一下吧~

第一:

物件比較近的話,就執行比較優質的material;

物件離cmaera愈來愈遠時,

則會慢慢愈來愈劣質(fix material或是shader model 1.0)。

第二:

跟lod不一樣的是...他是一種特化方式。

雖然是特化,不過也還是有lod的表現。

如:開啟shadow,並且跟第一點一樣的特性(lod),

或則當人物碰到某一個物件時,馬上變成透明。

第三:

這點我想是每個遊戲公司很頭痛的事情,

尤其是負責Render Engine的engineerXD。

比如:要管理某張卡某個型號不能跑哪一種material,

或者某張卡某個型號跑此material時,要特別去「特化」。

所以很多遊戲廠商都直接定最低的顯示卡型號,

然後某某張卡不能跑此遊戲。(在console game常常看到)

但是在online game就不能這樣做了!

假如公司想開闊越南市場,如果去設定最低顯示卡為shader model 2.0,

保證會失去許多玩家,自然所賺的錢也會變少。

第四:

一個簡單例子:ATI的Tessellation技術。

(只有ATI的卡才能跑且需要ATI HD 2000以上的型號)

第五:

我負責的Render Engine,

他可以全支援所有關於post-process的shader。

(HDR或DOF還有SSAO....等)

但是有些物件特別奇怪(透明或alphatest),

除了可以完整的呈現出來之外,

還可以針對某些物件不需要納入post-process的運算,以提昇效率。

就這以上...。

這樣就結束了?

回頭看一下自己的backlog.....,恩...還早的很XD。

雖然以現有的機制,可以做出很可怕的東西,

不過課長是很貪心低(小聲說)

當然我也想趕快把架構給作大起來,趁現在還在開發中的時期,

等到專案啟動時,可能會很少去動架構了,必須要跟美術去磨合XD。

2009年1月4日 星期日

希望台灣的研發能量能上升

我會這樣說是基於課長的一些想法,且也讓我滿認同的。

事由是在於81 keys的正式公測。

這款遊戲我有玩第一次封測,感覺上滿不錯的遊戲,

有些設定滿值得參考與學習。

重點在於:希望上層能重視研發單位。

程式有分兩大種:engine和game play。

網龍是買Unreal2引擎,所以他們工程師可以專心於遊戲製作。

我們公司是由新加坡老外所開發的Typhoon引擎(google找不到低)

是跟81 kyes一樣,是從無到有去打造的,

不過不同的是我們是藉由老外之手,另一個是完全由國人去打造。

不管怎樣,其實我們由衷希望81 keys能成功XD,

雖然是敵對的公司,不過台灣遊戲產業很小,

所以對我來說只是良性競爭。

自己心中也希望台灣的研發能量能夠慢慢提升上去。

買別人的引擎,

有個致命缺點:無法即時去磨合online game市場需求。

而自行研發的話,就可以隨時去磨合。

比如:在Render Engine支援DirectX 10或10.1。

支援ATI或Nvidia的某種技術。

簡單說就是:高技術和高靈活。

高技術不完全等於顯示卡的配備要很好,

而是讓顯示卡充分發揮威力。

可惜DirectX10.0或10.1在歐洲推的很順,

我覺得關鍵點在於綁在Vista,不然我真的很想丟棄DirectX 9.0。

所以我只能期待DirectX 11。

回到主題....,

現在最怕一種現象,上層只專注「賺錢」,

只要能賺錢,我不管過程怎樣。

如果買Engine能夠比較快賺錢(大量出產遊戲的方式),

那麼上層會認為不需要開發Engine的需要。

那這樣....我可能會往國外跑XD。

台灣人才往外跑,因為不受到重視Orz。

所以課長最後提出:技術固然重要,但是遊戲製作也要考量。

雖然我對遊戲製作沒什麼感興趣(就交給企劃和game play人員),

不過能夠將此「技術」大量運用在市場上,才是我接下來的考驗。

所以才有shader物件導向的機制產生。

墾丁三日遊(第二、三天)

第二天起來,大概已經9點多了,準備一下出門。

首先到我們民宿對面的船帆石逛逛,

發覺到...船帆石不能夠游泳戲水,因為浪打上海灘會有小石頭。

所以那邊只能玩沙灘車,或採採海灘。

我跟閃光想挑戰「摸船帆石」的舉動,

結果...因為中間有個大溝,所以...最多只到達這邊。







































之後,開始騎車往北行動,沿途有看到墾丁大街、南灣,

還有夏都(海角七號)。

我們到達恆春的地方去吃吃有名的小杜包子。

為了吃著包子,等了快一個小時,還好有NDS加持XD。

小杜包子有個特色:包子出爐時,會唱歌並且噴出氣泡。

包子的話....,閃光覺得起士包子比較好吃,其他滿一般的。

吃完中餐之後,順路到南灣看看,有看到幾位老外在那邊。

那邊的海灘真的是可以戲水遊玩,海灘上也沒有小石頭。






























下午就在民宿休息一下,晚上就出去夜遊,目標是龍盤!

結果當天風過大且下雨,又一片漆黑...,連我騎車都很不安@@。

因為龍盤那邊很寬廣,沒有什麼樹有遮掩,而且也沒路燈。

所以...打消夜遊的念頭,直接到墾丁夜市去吃晚餐,

也順便買個名產回家孝敬父母。

最後...回到民宿休息XD

第三天,就是回高雄的時間了。

這次旅遊,雖然沒逛許多景點,但是重點是在於身邊的人,地方是其次。

不過玩的也滿高興的,那個龍盤....真是可怕,必須要有四輪才能過去。

墾丁三日遊(第一天)

跨年的第一天,就跟閃光一起到高雄火車站坐高雄客運,

準備出發到墾丁。上車前,先吃一下暈車藥。

本來預定上車後要玩NDS,結果...暈車(想兔)XD。

到了墾丁之後,發現到離船帆石還有一段距離,且附近沒有租車。

最後跟閃光走了快3公里的路Orz,路途中看著別人騎摩托車和四輪車,

對閃光說:抱歉~讓妳陪我吃苦。

閃光:沒關係呀~只要以後對我好就行了。

讓我很感動> /// <

終於...看到一顆大大的石頭, 那顆就是傳說中的船帆石。

也找到「金華海岸」的民宿,看出去就是海。




休息一陣子之後,馬上跟老闆娘租摩托車,

然後往南邊去前進....。

首先看到鵝鑾鼻的燈塔,可惜我找不道路進去QQ

最後找到最南點的石盃(我沒有到此一尿喔XD)



然後就去尋找看星星的龍磐,結果風太大了,而且也在飄雨,

所以就打消念頭。

往回騎之後,也下午五點多了,晚餐就到smokey joe's去吃,

沒想到墾丁也有呀...(高雄也有一家)

吃完之後,騎車逛一下墾丁夜市,然後直接回到民宿休息。

第一天晚上本來想夜遊的,但是太冷又太累,所以留到隔天...。