更多

    簡易編寫物理遊戲(一)

    相信很多人都知道,在 Chrome 瀏覽器中有一個隱藏的小遊戲,就是在網路斷線的時候,一隻小恐龍跳越仙人掌的遊戲。雖然這是一個簡單的遊戲,但在當中也使用了不少的編程技巧。今期筆者會教大家,如何利用 Scratch 來編寫一個類似 Chrome 小恐龍的遊戲,並運用物理知識作設計。

    這次習作會學習如何製作平台遊戲( Platform Game )的基本編程技巧,而我們亦會將操控小恐龍跳躍的方法,由鍵盤控制改為以聲音操控,令遊戲更加互動。另外,編寫小恐龍跳躍的動作中,會加入重力加速度的因素,令到小恐龍跳躍的動作更逼真,真正一邊玩遊戲,一邊學物理。

    策劃 Chrome 小恐龍遊戲

    現實世界中,如果你有留意過一些大專院校或商業教育機構舉辦的電腦遊戲設計課程,都已可能對此課題的內容有所認識。有關電腦遊戲設計的製作,我們先要為遊戲作規劃,定下遊戲背景故事,遊戲角色及組件設計,遊戲玩法或任務。製作過程當中會牽涉到美感設計、創意藝術、電腦技術(例如軟硬件使用及於不同電腦平台運作的考慮)等;如果電腦遊戲中牽涉到一些物理運動,製作者便需要對物理和數學理論有一定的認識,並在程式編寫方面作一些特別處理,才能令模擬的運動更為逼真。

    當 Chrome 「無法上網際網絡」時,就會有小恐龍遊戲出現。
    當 Chrome 「無法上網際網絡」時,就會有小恐龍遊戲出現。

    圖像化語言 vs 文字化語言

    有兩個常用作編寫簡單遊戲的工具,非常適合初學者使用,它們分別是 Pygame 和 Scratch 。前者為文字式編程( Text-Based Programming ),後者為拖拉式圖像化程式語言( Block-Based Programming )。讓我們先簡單介紹一下這兩種電腦程式的分別。

    大多數的電腦編程語言都是文字式編程,此方式是以一行一行的代碼來編寫程序,能夠有效率地建立所想要的電腦程式。一般來說,文字式編程是給予一些對電腦程式較熟悉的人士使用。但近年來,不同的平台也大力地推廣拖拉式圖像化程式語言,此方式是以拖放方塊來製作一個程序,基於方塊的形狀及顏色經過特別的設計,故令使用者較為容易掌握及使用。

    [row][double_paragraph]

    過往曾介紹的 trinket 網站,就具備兩種語言模式,初學者可一起接觸。
    過往曾介紹的 trinket 網站,就具備兩種語言模式,初學者可一起接觸。

    [/double_paragraph][double_paragraph]

    編程語言在語法或用字上稍有出錯,就需要除錯,學習上需顧及更多層面。
    編程語言在語法或用字上稍有出錯,就需要除錯,學習上需顧及更多層面。

    [/double_paragraph] [/row]

    在電腦程式閱讀方面,因為在文字式編程中需要使用大量的語法( Syntax ),初學者可能此並不熟悉,故此可能會在學習編寫程式的時候感到困難。但是在圖像化程式語言中,初學者較為容易理解圖像中所表的意思,對於一些未曾接觸過程式編寫的人士,也可以估計到程式中不同方塊的意思。

    [row][double_paragraph]

    在圖像化程式語言中,初學者較為容易理解圖像中所表的意思。
    在圖像化程式語言中,初學者較為容易理解圖像中所表的意思。

    [/double_paragraph][double_paragraph]

    使用者可按方塊的形狀方便地互相接駁。
    使用者可按方塊的形狀方便地互相接駁。

    [/double_paragraph] [/row]

    在程式編寫的工作流程中,在文字式編程中需要輸入代碼,過程中容易產生錯字, 例如誤用了大小楷英文字母,或只是遺漏了一個符號,整個程式便不能夠編譯。故此需要用較長的時間進行除錯( Debug )工作。不過,圖像化程式語言中進行,使用者可以按方塊的形狀互相接駁,或將它放在適當的位置中,減少了因為打錯字而產生的問題。

    經過上述的介紹,相信大家都會明白為甚麼入門或中小學生在開始學習編程,都會使用 Scratch 圖像化程式語言了。現在讓我們開始使用 Scratch
    來編寫 Chrome 小恐龍的遊戲。

    Scratch 2.0 Offline 程式

    在電腦使用 Scratch 程式,除了官方網站網上直接使用網上版本之外,還免費下載及安裝 Scratch 2.0 Offline Editor 。這是一個不需要連接網絡也可以使用的 Scratch 版本,方便遊戲裝置能夠安裝在一些沒有網絡服務提供的地方,也可以運作起來。一切準備妥當後,下期就讓我們開始製作 Chrome 小恐龍遊戲。

    [row][double_paragraph]

    Scratch有提供離線版。
    Scratch有提供離線版。

    [/double_paragraph][double_paragraph]

    官方網站提供程式編程外,也有簡單教學提供。
    官方網站提供程式編程外,也有簡單教學提供。

    [/double_paragraph] [/row]

    網上版: https://scratch.mit.edu
    Offline 版: https://scratch.mit.edu/download

    下星期待續……

    您會感興趣的內容

    相關文章