Feb 16 2009

《Game Industry Interviewing 101》:給遊戲業面試者與應試者的教戰守則

文章分類: 遊戲業界閱讀
handshake

(圖片來源:www.freedigitalphotos.net)

原文出處:Opinion: Game Industry Interviewing 101

面試,幾乎是所有步入社會成為工作者的人都必須經歷的一道程序。在這篇文章裡,作者以自己的面試經驗做為出發點,不僅為遊戲業界的應試者提出許多有用的教戰守則,同時也為面試者提供一些頗有幫助的小訣竅。對於許多即將踏入職場的新鮮人,以及擔任主管職務的人來說,文章裡有許多看似平凡無奇卻非常實用有益的觀念與知識,可供身處職場的我們,做為參考與省思之用。

在此先對「應試者」與「面試者」做出明確的定義。應試者 (Interviewee),或者可以稱為「被面試者」,所指的就是應徵工作而接受面對面測試的職務候選人。而面試者 (Interviewer),所指的則是公司裡負責與應試者進行面試程序的人;在一般常見的情形中,通常會以應試部門的主管做為面試者。

當我們踏出校園生活,欲將自己的身份由學生轉換成為社會新鮮人時,為了尋找合適又滿意的工作,面試可說是一條必經的途徑。而如果來到面試程序,表示我們已經通過了檢驗履歷表的第一道關卡,但最終是否能夠獲得工作機會,決勝關鍵仍必須取決於面試過程中的表現。因此,對於社會新鮮人來說,面試可說是一件令人又愛又恨的事情。

另一方面,若以公司經營者或身為主管的角度而言,也絕對不可以輕忽各項面試的相關程序——因為不論你是否能夠接受,面試程序都會對公司的風評產生非常深遠的影響。身為面試者,你所代表的角色就是公司形象,你的一言一行都會傳達出公司本身的文化氣息。請記得,當你在面試候選者的時候,候選者也同樣在面試你的公司。即使在面試的過程中,你發現應試者並不合於你的徵才條件,仍然應該展現出良好的應對態度,才是恰當的作為。

首先,讓我們瞧瞧應試者與面試者雙方所追尋的目標為何。從面試者的觀點來看,他們想要的是:

  • 充分判別應試者的技能。期望候選者至少具有不錯的能力,最好能夠達到非常優秀的程度。
  • 確認應試者能夠良好地適應於公司的團隊。
  • 盡可能付出較少的薪水。

至於應試者關心的事物則有些不同。理想中,他們想要的是:

  • 好薪資,好待遇。
  • 令人愉快且充滿挑戰性的工作。
  • 工作的安全感。
  • 成長與晉升的機會。

繼續閱讀 < < "《Game Industry Interviewing 101》:給遊戲業面試者與應試者的教戰守則"


Feb 06 2009

《心態致勝》:改變心態,改變你的世界!

文章分類: 其他書籍
mindset

心態致勝

書名:心態致勝 (Mindset: The New Psychology of Success)
作者:Carol S. Dweck
譯者:李明
出版:大塊文化
語言英文版繁體中文版

這是一本書皮封面平凡無奇的書籍,即使將它擺放在書店中最顯眼的位置,我也不會多看它一眼;就算碰巧拿到了手中,概略翻上幾頁,可能我也只會覺得:「這大概又是本充斥著說教口調的實驗研究報告,或者是如同書名般枯燥乏味的心理勵志書籍。」但沒想到,這小小的一本書,卻越讀越有滋味,越讀越令我拍案叫絕。

本書作者 Dweck 女士,是目前任職於史丹佛大學心理學系的教授。在書籍的內容中,作者不僅提出了「定型心態」與「成長心態」兩種心理狀態的明確定義以及兩者的各種顯著差異,更將這套理論應用在運動選手成就、企業經營與領導、兩性情感議題,以及父母師長的教育等許多不同的領域中,全都獲得了相當正面而良好的成效與回應。

書裡沒有什麼世界七大不可思議的必勝成功法則,也沒有如暢銷書口吻般自吹自擂的致富手段。相反地,其中涵蓋了許多客觀的研究結果以及測試受驗者的心得回應,充分佐證成長心態理論的實用性。作者並沒有搬出教條式的守則來推銷她的理論與著作,而是平鋪直述地帶領讀者在各種不同領域中,探討成長心態與定型心態對於為人處事、應對進退的決定性差異與影響。最後,則讓讀者依循自己內心的判斷,做出最合適的選擇與改變。

