Sep 04 2008

《Flagship Founder Bill Roper Interview》:地獄之門崩壞,旗艦之夢沈沒

hellgate-london原文出處:Flagship Founder Bill Roper Interview

2003 年,冬天,旗艦工作室 (Flagship Studios) 於萬眾矚目之下創立起始;2007 年,秋天,旗艦工作室的第一個遊戲作品《地獄之門:倫敦毀滅》正式於歐美地區發行上市;2008 年,夏天,旗艦工作室大量資遣公司員工,旋即於同年七月宣告沈沒覆滅。

五年,人生有幾個五年可以揮霍?

(圖片來源:www.tech2.com)

Bill Roper,身為旗艦工作室的首席執行長以及共同創始人,也是 Blizzard 公司三大名作《魔獸爭霸》、《暗黑破壞神》以及《星海爭霸》的遊戲製作人 (Producer),如果讀者清楚瞭解他的資歷,曾經玩過、看過或者聽過他所參與開發的遊戲作品,應該很難不對於旗艦工作室的黯然落幕感到震驚:像他這樣成功經驗豐富的遊戲開發者,怎麼可能會失敗!?

還記得五年前,那個 2003 年的夏天,當我正在軍營裡折騰翻滾的時候,Blizzard North 分部的三位創始人以及副總裁 Bill Roper 宣布集體離開如日中天的 Blizzard 公司,不僅在玩家社群中掀起巨大的波瀾,也大大地震撼了整個遊戲業界。於是,開始有人說 Blizzard 公司快要完蛋了,有玩家說《暗黑破壞神》不會再有續作了。經過將近四年的開發時程後,背負著無數玩家的熱切期望,在許多狂熱者眼中引頸期盼,能夠繼承《暗黑破壞神》系列作精神的《地獄之門:倫敦毀滅》終於在 2007 年 10 月 31 日上市。

但是很遺憾地,這款嘔心瀝血的遊戲大作,在大多數的遊戲評論者與玩家之中,都無法獲得良好的回應及評價。

繼續閱讀 << "《Flagship Founder Bill Roper Interview》:地獄之門崩壞,旗艦之夢沈沒"


Aug 30 2008

遊戲開發入門:專案時程怎麼估?

gantt-chart在專案管理領域中,所謂的時程,也就是一般常聽到的 Schedule 一詞。當上司、主管或者指導教授交付給你一項工作時,需要知道這項任務的預估完成時間。我們身為遊戲開發者以及工作執行者的身份,應該要使用什麼方法來預估工作的時程?如何達到預估的準確性?工作時程中又隱含著些什麼樣的秘密呢?

經過前篇文章「遊戲開發入門:專案管理管什麼?」的介紹之後,相信即使是從未接觸過專案管理領域的讀者,也能夠對於專案管理的基本概念有一些基礎的概念與認識。接下來,本篇將深入時程的層面,探討在專案管理中相當重要的專案時程估算議題。

(圖片來源:www.codinghorror.com)

任何一項工作的時程安排,都需要具備三項條件:起始日期結束日期以及與其他工作的依存關係。在專案管理領域以及專案時程表中,最受到廣泛使用的甘特圖 (Gantt Chart),可以用清楚易懂的圖示來描述工作項目的這三項條件。而另外一項在專案時程中會經常聽到的術語是 Work Breakdown Structure(工作分解結構),或經常簡稱為 WBS。簡單來說,WBS 近似於前篇文章裡所提到的「工作項目階層分解程序」,能夠將原來非常龐大的功能項目,逐步往下分解為可處理的單一工作項目。

在遊戲開發流程中,為什麼我們需要制訂出專案時程表

繼續閱讀 << "遊戲開發入門:專案時程怎麼估?"


Aug 25 2008

給遊戲程式設計者的推薦文章

本篇是推薦文。很短,但藥效很靈而且不傷身體噢。

我要誠心誠意地推薦一個網站「程式者的胡言亂語」,以及其中的一些文章,給各位現在身處業界或者未來即將成為程式設計者的讀者。

繼續閱讀 << "給遊戲程式設計者的推薦文章"


Aug 20 2008

Triforce:遊戲開發三原力

triforce3,是一個很奇妙的數字,經常用來描述相互抗衡,同時又彼此連結的能量關係。

