Tuesday, March 29, 2016

Qubot iOS版封測登記開跑!

本來應該要貼[秘辛]第一款國產XBOX遊戲製作回憶錄 - Part Two的,但是為了Qubot上市的事忙到不可開交,所以就留待下一次再分享了。

今天要分享的是Qubot iOS版登錄終於於開跑了。回想2013年三月開始這個專案時預計是一年內要完成,結果這個專案花了我兩年多的時間,寫了20萬行程式碼(不包含引擎程式碼)@@.... 不過終於是快要上市了 。

有興趣參加封測的朋友可以到這裡登記,到4/8截止,我們會選出500位玩家來參與封測。參加封測的玩家還有機會得到超稀有的活動限定機甲 「破空‧尤米尼斯」以及專屬駕駛員「墮影 青瀨隼人X」喔。



另外,由於我一個人負責整個遊戲的Client端以及工具,已經快要爆炸了,所以我們也開始在找新的程式以及合作夥伴加入公司,有興趣的朋友可以參考一下
http://www.qubitgames.com#join

以下是目前職缺,歡迎大家來apply :)

營運企劃

具遊戲及活動關卡內容規則及設計能力
善於分析遊戲結構
善於溝通與統合意見
熟稔遊戲社群的生態
(額外加分)熟日本動漫文化, 具英/日語能力者
(額外加分)活動策畫經驗者

社群行銷經理

熟稔遊戲/ACG社群的生態
有社群經營經驗者
擅長數據分析,能從數據解析社群行為及活動成效者
(額外加分)具英/日語能力者
(額外加分)熟悉歐美獨立遊戲社群者


CLIENT端程式人員

俱備C++/C#程式寫作能力,熟悉物件導向程式設計
熟悉STL以及Design Pattern
具備遊戲系統設計/實做能力
熟悉iOS/Android系統
(額外加分)了解DirectX/OpenGL等繪圖API基本運作方式
(額外加分)有第三方引擎(UE4, CryEngine...)開發經驗者
(額外加分)喜愛voxel者

美術設計人員

須兼具2D及3D造型及製作能力
具良好商用向排版, 構圖, 色彩及設計概念
具良好Maya或3D Max低模及貼圖製作能力
具良好自我時間控管能力
對pixel art及機器人題材ACG有愛
(額外加分)有設計或動畫經驗者


Friday, July 10, 2015

[秘辛]第一款國產XBOX遊戲製作回憶錄 - Part One

之前整理硬碟時發現一些老檔案,是15年前製作的XBOX遊戲<魔武爭鋒(Stake)>的一些相關檔案跟影片,很令人懷念,所以就想說寫一篇文章來紀念一下在那個沒有Unity的年代,我們是如何辛苦的獨立製作出一款3D動作遊戲,並把它移植到XBOX上的。這些東西大概是現在開發遊戲的小朋友們沒經歷過也無法想像的艱苦過程吧 :)

遊戲最後在XBOX上的樣子

話說2000年的時候,我跟大宇資訊合資成立了一家遊戲公司,當時我們打算開發一款3D的連線動作遊戲,可以讓最多八個人在場上戰鬥。遊戲除了死鬥模式還有組隊推塔模式,其實有點像現在的DOTA或LOL,但是沒有小兵只有英雄。當初設定的目標還包含一個遊戲編輯器,可以讓玩家自製地圖,甚至是自訂英雄外型及招式。在2000年時這是個相當大的目標,要知道那時候上的了檯面的的引擎就只有Quake3跟Unreal,而那時引擎授權價格都要上千萬,我們當然沒錢買只能自己研發。以一個六人團隊要同時研發遊戲加上引擎還有編輯器,幾乎是不可能的任務,而如果還只有一位工程師,那根本就是自殺啊 :)

當年做的推塔地圖之一

在2000年的時候,想要做3D遊戲的人沒有足夠的資金就只能自己開發引擎了。不過由於我在前幾份工作中都一直在做建構3D引擎的工作,加上我下班後都有在維護自己的一個圖形引擎,這部分倒不是太大的問題。2000年的時候繪圖加速卡才開開始流行,D3D也不是那麼成熟,許多大作都是用OpenGL來當作繪圖API,尤其那時受John Carmack跟Chris Hecker這些大神影響很深,所以其實我一開始遊戲引擎也是採用OpenGL作為繪圖API。另一個影響則是我決定整個引擎採用C來撰寫而不是C++,因為除了JC跟CH大力鼓吹用C比C++有效率外,另一個因素是我前一個Dreamcast的引擎使用了SEGA的SDK但它卻沒有很完整的支援C++,所以到最後整個遊戲、引擎以及編輯器都是用C寫出來的,現在想起來還是覺得超猛的 XD 更猛的是因為用C所以無法使用MFC,結果整個編輯器是用Windows SDK硬幹出來的.....

特效編輯(包含碰撞範圍設定)

Windows SDK硬幹出來的遊戲編輯器

另一個問題則是角色動作了,在那個年代,bone&skin還是非常神秘而且高技術的東西。遊戲通常都使用segment animation。即使是Quake 3跟Unreal用的也是vertex animation而已。但是對FPS這種動作量很少的遊戲vertex animation不是問題,但像我們這種遊戲角色有許多招式的動作遊戲就是個大問題了。所以那時我決定要自己搞定bone&skin的東西。這不單是要了解bone&skin的運作原理,還必須要瞭解到bone&skin的資料在3ds max這類軟體中是怎麼被運算跟儲存的,也必須要了解這些軟體中animation key的原理跟運作方式,然後還要寫出exporter將必要的資料輸出。結果這部分花了好幾個月才完全搞定。