做為書名的主標題,所謂的「心態」(Mindset) 到底是什麼東西?人類的心態,並不會以個別獨立的形式存在,而總是由一組完整的思想所交織構築起來的知識網絡,所以心態可以說是「一組心裡的想法」(A set of mind) ,因而簡稱為 Mindset 這個詞彙。有人會將心態稱之為「態度」、「思維」或者「價值觀」,其實都是彼此相關而且可以互補的用語。

心態,就像是一組解釋世界萬物的框架,幫助我們認知周遭所發生的各種事情。因為心態的存在,我們熟習身邊的各種人事物,不至於每天陷於兵荒馬亂的生活之中;因為心態的存在,我們都能逐漸適應自己的家庭、朋友、工作以及伴侶;因為心態的存在,我們也因此得以成為現在的自己。假設我們改變了這組既存的框架,是不是就能夠改變眼前的世界?

繼續閱讀 < < "《心態致勝》:改變心態,改變你的世界!"


Jan 22 2009

遊戲開發日誌:水晶守護者

文章分類: 開發日誌
crystal-guardian-draft

《Crystal Guardian》Design Draft

這是《Crystal Guardian》的遊戲設計草稿。

其實大約在四個月前,我就已經完成了遊戲的基礎設計,本來想要在 NDS 平台上嘗試製作這款小小的遊戲原型,不過後來因為被其他有趣的事情吸引,再加上我一直找不到能夠在 Homebrew 套件上執行 Lua 的方法,所以也就沒有往 NDS 的方向繼續發展下去了。直到兩個月前,在玩過「咕世界」並且讀了「How to Prototype a Game in Under 7 Days」一文之後,內心深處那股「無論如何都想要做遊戲」的雄雄烈火,又再度燃燒了起來!

一開始在做遊戲設計的靈感發想時,對於目前網路上各種動作過關類型的小遊戲,可以看到大多數作品都是以「攻擊」、「毀滅」或者「破壞」當作遊戲的主要題材與樂趣元素。而我想要嘗試的,則是完全相反的方向。我反問自己:「有沒有可能以『保護』或者『防衛』的概念,做為遊戲的主要機制?」

當然,現在有許許多多 Tower Defence 類型的遊戲,但是我想做的並不是這種玩法的遊戲。我想做的遊戲,設計概念與核心機制的出發點在於「防護」(Defence),或許是保護金銀財寶、捍衛重要的東西或者心愛的人,無論那是什麼,我認為世界上總有些值得我們守護的人、事、物以及價值。而至於遊戲的操作方式,我想嘗試的方向,是一個不用動腦思考,只需要不停移動並且點擊滑鼠就能夠進行的遊戲。

繼續閱讀 < < "遊戲開發日誌:水晶守護者"


Jan 20 2009

水晶守護者:Crystal Guardian

文章分類: 遊戲作品
crystal-guardian-title

水晶守護者:Crystal Guardian

遊戲名稱

Crystal Guardian

遊戲平台

Windows XP

遊戲連結

CrystalGuardian.7z (2.28 MB) (下載次數: 1892 )

遊戲概述

很久很久以前,傳說當世界秩序失衡、魔物橫行之時,曾有四位勇者挺身而出,一路披荊斬棘、過關斬將,終於重新回復了世界的和平。而現在,潛伏已久的黑暗勢力悄悄地伸出了魔掌,邪惡的爪牙們正傾巢而出,亟欲奪取維繫世界能量的風、火、水、土四大水晶。為了守護世界和平、促進經濟發展,以及消滅寂寞大魔王,勇敢的紅髮戰士,請拿起你的寶劍奮戰到底吧!

繼續閱讀 < < "水晶守護者:Crystal Guardian"


Jan 12 2009

遊戲專案的目錄結構規劃

文章分類: 觀念技巧

不知道各位如何規劃遊戲專案的目錄結構?各位所使用的是專案管理體系的正規方法,或者只是隨意地將檔案與資料夾散佈在電腦中的各處?在一個遊戲專案的開發過程裡,重要的資產除了程式碼檔案之外,還包括了設計文件、美術素材、音效檔案,以及最終的執行檔等等。該如何妥善管理這些不同類別的項目,以達到良好的成效?在此將以我個人目前使用的方法,提出一套目錄結構的規劃架構,與各位一同進行交流討論。

有些人喜歡將許多各式各樣不同用途的資料夾,直接放置在電腦的「桌面」上,最後經常會使得整個桌布,幾乎被各種不同圖示與資料夾所淹沒。這樣的作法,在一時的使用上或許非常方便,但是如果沒有善加整理歸檔,未來很容易會找不到想尋找的目標文件或檔案。不論是公司的正式專案,或是自己在工作之餘開發的個人專案,都能夠從良好的目錄結構規劃中,得到易於管理與變動的益處。

