2019春第三次課程設計實驗報告

2019春第三次課程設計實驗報告

1、實驗項目名稱:

EasyX反彈球消磚塊

2、實驗項目功能描述(用本身的語言描述):

綜合遊戲開發框架和EasyX繪圖技術,實現反彈球消磚塊,即屏幕下方有一個長方形跳板,有顏色,中間有一個有顏色的小球,實物,上下彈跳,最上方有一排小方塊;小球自動上下跳動,經過A、D移動跳板,反彈小球,小球擊中方塊,方塊消失。相比以前的,此次是真正的小球、跳板、方塊,而不是用字符類比的。

3、項目模塊介紹:

第一部分:遊戲框架代碼的重構,利用EasyX構成實物小球;

       第二部分:繪製靜態擋板,利用EasyX繪製擋板;

       第三部分:控制擋板接球,經過A、D鍵控制;

       第四部分:消磚塊,小球擊中方塊,方塊消失;

模型:

4、實現界面展現:

5、代碼託管連接:

Git網頁代碼git

6、實驗總結:

問題1:

第一次用visual studio 時,最簡單的畫一個實心圓都不會運行;

解決方法:

研究了一下書後,發現第四章的代碼須要下載一個EasyX什麼的才能夠運行,下載後能夠運行畫一個實心圓代碼。

如圖:

問題2:

當我想再次試驗一下多球反彈時,又執行不了了,並且,連畫一個實心圓也執行不了了。

如圖:

解決方法:

我想了一下,既然以前畫一個實心圓已經實現了,爲何如今再建立一個源文件就不行了?我將Text文件夾中的畫一個實心圓刪掉,只留下一個多球反彈,再次執行後運行成功。

如圖(原型是動態的,我只截了個圖):

問題3:

當我作本次真正的研究項目時,即EasyX反彈球消磚塊時,當時也是出現運行問題,

如圖:

解決方法:

先是複製問題百度,百度無果,我看了一下問題,大體知道問題出在‘kbhit’和‘getch’處,看到getch後,我想到教學視頻中提到_getch(),而後我將兩者前都加了‘_’,並在getch後加‘()’,再次嘗試,運行成功。

感想:

本次做業主要因爲涉及到了兩個新東西:EasyX繪圖庫和另外一種開發工具 Visual studio,致使一開始無從下手,開始時只想着下載VS,沒注意到EasyX庫的使用。最後遊戲作成後,看着運行結果,發現確實比以前用字符類比圖形來的更直觀一些,更接近遊戲本質了。代碼方面,此次研究的遊戲以前我就搞過,因此感受大致都沒怎麼變,但仍是變了一些,藉助課本和隨書資源,運行出來。可能剛開始使用VS,不習慣,總感受還不如Dev C++來的方便,但VS的確功能強大,多使用使用應該會習慣的。
相關文章
相關標籤/搜索