亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于JAVA平臺的flappybird游戲設(shè)計(jì)

        2018-01-04 12:02:04謝昊昝鄉(xiāng)鎮(zhèn)
        電腦知識與技術(shù) 2018年29期
        關(guān)鍵詞:游戲

        謝昊 昝鄉(xiāng)鎮(zhèn)

        摘要:在不少人眼中,電子游戲是第九藝術(shù),容易被青少年接受,所以具有極大的市場。但是當(dāng)今社會,生活節(jié)奏飛快,大部分人已經(jīng)沒法靜下心來花大量時間去玩某個“3A”大作。而flappy bird游戲正是一款快節(jié)奏的Side-Scrolling (橫向卷軸)游戲。該文以當(dāng)前比較熱門的JAVA語言,在需求分析的基礎(chǔ)上,開發(fā)并設(shè)計(jì)了經(jīng)典的flappy bird游戲。

        關(guān)鍵詞:JAVA;游戲;flappy bird;事件處理;IntelliJ IDEA

        中圖分類號:TP317 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2018)29-0077-03

        Abstract: In the eyes of many people, video games are the ninth art, easily accepted by young people. In today's society, the pace of life is fast, most people have been unable to settle down to spend a lot of time playing "3A" games. But the flappy bird game is a fast-paced Side-Scrolling (horizontal scroll) game. With the help of the current popular JAVA language, this paper develops and designs the classic flappy bird game based on the demand analysis.

        Key words: JAVA; game development; flappy bird; event processing; IntelliJ IDEA

        1 背景

        開發(fā)游戲的語言不止一種,JAVA是當(dāng)前比較流行的一門編程語言,因其是一種可以撰寫跨平臺應(yīng)用程序的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言[1],并具有卓越的通用性、高效性和平臺移植性,同時,JAVA語言在游戲開發(fā)方面, 又因?yàn)槠湔Z言嚴(yán)謹(jǐn)、可讀性強(qiáng)、高度的便利性等優(yōu)勢,在游戲開發(fā)中具有非常重要的地位[2]。

        當(dāng)今社會,生活節(jié)奏飛快,大部分人已經(jīng)沒法靜下心來花大量時間去玩某個“3A”大作。但flappy bird游戲正是一款快節(jié)奏的Side-Scrolling (橫向卷軸)游戲,方便人們在等車或者其他碎片化時間里去耍上幾局。它由來自越南的獨(dú)立游戲開發(fā)者Dong Nguyen所制作,游戲于2013年5月24日上線,并在2014年2月突然爆紅,可謂是游戲史上的一朵奇[3]。游戲雖然難度極大,新人上手困難,但是通過游戲分?jǐn)?shù)的排名,它讓人產(chǎn)生強(qiáng)烈的競爭欲,即使“受苦”也樂此不疲。該文基于JAVA平臺對flappy bird游戲進(jìn)行設(shè)計(jì)和開發(fā)。整個游戲在Microsoft Windows10 64位操作系統(tǒng)下,利用Intelli J IDEA 2017.2.4 x64開發(fā)工具進(jìn)行開發(fā)。游戲模式的選擇使用鼠標(biāo)進(jìn)行操作;游戲中小鳥的控制使用鼠標(biāo)或者方向鍵上操作。

        2 需求分析與系統(tǒng)結(jié)構(gòu)

        2.1 功能需求

        通過對flappy bird游戲的多次試玩和深入分析,可以發(fā)現(xiàn),該款游戲雖然沒有華麗的游戲畫面,劇情幾乎為零,也不可能通關(guān),但每次分?jǐn)?shù)的提高都讓人無比激動。游戲中的圖形設(shè)計(jì)和界面的美化至關(guān)重要,玩家通過點(diǎn)擊鼠標(biāo)操縱小鳥在屏幕中向上移動,游戲剛開始時屏幕的右邊開始出現(xiàn)水管。游戲中水管會每隔一段距離放置,如果成功越過一個水管,分?jǐn)?shù)加一,反之則跳轉(zhuǎn)到game over畫面。

        像大多數(shù)游戲一樣,初始界面里有開始游戲和退出游戲的按鈕。開始游戲后,小鳥出現(xiàn)在屏幕中,有撲騰著翅膀的動畫效果,并根據(jù)重力加速度下落;而背景的藍(lán)天白云隨小鳥移動而移動;玩家輕點(diǎn)鼠標(biāo)控制小鳥控制向上移動。

        2.2 總體結(jié)構(gòu)

        flappy bird游戲的總體設(shè)計(jì)分為五個模塊,總體結(jié)構(gòu)設(shè)計(jì)圖如圖1所示。

        3 游戲數(shù)據(jù)流程

        flappy bird游戲的數(shù)據(jù)流程如圖2所示。

        玩家打開游戲,點(diǎn)擊相應(yīng)位置后開始游玩,游戲全程只需要點(diǎn)擊鼠標(biāo)。一旦進(jìn)入游戲,就對游戲資源初始化,之后小鳥會往下掉落。然后判斷小鳥是否與水管相撞或者是落地,如果未相撞則獲得相應(yīng)的分?jǐn)?shù)獎勵并繼續(xù)往下掉落。如果相撞,則游戲結(jié)束。

        4 核心功能模塊的設(shè)計(jì)

        該款游戲具有以下3種特性:穩(wěn)定性,即游戲進(jìn)行時不會出現(xiàn)故障;可維護(hù)性,即在不破壞玩家數(shù)據(jù)的前提下進(jìn)行維護(hù)修復(fù)程序BUG;擴(kuò)展性,即在原有基礎(chǔ)上有添加更多的內(nèi)容,使游戲煥發(fā)出新的生命力。下面,我就詳細(xì)介紹一下游戲中核心功能模塊的實(shí)現(xiàn)。

        4.1 界面設(shè)計(jì)

        通過Swing工具包完成面板的整體布局。利用JFrame作為大的容器,在窗體里設(shè)置三個JPanel面板,分別作為開始界面,游戲界面和游戲結(jié)束界面,在相應(yīng)時刻設(shè)置面板是否可見。

        創(chuàng)建一個MyPanel類繼承于JPanel類,對Jpanel類中的paintComponent ()方法進(jìn)行重寫,以便程序在繪制不斷向左滾動的背景時,MyPanel線程調(diào)用repaint()方法時能實(shí)現(xiàn)背景移動和小鳥撲騰翅膀的效果。

        4.2 動畫設(shè)計(jì)

        動畫設(shè)計(jì)里包括小鳥撲騰翅膀的動態(tài)效果、友好的人機(jī)交互、背景圖片的滾動以及水管的隨機(jī)高度。

        為了實(shí)現(xiàn)友好的人機(jī)交互,需要通過java中的事件處理技術(shù)實(shí)現(xiàn)點(diǎn)擊按鈕的反應(yīng)。當(dāng)單擊單人模式選項(xiàng)時,會產(chǎn)生一個ActionEvent事件,或者在游戲正式開始時,只要玩家觸碰鍵盤上的方向鍵,就會產(chǎn)生一個KeyEvent事件,之后Java虛擬機(jī)(JVM)檢測項(xiàng)目中與該選項(xiàng)或方向鍵對應(yīng)的事件處理器是否存在,事件處理器實(shí)質(zhì)是一個方法,如mouseClicked ()方法。JVM通過傳遞過來的 MouseEvent或者keyEvent對象,獲得事件發(fā)生時與該事件及事件源相關(guān)聯(lián)的信息。

        4.3 碰撞檢測的設(shè)計(jì)

        碰撞檢測算法有:點(diǎn)與矩形碰撞、點(diǎn)與圓形碰撞、矩形之間碰撞、圓形之間碰撞等[4]。flappy bird游戲中碰撞檢測的方法是點(diǎn)與矩形碰撞,將游戲中的小鳥近似地看作矩形,水管看作點(diǎn),如果小鳥的矩形部分和點(diǎn)重合即發(fā)生碰撞。只要游戲中的實(shí)體對象(小鳥、水管)的位置發(fā)生了變化,就需要執(zhí)行碰撞檢測算法。

        4.4 音效的設(shè)計(jì)

        電子游戲是一門集合了美學(xué)、動畫、音樂、交互設(shè)計(jì)等元素的第九藝術(shù)。影響同樣類型的兩款游戲之前熱度持續(xù)的因素有很多,其中背景音樂(bgm)可能是重要的一點(diǎn)。背景音樂能夠影響游戲的節(jié)奏感,體現(xiàn)一款游戲的本質(zhì)。背景音樂有從悠揚(yáng)到急促的過渡,才能讓玩家更容易獲得愉快的體驗(yàn)感,增強(qiáng)游戲的重復(fù)可玩性。或者說,游戲節(jié)奏對孕育游戲產(chǎn)品的深層魅力起著不可或缺的作用;控制游戲節(jié)奏,當(dāng)是游戲開發(fā)設(shè)計(jì)中的一個關(guān)鍵環(huán)節(jié);優(yōu)秀的游戲不僅善于通過音樂渲染氣氛,也幾乎都善于使用音樂去控制玩家的交互頻率[5],追求游戲節(jié)奏構(gòu)思的良好實(shí)現(xiàn),讓玩家在游戲中減少無聊感。

        4.5 數(shù)據(jù)庫的設(shè)計(jì)

        常用操作是:

        1)加載驅(qū)動程序:Class.forName(driverClass);

        2)獲得數(shù)據(jù)庫連接DriverManager.gerConnection(URL,user,password);

        3)創(chuàng)建Statement對象:conn.createStatement();

        4)向數(shù)據(jù)庫發(fā)送SQL命令;

        5)最后處理數(shù)據(jù)庫的返回結(jié)果(ResultSet類)。

        5 測試

        該游戲的測試方法主要是通過試玩來發(fā)現(xiàn)問題,然后根據(jù)記錄的問題對游戲進(jìn)行相應(yīng)的改進(jìn),然后再一次測試。最終,打開游戲,游戲的界面各個部分正常顯示,如圖3、4、5所示。

        6 結(jié)束語

        該文在需求分析的基礎(chǔ)上,概述了基于java的flappy bird游戲需要設(shè)計(jì)與實(shí)現(xiàn)的基本功能,以 idea作為開發(fā)平臺,成功完成各個核心功能。在調(diào)試bug的同時,我也看到了不少完善的空間,比如添加不同難度的模式和游戲音樂的變化等,有利于游戲可玩性進(jìn)一步的提高。

        參考文獻(xiàn):

        [1] 王紅偉, 李會凱. 計(jì)算機(jī)軟件開發(fā)的Java編程語言探究[J]. 無線互聯(lián)科技, 2018, 15(10): 56-57.

        [2] 許益凡, 薛益鴿. 基于JAVA平臺的魔塔游戲設(shè)計(jì)[J]. 智能計(jì)算機(jī)與應(yīng)用, 2018, 8(3): 235-239, 243.

        [3] 張書樂. 爆紅的手機(jī)小游戲《Flappy Bird》[J]. 信息與電腦: 理論版, 2013(12): 13.

        [4] 周貴志. 碰撞檢測算法[EB/OL].http://blog.csdn.net/jjwwmlp456/article/details/40679879.

        [5] 趙錕. 基于電子游戲節(jié)奏的游戲音樂簡析[J]. 音樂傳播, 2018(2): 123-124.

        【通聯(lián)編輯:謝媛媛】

        猜你喜歡
        游戲
        游戲
        數(shù)獨(dú)游戲
        瘋狂的游戲
        飛碟探索(2016年11期)2016-11-14 19:34:47
        爆笑游戲
        第八章直接逃出游戲
        第八章 直接逃出游戲
        四虎永久在线精品免费观看地址| 文字幕精品一区二区三区老狼| 日产乱码一二三区别免费l| 午夜福利院电影| 正在播放亚洲一区| 太大太粗太爽免费视频| 日韩精品免费视频久久| 加勒比hezyo黑人专区| 亚洲自偷自拍熟女另类| 国产亚洲sss在线观看| 99国语激情对白在线观看| 亚洲国产中文字幕视频| 天码人妻一区二区三区| 久久精品国产热| 精品国产3p一区二区三区| 午夜性刺激免费看视频| 日日噜噜噜夜夜爽爽狠狠视频| 久久亚洲伊人| 日韩精品视频av在线观看| 男女肉粗暴进来动态图| 人妻少妇邻居少妇好多水在线| 国产自在自线午夜精品视频在 | 国产麻豆精品一区二区三区v视界| 秋霞国产av一区二区三区| 风韵犹存丰满熟妇大屁股啪啪| 无码av一区二区大桥久未| 欧美激情在线不卡视频网站| 亚洲精品视频免费在线| 在线观看一级黄片天堂| 海角国精产品一区一区三区糖心| 亚洲中文字幕乱码免费| 激情五月六月婷婷俺来也| 无码熟妇人妻av影音先锋| 久久亚洲国产精品成人av秋霞| 亚洲av熟女天堂系列| 真实夫妻露脸爱视频九色网| 国产精品爽黄69天堂a| 亚洲欧美日韩中文v在线| 国产91极品身材白皙| 蜜桃一区二区三区| 日本国产视频|