首先,我習慣在電腦硬碟的作業系統槽(通常是 C 槽)之外,選擇一個空間足夠的磁碟槽,在根目錄下開啟幾個資料夾進行專案的管理:

  • Codespace:專案區,只存放由 CVS 或 SVN 等版本控制系統取出的各項專案。
  • Workspace:工作區,存放各項測試中的程式、待完成的工作項目,以及各種經常需要查閱使用的文件及資源。
  • Temp:暫存區,存放各種暫時物件,包括從網路上下載的安裝檔,以及檔案解壓縮後的資料夾等等。

專案區中的資料,應該經常與版本控制系統保持同步化,盡可能減少修改後的版本存在於自己電腦中的時間。即使個人的工作硬碟不幸遭遇毀損的狀況,也能夠由版本控制系統的伺服器中,重新取回整個專案的資料。而工作區,則用來存放各項試驗中的專案;例如在剛開始接觸 Boost.Pool 函式庫時,我就會在工作區裡開設一個測試資料夾命名為 TestBoostPool 進行各項測試,等到成果達到一定程度後,再將專案提交至版本控制系統以及專案區中存放。最後,在暫存區中的資料,則只是便利暫時性的使用,可以隨時將全部的內容清空刪除。

繼續閱讀 < < "遊戲專案的目錄結構規劃"


Jan 05 2009

猴子靈藥一歲啦!

文章分類: 部落格事務
monkey-potion

猴子靈藥

滿一週年了。

從 2008 年 1 月 5 日發佈的「關於」頁面,與 1 月 6 日的第一篇文章「始動!」開始,至今日為止,總共寫了 87 篇文章,有 481 則迴響留言(另外還有 801 則 Spam,囧),以及 365 則靈藥筆記

轉眼間,一年了。從剛起步的第一篇、第二篇到第十篇文章之後,在鍵盤上敲打文字,逐漸成為我生活中的一項重要習慣。自電腦與網路世代降臨後,「寫」這個動作,不再僅限於使用紙與筆,我們現在能夠利用電腦、網路、硬碟與鍵盤,輸入並且儲存自己各種想法心得,而這項全新的寫作型態,也帶來了許多不同於以往的分享與交流方式。

在這段寫作的過程中,我很幸運地認識了許多網路上的朋友,例如 lsk、yag、Trombe、R2D2、兔子安、獸王、Milo、藍斯洛、gino、doomleika、Percy、Wallace、COdE fr3@K 等等族繁不及備載。即使彼此之間並沒有見過面,但我們同樣能夠從共同關注的事物與知識中獲得交流與學習的樂趣。不論你是學生、遊戲人或是路人,不論是業界同行或者非同行,不論人在台灣或是國外,我都很高興能和各位相聚於此。

在猴子靈藥裡,我所遵行的準則是:每一則迴響我都會回覆。我喜歡收到各種回應,更喜歡與各位討論,因為我相信,很多時候,好靈感與好想法就是必須經過互動、激盪或者挑戰,才能夠產生出耀眼的火花。將來,除非留言數一下子暴增到四、五十則以上難以負荷的程度(看起來應該不太可能),否則我仍然會遵循著這樣的模式,對每一篇迴響,都會用心閱讀思考之後再加以回覆。

繼續閱讀 < < "猴子靈藥一歲啦!"


Dec 26 2008

《How Mega Man 9 Resembles… Real Life?》:那些洛克人教我們的事

文章分類: 遊戲設計閱讀
mega-man-9-cover

(圖片來源:handheldwii.wordpress.com)

原文出處:Opinion: How Mega Man 9 Resembles… Real Life?

如果你和我一樣,自純真的孩提時代開始接觸任天堂的紅白機遊樂器,一步步走入電玩遊戲的這條不歸路。那麼,在你的童年記憶裡,必然有一個小小的角落為這位英雄人物所佔據。這位由 Capcom 公司所創造出來的人物,現在被稱為「Mega Man」,但我們對他更熟悉的稱呼是「Rockman」,或者是「洛克人」

在 2008 年裡,遊戲業界中的許多開發商紛紛推出各款遊戲強作,而其中最特殊,也是立即能夠吸引老玩家目光的遊戲作品,莫過於由 Capcom 公司所製作發行的《Mega Man 9》。《洛克人9》,是《洛克人》系列的正統續作,一款遊戲能夠自 1987 年第一代的作品問世開始,歷經二十個年頭流傳至今,推出多達九款續作,必然有其不可動搖的地位。然而,這次 Capcom 卻做了件讓所有洛克人的玩家粉絲跌破眼鏡之事。

