2009年12月16日 星期三

Multi-Thread

這一個禮拜為了專案的需求,去研究一下thread的東西。

雖然大學的OS有上過,不過始終還是理論,並沒有去實作過,

所以在研究過程,腦中慢慢浮現教授所講的內容。

經由boost thread的幫助之下,讓我很簡單的在C++底層底下快速建立thread。

花了一個禮拜完成back loading的工作項,花滿多時間在看文件和架構調整,

還有thread safe的問題,不過還會找時間去測試穩定性,

因為開了三條thread去作,說實在整體架構來講,寫的滿不好的,

不過的確確實花在刀口上,剩下粒子那邊會讓遊戲「頓」一下,

說實在不太想改,因為很麻煩XD。

對於是否要繼續研究?滿值得持續研究,因為未來是多執行緒的時代,

不去用它的話,是滿對不起intel和AMD,不過我只知道intel有提供工具作thread除錯。

最近有看到一款遊戲再使用:艾爾之光。說實在,遊戲流暢度真是好到爆,

我滿欣賞那一款!不知道大陸的東遊記有沒有抄到這項XD。

有開始想著設計multi thread frame work,

無意看到關於multi core遊戲的xbox 360和PC的概念圖(註1),

讓我想起physX的API使用方式,我大概可以得知他們的玩法,

大概會往那方向前進。

thread是既好玩又很危險的技術,它可以讓你的世界更加美好XD。

公司的事情,也不想提了,主管知道我的blog,不想再被約談了。

簡單講:在那個環境之下,不管弄什麼技術,我永遠都是一個人。

註1:在DirectX的說明檔

2009年11月27日 星期五

新目標

由於公司內部一些事情,導致Steam Age Engine已經開發終止。

這件事情對我來滿傷的,花了一年半多的時間去改引擎。

之後,引擎都用同一種,而且開發引擎方面,全都交給新加坡。

只能說...想在台灣要研發引擎的人,愈來愈難了。

很多公司都會直接買引擎,將所有人物投入到game play。

看起來很簡單的邏輯,但是買了引擎之後,使用的人會百分百發威?!

最近再弄舊引擎的底層並且憂化效能,雖然架構爛到不行,但是為了出專案,

硬著頭皮也要去修改。我也試著評估將這舊引擎導入新技術,可行性很高,

要導入物理引擎也可以,但是被上司給打槍= =。

現在沒了研發引擎的工作項,一度自認熱血已經燒完想說要換工作。

但是前陣子看了日本對於console game的製作流程,讓我滿感興趣的XD

尤其是スクウェア・エニックス製作的ラスト レムナント的相關流程,

想說試著去實現看看。

所以開始看大量的日文的SDK,深造plugin的技術,

而且明年打算去考J.TEST,將荒廢好一段時間的日文開始重新鍛鍊。

3D電腦圖學方面,暫時擱住吧~

2009年10月17日 星期六

Rag Doll

這技術常常在國外看到,尤其是暗黑3也有在使用。

主要是讓美術少做一些功夫之外,一方面也減少記憶體的使用量,

而且整體表現也相當好,只是會比較操電腦的CPU。

這兩天為了趕進度,忙到凌晨3點多才睡,為了要搞這東西= =。

這東西看來比我想像中的還難弄點,

最主要的問題在於physical engine的globalPose matrix運用錯誤,

害我一直找哪裡算錯咧~明明就是這樣算的。

這技術,不只是demo而已,連製成管線已經弄好了,

因為一切的流程,自己都一手包辦也自己操作過。

之後,就教一下美術怎製作rag doll。

現在基本功夫已經弄好了,再來後面就是真正的重頭戲!

這部分要保密一下XD

人物系統方面,只能在做一個禮拜,因為基於上司的命令,

要去寫back loading部分。

雖然很有挑戰性,但是個人不太喜歡事情作一半。

個人找到一個很有興趣的rag doll demo

2009年10月6日 星期二

健康要顧好

今天跟美術討論次世代繪圖製作流程和新人物系統。

尤其已經掌握Ambient Occlusion map和Normal map製作流程,

所以在大量量產上是沒什麼多大問題,未來會陸續導入新的製作流程。

自己現在是physical和render這兩個方面跑來跑去,

說實在.....滿累的。

再加上自己的個性算是完美論的人,長期累積壓力下來,

終於得了輕狀的胃食道逆流。

醫生說:暫時先用藥物控制,大致上會沒問題。

去年是因為script render pipeline而看精神科,這次是看消化內科。

