Monday, June 1, 2009

E3 Rants

上星期五總算把E3 build 送出去了
老實說以工程師的角度來說我亂討厭E3的
因為E3 build裏面很多東西都是為了展覽臨時寫的
E3過後這些code大概一半都會丟掉
即使留下來的, 通常也不是用best solution寫的, 而是the first solution working而已, 效能和維修性其實都比平常爛
所以development cycle中多了一個E3等於少了一個月的development time
而且還多了不必要的crunch

每次聽到一些producer在媒體訪問時說什麽他們多辛苦 工作量有多少
幹 不要拿你們的懶叫比我的火雞腿

Wednesday, April 29, 2009

Milestone Postmortem

好久沒有update了, 除了自己懶以外當然忙也是原因之一
上個星期為了趕milestone從星期四一直crunch到星期一, 其中有兩天還做到天亮
稍微整理一下和我有關的問題根源, 免得以後再度發生慘劇

- 這個project cycle原本就超短, 加上這次milestone是1st playable, 要求的delieverable又特別多.

- 大家都忙著完成各自的task list, 導致快到deadline前才恢復multiplayer playtest, 測試中發現的bug沒有足夠的時間修理.

- AI programmer(就是我啦)和network programmer間的溝通不夠, 不知道進行中的multiplayer容許新玩家加入並take over一個AI以保持角色總數. 原先的design是遊戲一旦開始就不容許player加入, 所以我的一些clean up code放在AI的destructor裡. 但是新的design會導致遊戲進行中clean up機制被提早啟動.

- 太晚做framerate optimization, 所以optimization本身沒有經過足夠的測試而造成其它問題. 原本的design是所有的AI每個frame都會收到update, 但是timeslice後update的間隔太長, timescale後超過安全範圍, 例如有些AI轉身因delta time過長而轉太多導致無法轉到設定的角度範圍內, 然後subsequent action就被無限期延後.