在這款與前作《洛克人8》相距足足有 12 年之久所推出的續作裡,遊戲設計與遊戲技術全部以反璞歸真的形式呈現。在遊戲中,沒有幾可亂真的的 3D 模型,沒有精巧炫麗的畫面特效,遊戲開發者選擇回到洛克人最初的根源與起點,以最純樸簡單的像素風格,為今日的玩家呈現這款全新的遊戲作品。而遊戲軟體本身,也僅在 WiiWare 遊戲下載服務平台上提供販售。

為何 Capcom 敢於做出如此大膽的嘗試?開發者是不是只為了隨便做個續作來交差了事?在遊戲英雄角色後浪推前浪的趨勢中,洛克人是否已經黯然失寵?除了遊戲設計層面的考量之外,本文作者從《洛克人9》的遊戲過程中,領略到與現今遊戲全然不同的娛樂體驗與成長心態,甚至能夠實踐於我們的真實生活之中。讓我們隨著作者的遊戲體驗,一起乘時光機回到過去,滲透隱藏在單調圖像背後的設計決定,學習那些洛克人教我們的事情。

繼續閱讀 < < "《How Mega Man 9 Resembles… Real Life?》:那些洛克人教我們的事"


Dec 19 2008

《Nine Paths To Indie Game Greatness》:獨立遊戲開發者的獨孤九訣

文章分類: 遊戲開發閱讀
path-to-indie

(圖片來源:asymptotia.com)

原文出處:Nine Paths To Indie Game Greatness

本文的作者,是一位曾製作過 PC、Console 以及 Mobile 平台遊戲的專業開發者。自從他以《Quake》內附的編輯器,製作出第一個遊戲關卡的那一刻起,他就領略到了創造遊戲的那種無上樂趣,也因此下定決心開始學習如何製作遊戲。然而當他在遊戲業界中,經歷了六年的工作生涯後,反而開始質疑自己是否擁有繼續開發遊戲的渴望。就在他決心離開遊戲業界,去嘗試其他的事物之後,反倒從如新生嫩芽般的獨立遊戲社群中,再次重新找回自己對於創造遊戲的熱情

在經歷過許多已經關門倒閉的遊戲公司以後,他充分地瞭解,開發商業遊戲需要非常廣泛的作用力與各種面向的考量,耗費於其中的時間,甚至遠超過投注於實際遊戲開發程序的時間。越瞭解這項事實,他就越加覺得自己已經游離了當初那個使他感到興奮雀躍的遊戲開發根源。他不禁懷疑,世界上是否有任何地方,能夠以他剛起步時的那種精神來創造遊戲。藉由這個捫心自問的問題,他發現了正迅速成長中的「獨立遊戲」。

所謂的「商業遊戲開發者」與「獨立遊戲開發者」,實際上的不同之處為何?當一間商業公司啟動一項新專案的時候,他們經常會問的問題是:「誰會給我們所需的資源來支付薪資與帳單?」如果這間公司夠幸運的話,他們可以問:「誰會給我們所需的資源來製作我們想做的遊戲?」而當獨立開發者啟動新的專案時,他們經常會自問的問題則是:「如何以現成可用的資源,製作出我所想要的遊戲?」這就是兩者間最大的不同之處。

在 1982 年時,由 Namco 公司所生產製作的《Pac-Man》,只需要 10 萬美金的開發費用;現今,開發一款 PS3 平台的遊戲,平均花費估計約為 1500 萬美金左右。即使經過通貨膨脹的調整之後,遊戲作品的開發費用仍然呈現出相當大的躍升幅度。而當近年的遊戲開發預算,已然呈現出數以倍計的增長局面之後,銷售量與收益仍然很難產生相對的具體變化。為了抵抗如此情勢,有些缺少開發流程經驗的獨立開發者,會盲目而不加思考地貿然前進,但是那些最成功的獨立開發者們,則能夠善用現存的資源大展身手。

開發遊戲這件事,最令人神魂顛倒之處,莫過於創造這些互動世界的能力,僅侷限於我們所能夠想像以及我們的技術能力所及之處;只要擁有想像力與技術力,你就能夠創造出一個充滿歡笑與樂趣的夢想國度。在這篇文章裡,作者提出九項非常實際有效的訣竅,並且引用了相當多成功的遊戲案例交互印證,帶領各位讀者進一步踏入獨立遊戲開發領域的康莊大道。

繼續閱讀 < < "《Nine Paths To Indie Game Greatness》:獨立遊戲開發者的獨孤九訣"