希望明年不要在搞出什麼科了(笑)。

期望所有拼命的遊戲工程師,好好照顧自己的健康。

PS:三大神器當中,剩下HDR。

2009年9月14日 星期一

終於等到了....

前幾個月正擔心AGE Engine無法用在正式專案上。

現在已經確定要用在正式專案上,讓我感到興奮!

進遊戲業快兩年了,終於要去寫屬於自己的專案。

之前的專案,幾乎都是擦前人的屁屁,擦的很不高興,

那些前人都跑去寫手機遊戲。

一年前,終於不用擦屁屁了。開始學3D圖學一陣子,

然後修改新加坡那邊人寫的engine,

當然整個Level就是不一樣,畢竟那邊有神級工程師在主導。

這一年的經過,修改許多東西,大部分都是render engine。

直到最近一個月之內,本來再弄物理引擎的東西,

不小心接觸美術的領域,然後自己就身兼Technical Artist(TA)的工作XD。

這期間看了許多資料,去補足關於美術領域相關知識。

發覺到,我們的產製流程相當不人性化,讓美術花上大量的功夫。

今天就跟課長提出次世代遊戲的產製流程,

然後一直聽到課長的驚訝聲(其實我前天就已經驚訝過了XD)。

也很清楚老外遊戲對於畫面上跟我們哪裡差別在哪裡。

以前在想說:常用的lighting運算也那幾種,為什麼差別這麼大呢?

然後試著導入強大技術,也無法解決我心中的答案,直到接觸到TA的領域。

未來把Art Pipeline的技術大大提升,讓美術有很大的創意空間,

也增加量產速度,品質也跟著提升。

不過現在先把全新的人物系統給弄好,這可是這次專案的主要技術之一,

也是人物系統的重大突破,跟一般傳統的紙娃娃說掰掰。

它的強大,可以讓美術自己創造他們想要的「外觀」。

跟一般的「變身系統」和大量的骨骼動畫不一樣,

是個不會操死美術的系統,而且又相當不一樣的全新紙娃娃系統。

總之,還有一個月多時間去補足剩下的想要做的東西。

gameplay framework,是一位很厲害的澳門生在弄的,

所以我沒在擔心,他也很受課長寵愛XD。

不在yahoo上班,來這做遊戲,這種人滿少的。

2009年8月31日 星期一

跟老朋友交談

昨天星期日,跟高中的老朋友在小萱萱店裡聊聊天。

太久沒跟他聊天了,大概有相隔4~5年吧。

因為他才剛台大研究所畢業,所以才抽一天的時間回來看我,

他隔天又要回台北的學校處理一些事情。

在我所認識的朋友裡,是第二位高名氣的學校,

第一位的話,就是大學同學,他現在在台大讀博士班,在網路上頗有名氣,

連我們製作人都有注意此人XD。

回到主題,

那天談的內容,有愛情、工作、創業,還有其他人的近況。

當他提到創業時,滿讓我驚訝的!

我所認識的所有朋友,沒人敢提想創業,很多要嘛就是考公家居多。

讓我感到驚訝的是他的家境和個性上,

我一直以為他是屬於忠厚老實型所會過的人生,真是小看他了XD

當然我也提一些關於創業的意見。這條路是很驚險的。

也希望他能夠慢慢實現自己的夢想:大型全自動管理的精緻農業工廠。

跟他聊了有快5個小時,只有這個話題滿讓我驚訝的XD。

PS:這次不聊工作,下次在聊關於物理引擎的最新突破進展吧~

2009年8月6日 星期四

一些改變

最近把render engine弄到一個境界了,對於online game來說,

差不多已經是極致了,再搞下去只能做console game了XD。

剩下來就是跟美術去磨和,但是也要等到專案啟動才行。

在這之前,接受上司的命令去搞物理引擎,我當然很爽快的接下來。

這塊也是往後online game的主流,而且又有挑戰性,

趁現在年輕有體力和腦力時,盡量去搞,

以後老了,就用嘴砲寫程式XD。

規劃上,已經大致上是沒問題,比較擔心的是cloth和hair部分。

第一階段不會做到全場場景的物理運算,不過那也是最後階段。

以這款在E3 2009受到注目的遊戲為例:UNCHARTED2

其實物理引擎,並不只是增加遊戲性,還有視覺上也是。

現在只剩下我在「全力」搞新技術,其他人都有雜事在身上,

不能讓他們給失望,因為自己就是沒雜事才能作我喜歡的事情:研發。