角色編輯
現在已經是標配的的物理引擎那時也都還沒生出來,自然碰撞部分也都得自己來搞定。而那時的顯卡繪圖能力也還很弱,所以計算PVS是一件很重要的事,那時最流行的是BSP,我也嘗試過使用portal來計算PVS。但是由於我們的遊戲是在開放場景中亂鬥,這兩個方式都不是很合適,因此我最後採用的是OSP八元樹的方式來分割場景。同時OSP也可以做於碰撞偵測的多邊形篩選以加速碰撞偵測。當然所有物件的碰撞偵測以及位移都得自己搞定。

3ds Max 中的Preview Plug-in

結果好像一篇文章寫不完.... 這次先到此為止,下一篇再繼續,keep tuned  :)



Saturday, February 21, 2015

新的一年

因為剛從加拿大回來,所以還在jet lag中,頭好像要爆炸,無法專心工作,所以乾脆來PO新文章。 

今天是農曆初三,回想起正好一年前,去年農曆年的時候Qubit Games的辦公室才準備要開張,那時三個人在公司組IKEA買來的廉價家具(因為底部沒有框架,桌子不靠牆的話超會晃的,我常常打程式打到一半還以為地震了:)),準備年後正式開張。經過了整整一年,我們活下來了,而且還長出了一點點肌肉,人數也從三人變成了六人(但是人力還是嚴重不足啊~~~~),算是站穩了第一步。而原先計畫中的專案也持續開發中,而且內容遠比一年前的規劃豐富許多。這一路來要感謝許多人的幫忙,而我們Qubit Games團隊也會在新的一年繼續努力把遊戲做到最好。

至於未來,希望Qubit Games能夠依計畫穩定的成長,朝向製作更多平台,規模更大,品質更高的遊戲前進。

Qubit Games成長預想圖  XD

Thursday, February 05, 2015

Qubot 第二彈, 紅魔鬼(仮)

模型其實是用自己的編輯器作的,存的是voxel的格式所以超小,而且可以任意拆解,爆破等等,上傳的模型則是另外輸出的公用格式。

[Qubot] Robot # 2 by Qubit Games on Sketchfab

Tuesday, February 03, 2015

Check out Qubot in 3D!

最近發現一個3D模型分享網站做得很不錯,就把Qubot模型丟上去試試。在網站是還可以微調燈光,材質等許多參數,而且應該是用WebGL作的,在手機上也跑得很順。

[Qubot] Robot # 1 by Qubit Games on Sketchfab

Sunday, January 18, 2015

進度管理工具

今天聊一下我們在進度管理工具上的一些經驗。其實之前一個人開發引擎時,也想過使用Scrum的工具來管理開發進度,不過因為只有一個人,最後也就不了了之。Space Qube開發時基本上也只用了不同顏色的便利貼來管理。直到開始Qubot的開發後,因為團隊變成四人,才開始認真找尋一套工具來做進度管理。

基本上由於我們很窮:(,所以都是找尋在一定人數以內可以免費使用的工具。好在我們團隊人很少,所以倒是有許多符合條件的工具可以選擇。我個人比較喜歡視覺化的工具,所以傾向使用那些能把每個backlog/task做成 card view的工具。本來覺得Trello用起來不錯,但是實際套用在Scrum上卻不是很好用,所以最後選擇了Target Process。Target Process事實上做得很不錯,在所有試用過的工具中沒有一套能跟他有得比的,同時又提供五人以下的團隊免費使用(但是後來他們加上1,000個entities的限制 :( ),無奈我們很快就突破他的免費使用限制,而USD 25/person的月費實在不是我們負擔的起的,於是我們只好繼續尋找其他的可行方案了。

之後朝著在負擔範圍內的付費工具尋找,用了許多服務,都沒有滿意的,直到找到了Scrumwize,這套工具雖然沒有Target Process那麼好,但比起其他我所找到的工具卻是好上許多,在各種方面都如速度,視覺化設計,附加檔案,組員管理等等都算符合我的要求,USD 9/person的價格也勉強可以接受。不過因為它只有30天試用期,讓我有點猶豫,這時有很多人向我推薦Asana協作平台,加上它的創辦人又是Facebook的前創辦人,所以我就決定嘗試看看。

一開始我並不覺得Asana符合我的需求,因為它主要針對的是多人協作平台,並非 Scrum,所以很多Scrum需要的東西他都沒有,像是burn down chart跟sprint/backlog管理。一開始的感覺跟Trello很類似,覺得要拿來用在Scrum可能有點困難。不過實際用了以後,發現他在團隊協作的部分做得很不錯,介面設計非常簡潔實用,對於task的comment的功能我也非常喜歡,加上支援很多雲端檔案功能,讓附加檔案變得很容易。所以最後我們決定使用Asana來管理我們的Qubot專案,雖然他並沒有backlog/sprint這些功能,但是我們用section的功能來解決這一個問題。同時我們也把它用在會議紀錄以及bug list上面,用到目前為止我還算相當滿意 :)


Saturday, January 10, 2015

變形效果測試

這個元旦假期花了一點時間測試一個遊戲中要用到的變形效果,經過一些調整後,效果還不錯。


另外搜尋影片時無意中搜尋到2013年時我們在TGADC的分享,那次應該算是我回台後第一次公開分享吧,所以放在這裡紀念一下 :)

我好像還是留長頭髮比較合適.......