Dec 12 2008

《World of Goo》:歡迎來到「咕」世界!

文章分類: 案例分析
World of Goo

World of Goo

遊戲名稱World of Goo
遊戲開發公司2D Boy
遊戲發行平台:Windows、Mac、Linux 與 WiiWare

「它,到底是一款什麼樣的遊戲?」

它是一款以物理系統為基礎的解謎與建築遊戲;它是一款畫面簡單且風格特殊的遊戲;它是一款只需要使用滑鼠單鍵操作的遊戲;它是一款榮獲 IGF 設計創新獎項與技術精湛獎項的遊戲作品;它也是一款獲得無數玩家及媒體讚譽的獨立製作遊戲。

「它,到底是何方神聖?為何能夠讓每位玩過的玩家讚不絕口?」

它啟蒙於《Tower of Goo》,一款在七天之內製作完成的遊戲原型;它誕生於 2D Boy,一間剛成立屆滿二周年的獨立遊戲開發公司;它的成就,則來自於 Kyle Gabler 與 Ron Carmel 二位遊戲開發者,投注二年時間所孕育出來的美麗成果。

起初誰也沒料想到,這些看似毫不起眼又黑不拉嘰的「咕球」(Goo Balls) 們,竟然能夠獲得玩家們的廣大迴響與深厚喜愛,甚至還發揮了小兵立大功的威力,一舉攻下 Wii 平台遊戲排行榜中的超高評價。「揪~竟在這些咕球的背後,隱藏著些什麼樣不為人知的秘辛?」半路眉頭一皺,發覺事情並不如想像中那麼簡單。

請各位暫時放下手邊的工作,和我一同進入咕球的世界一探究竟吧~

警告:內文充滿大量咕球元素,如果您尚未玩過遊戲並且破關,閱讀本文可能會破壞您的遊戲樂趣或者解謎成就感,敬請小心服用本帖靈藥。甘溫蛤~

繼續閱讀 < < "《World of Goo》:歡迎來到「咕」世界!"


Dec 05 2008

記憶體配置:Pooled Allocation技術評比與效能測試

文章分類: 進階技術

從剛進入遊戲業界開始,我就一直對於「記憶體配置」(Memory Allocation) 的系統架構與相關議題很感興趣。後來隨著閱讀書籍量的增加與工作經驗上的累積,逐漸接觸到各種不同設計架構與實作方法的記憶體管理機制,現在終於能夠將一些初步的心得整理出來了。

在遊戲程式設計的領域中,程式設計者經常需要即時且動態地產生出大量的小型物件,例如怪物、特效、場景物乃至於低階的節點物件等等。如果遊戲程式設計者只是天真爛漫地使用著單純無害的 operator new 以及 operator delete 程序,在經過遊戲執行中不斷反覆地配置與歸還記憶體的行為之後,很快就會使得完整的記憶體區段面臨嚴重的「記憶體破碎」(Memory Fragmentation) 問題。更糟的是,記憶體破碎的問題往往很難被偵測出來,而容易被開發者所忽略。

為了盡可能降低記憶體破碎的狀況,並且得到高效的物件配置程序,除了從高階層面利用資源管理 (Resource Management) 機制減少遊戲物件的生成與毀滅行為之外,同時也需要從比較低階的層面,也就是屬於記憶體配置的功能面向著手改善。在使用者每次進行 operator new 操作向作業系統索取記憶體空間時,C 語言的函式庫除了配置所要求的區塊大小以外,還會另外生成一小塊額外的區塊以簿記相關的資訊。對於經常進行生成與毀滅程序的小型物件來說,這樣的行為模式就顯得十分浪費而不具效率。如果能夠一次性的配置出一大塊記憶體,然後再依使用者的需求傳回部分區塊,可望就能夠改善 operator new 程序所產生的額外負擔。

為了能夠妥善管理一大塊的記憶體空間,程式設計者發展出了「Free List」這個用來處理動態配置記憶體的特殊資料結構。Free List 通常是以鏈結串列 (Linked List) 做為基底結構,將目前可使用以及使用中的記憶體空間紀錄並且連結起來。一般常聽到的「記憶體池」(Memory Pool) 或者「池式配置」(Pooled Allocation),就是利用 Free List 資料結構實作出來的記憶體管理機制,也是遊戲程式設計者不可不知的記憶體系統管理技巧。而應該如何實作出高效能的 Free List 結構,使創建物件與刪除物件時的負擔減至最小,更是池式配置記憶體機制中最關鍵的要點。

繼續閱讀 < < "記憶體配置:Pooled Allocation技術評比與效能測試"