iT邦幫忙

DAY 24
3

資訊學院的30門課系列 第 24

資訊學院的30門課-電腦動畫(電腦遊戲設計)

  • 分享至 

  • xImage
  •  

這門課是學maya嗎?或是學3D Studio Max?唸過資訊科系的應該知道,很少教授這類設計類的課程,連電腦遊戲設計都很少直接上,到是用到的理論,如計算機繪圖、人工智彗、視窗程式設計、網路程式設計,倒是學子們的熱門選擇。不過這門電腦動畫倒是一門道道地地的電腦遊戲設計課程。
剛剛我又到高雄大遠百17樓的誠品書局罰站,繞了三圈再尋找今天貼文的靈感,可惜看不到甚麼電腦書,最多的是設計與藝術類,連電腦雜誌都封起來,有一半的IT類書籍,有共同的一個名字─Jobs,顯然我會錯意了,這應該歸類為自傳類。我翻了三本教人素描的書,三本數學書,分別是傅立葉分析,微積分與線性代數,我看了一下,覺得真的是滿淺的,而且是以漫畫跟小說的風格呈現,若要應用到學校考試,可能會徹底摧毀一個人。最後終於看到電腦類書籍了,非常非常單薄的一小角落,是這一本Microsoft_Press_ebook_Programming_Windows_Phone_7,的中文本。雖然我提供了電子書連結,但不要鞭我提供盜版的喔,看一下網址是Microsoft,沒錯!是微軟提供的免費電子書,看來微軟真的是很用力的推廣windows phone 7。我也對這滿有興趣的,因為若熟悉C#就可以開始寫手機程式了,用.net framework更是與網頁開發的語法類似。一魚多吃一像是微軟開發工具吸引人之處。這本書的中文版分成兩半,一本是專門介紹程式設計,有興趣的人可以下載來看。

言歸正傳,1997年的這門電腦動畫到底學了甚麼?那時別說手機程式設計,班上同學我看一個人都沒有手機,最方便的通訊工具是icq。不過web方興未艾,不過當時client的計算能力真的普遍不強,所以,也沒有強大的JavaScript當後盾,此時微軟把ole control推廣到IE上,叫做ActiveX Control,當時的電腦動畫,其實可以看作另外一個資訊專題,我把上學期物件導向程式設計完成的俄羅斯方塊拿來移植到IE上,現在當時有很多solution,如FLASH、AJAX、ActiveX Control與Java applet。不過當年可能只有ActiveX Control與Java applet可以提供網頁上玩這個簡單的遊戲。

開發過程中我了解到C++使用虛擬函式的好處,我只要繼承原來寫好的class,然後加入畫圖的功能,在sun solaris上,我重寫solaris畫圖的功能,在console上,我重寫console畫圖的功能,在MFC裡,我重寫MFC畫圖的功能,很快的我就有三個版本俄羅斯方塊。說起來雖然很簡單,但卻遇到其他的困難。

第一,玩俄羅斯方塊要用到左右下三個方向鍵,雖然我把遊標focus在我寫的control中,會變成怎樣?變成scroll bar上下左右移動,我卻無法控制方塊,後來在control的一個event中攔截這些事件,然後redraw畫面。

其次,不知為何我的control畫圖時會一閃一閃的,原來是沒有使用double buffering。這個觀念在設計動畫很重要,我是第一次聽到這個觀念。

第三,第一次使用ASP,當時不要說ASP的書,連電腦雜誌都還沒談到,教授就開始推廣這個技術,後台使用SQL Server 6.5計算排名。

還有一點,就是作為我開始學會寫MFC的啟蒙。

最後這個control我還匯入到Delphi中,可以輕易的在VB或在Delphi中,開發一個俄羅斯方塊,就跟用IE Control開發一個瀏覽器一樣簡單(且無聊)。

後來同學還真的在實驗室玩起我這個control。不過由於同名遊戲有版權,現在就算我想要移植到其他手機平台,想必也有版權爭議吧。


上一篇
資訊學院的30門課-無線網路資訊專題(三)
下一篇
資訊學院的30門課-物件導向程式設計Object Oriented Programming
系列文
資訊學院的30門課30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言