生命生存的三要素是陽光、空氣與水;色彩學中的三原色是紅色、綠色與藍色;三國演義的三霸主是曹操、孫權與劉備;程式的三元素是語言、API 與工具。而在《薩爾達傳說》的故事背景中,則仰賴著力 (Power)知惠 (Wisdom)勇氣 (Courage) 所結合而成的 Triforce 維持著世界的平衡。

(圖片來源:http://www.neoseeker.com/)

以遊戲作品來說,受到玩家喜愛的原因可能有很多,例如畫面漂亮、故事感人、音樂動人、操縱流暢以及玩法創新等等許多不同的因素。但是如果從遊戲創造者的觀點檢視,各位是否曾經思考過遊戲開發的三大原力為何?遊戲業界中是否也存在著神秘又奧妙的三原力?本文中,將分別以研發部門、專案管理以及遊戲開發,這三種不同角度的觀點,探討遊戲開發領域中的「三大原力」。

繼續閱讀 << "Triforce:遊戲開發三原力"


Aug 14 2008

《Measuring Responsiveness in Video Games》:測量與分析遊戲的回應性

stopwatch原文出處:Measuring Responsiveness in Video Games

本文接續前篇文章「《Programming Responsiveness》:遊戲程式設計中的回應性」的遊戲回應性 (Responsiveness) 以及遊戲回應延遲 (Response Lag) 議題,進一步提出能夠實際測量反應時間的方法,同時對各款遊戲作品的回應性表現進行測試與分析。

(圖片來源:http://www.geardiary.com/)

在前文中,提到了遊戲開發者易於忽略的遊戲回應性問題,但是並沒有提出實際的測量方法;如果我們只使用人眼去觀察遊戲是否產生延遲情形,是相當主觀而且不準確的測量方法。身為遊戲開發者,我們需要更加精確的方法以及更為客觀的數據,才能夠證明遊戲的回應性緊密或者遲緩。在 PC 平台的遊戲上,通常比較少對於 FPS(遊戲每秒畫格)做出限制,強制鎖在 30 FPS 或者 60 FPS 的數值;但是在 Console 的平台上,遊戲需要從 30 FPS 或 60 FPS 中做出選擇。如果能夠取得客觀的延遲時間數據,遊戲開發者就能夠更明智地在兩個數值之間做出抉擇,進一步強化遊戲畫面以及遊戲操控性的表現。

想要測量遊戲中的延遲時間並不困難,只需要準備一台具備攝影功能的數位相機,對準遊戲中的電視螢幕與操縱手把進行錄影。作者使用的是便宜且常見的 Canon Powershot SD800IS 相機(我不清楚這台相機的價格算不算是便宜 XD);將相機設定調整至「運動模式」或「快速畫格取樣率模式」,然後把取樣數調整至「60 FPS」後,使用腳架置放於電視螢幕前面;如圖所示,使相機能夠清楚地拍攝到電視螢幕畫面以及手上的遊戲手把,就可以開始拍攝遊戲中的各種操縱動作與結果反應。拍攝完畢後,可以使用 QuickTime 或其他播放軟體,以鍵盤的方向鍵每次移動一個畫格播放,計算出由按下按鈕到畫面呈現結果所花費的畫格數,也就是遊戲中的回應延遲時間。

繼續閱讀 << "《Measuring Responsiveness in Video Games》:測量與分析遊戲的回應性"


Aug 09 2008

《Programming Responsiveness》:遊戲程式設計中的回應性

armored-core原文出處:Programming Responsiveness

在玩遊戲的經驗裡,你是否覺得有些遊戲玩起來不太順暢,但又說不上來是什麼原因;明明是單機的遊戲,卻覺得操作反應有些 Lag;狙擊槍的準星明明抖個不停,竟然也可以命中敵人。這篇文章裡,作者對於遊戲的「回應性」(Responsiveness) 這個鮮少有人提及的議題,做出了詳細的觀察與探究,非常值得遊戲程式設計者與遊戲企畫設計者閱讀參考。

(圖片來源:http://games.mattsarrel.com/)

如果以軟體領域的角度來檢視,遊戲軟體與其他軟體最大的不同之處,或許就是在於遊戲對「即時反應」(Realtime Response) 的嚴格要求。在一些節奏比較快速的遊戲中,如第一人稱射擊、賽車競速或音樂節奏類型遊戲等等,甚至不能夠承擔超過零點幾秒的延遲誤差。那怕只是一點點的延遲反應而已,都會破壞玩家對於遊戲的投入感;更甚者,也可能就此在玩家心中埋下難以逆轉的負面印象。

Response lag is the delay between the player triggering an event and the player receiving feedback (usually visual) that the event has occurred.

「回應延遲」(Response Lag) 的定義,是指從玩家觸發事件,直到玩家得到回饋反應的延遲期間。觸發事件,是指玩家藉由搖桿、手把、鍵盤或滑鼠等輸入裝置,觸發遊戲系統中的行為動作;而回饋反應,則通常是指遊戲中的視覺面呈現。如果在「觸發事件」與「得到回饋」兩者之間的延遲期間過於冗長,將會造成玩家認為遊戲反應遲鈍、動作慢吞吞或是操縱不順暢等等負面觀感。

繼續閱讀 << "《Programming Responsiveness》:遊戲程式設計中的回應性"


Aug 04 2008

物件導向設計新思維:深入Policy-Based Class Design新大陸

自前一篇「物件導向設計新思維:探索Policy-Based Class Design新視界」發佈以來,已經過了很長的一段時間。在這篇千呼萬喚始出來的續集裡,將會進一步深入探索 Policy-Based Class Design 背後的設計概念與理論,以及在實作層面上經常會遭遇到的問題;最後,以一個遊戲系統中常見的音源引擎 (Audio Engine) 類別設計為範例,做為本文的片尾曲目。

記得曾經有人問過比爾蓋茲,如果有天他被迫一人獨自在荒島上生活,身旁只有一樣物品陪伴的話,最想要什麼東西?他的回答是:「一部電腦與編譯器。」許多程式設計者心裡所嚮往的美好世界,就是那種無拘無束、無邊無際的自由;好像只要手指還能夠活動、頭腦還能夠寫程式,天底下就沒有辦不到事情!只是,有時候這種無限度的自由,反而會對程式系統造成負面的影響。

《C++ 設計新思維》(Modern C++ Design) 書中的第一章,就對於程式系統的設計就開宗明義地闡述:

理想上,一個良好設計應該在編譯期強制表現出大部分 constraint(約束條件、規範)。

身為一位程式設計者,或多或少都有把自己的程式碼交給其他程式設計者使用的經驗,相對於「程式撰寫者」來說,所謂的「程式使用者」,就是那些使用你所撰寫的程式碼的人。就像是遊戲程式中經常使用的 DirectX、OpenGL 或者 .NET Framework 以及遊戲函式庫與引擎等等,我們都是身為「程式使用者」的身份。

繼續閱讀 << "物件導向設計新思維:深入Policy-Based Class Design新大陸"


Jul 30 2008

前進遊戲界:給大學生的行前準備建議

choose-the-right-path「我想進入遊戲業!但是不知道要如何做準備!」

你是學生嗎?你渴望在畢業之後進入遊戲業界工作嗎?你抱持著滿腔的熱情,卻不知道如何替未來的自己做好準備嗎?這篇文章裡,將以我個人的經驗與心得,提供給有興趣進入遊戲業界的學生一些行前準備建議。因為我自己是屬於遊戲程式設計者的身份,所以這篇文章多數的內容是針對未來有志於成為遊戲程式設計師的大學生。在文章最後,則會稍微提到一些關於遊戲企畫設計者遊戲美術設計者的面試加分項目。

對於有志成為遊戲程式設計者的人來說,大專院校中的資訊相關科系,如資訊工程、資訊科學以及資訊管理學系,可以說是最為接近遊戲程式設計的領域。雖然台灣目前已有幾間學校設立了遊戲設計學系,但是以成為遊戲程式設計者的目標來說,我認為選擇資訊相關科系仍然會是比較合適的決定。資訊科系畢業的學生,未來可以從事許多不同面向的工作,例如 IC 設計、韌體開發、軟體設計以及網路多媒體程式設計等等;而一般來說,相較於硬體與軟體產業,遊戲業界在考慮新鮮人的履歷表時,比較少有學歷面向的資格限制。

(圖片來源:http://www.rougarai.com/)

大學考試的錄取率年年昇高,至今年甚至已經達到 100% 的錄取率,如果你身為一位大學畢業生,在每年六、七月新鮮人開始投履歷尋找工作時,要如何從眾多的大學畢業生中脫穎而出?如何爭取到更多的面試機會與工作機會?又或者應不應該念研究所?要回答這些疑問,首先必須瞭解的關鍵問題是:「進入遊戲業界需要什麼樣的能力?」

繼續閱讀 << "前進遊戲界:給大學生的行前準備建議"


Jul 25 2008

遊戲開發入門:專案管理管什麼?

project-management我想,在進入 Scrum 這個新奇有趣又好玩的新主題之前,必須要先來一兩篇楔子,介紹關於遊戲開發層面的入門知識。首先,就來談談基礎的專案管理概念。

(圖片來源:http://www.areait.info/)

「專案管理」聽起來是一個很酷炫的 Buzz Word,如果用一句《神奇寶貝》裡的名言比喻,專案管理就像是個「可愛又迷人的反派角色」一樣,經常讓人對它又愛又恨。在之前的「經驗與管理的迷思」以及「Peopleware:腦力密集產業的人才管理之道」這兩篇文章裡,已經討論過「人」這項因素對於開發團隊的重要性。然而在一個企業、公司或團隊中,如果只注重人的因素仍然是不足夠的,因為即使是能力再強的領導者或管理者,也無法一天八小時盯住每一項工作的執行細節。如果說在管理學中常聽到的「領導統御」是著重於「人」的層面,則「流程管理」就是著重於「事」的層面。良好的管理制度,將能夠補足「人」所力有未逮之處。

專案管理,最初由時間管理 (Time Management) 的概念衍生而來,而時間管理的概念則存在於我們每一個人的生活當中;當你身為一個學生的時候,如何管理一天的生活?如何管理二個月的暑假生活?如何管理一整個學期的生活?如果只是放任著時間流去,最後或許會發現自己什麼事情也沒有完成,什麼東西也沒有留下。對於遊戲開發來說亦然如此,專案的功能清單與臭蟲列表上,總是存在著難以計數的項目等待進行;有多少事情需要完成?有多少人手可以用?六個月之內可以看到什麼樣的成果?專案管理,必須要能夠妥善地回答這些問題。

繼續閱讀 << "遊戲開發入門:專案管理管什麼?"


Jul 20 2008

《What Gamers Want: Silver Gamers》:銀髮族玩家想要什麼?

silver-gamers-immersed原文出處:What Gamers Want: Silver Gamers

對於遊戲業界來說,如何吸引更多不同族群的消費者目光,一直都是一件非常重要同時也十分艱鉅的任務。為了瞭解不同族群消費者的想法與需求,Gamasutra 找來一群 50 歲以上的銀髮族玩家進行焦點團體測試,實地去遊玩各種不同類型的遊戲,並且從中獲得他們的意見與回饋。

所謂的 Silver Gamers,銀髮玩家,泛指那些「不是從小跟著電玩遊戲一起長大」的族群,可以說大約是 1970 年之前出生的人,也是我的父母那一代;同時,銀髮族玩家也是那些不會將自己視為電玩遊戲商品消費者的族群。在這樣的前提條件之下,這些願意嘗試電視遊樂器遊戲的玩家,在測試過程之後,提供了許多相當有趣而且值得思考的觀點與意見,總共可歸納為以下 10 項結論:

可反覆練習的教學模式 (Repeat Tutorial)

多數的銀髮玩家,需要比一般玩家更多的學習時間以領會遊戲的各種操控方式,但是現今的許多遊戲,經常會假設玩家已經非常熟悉遊戲的操控方式,因而忽略了某些基礎而關鍵的教學指引。但是與一般的核心玩家不同的是,銀髮玩家想要擁有更多的機會,能夠反覆地練習同樣的一個動作,直到他們能夠操作自如為止,接著才能夠安心地學習下一個操作步驟。在這一點上,Wii 平台的《Madden NFL 08》意料外地表現的非常好,這個遊戲不止擁有步調合宜的控制方法介紹,而且玩家還能夠在遊戲進行的時候,隨時跳回練習模式複習那些不熟悉的動作指令。

繼續閱讀 << "《What Gamers Want: Silver Gamers》:銀髮族玩家想要什麼?"