freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

俄羅斯方塊論文俄羅斯方塊設(shè)計(jì)報(bào)告-資料下載頁(yè)

2025-08-24 19:57本頁(yè)面

【導(dǎo)讀】但是游戲設(shè)計(jì)結(jié)合了日新月異的技術(shù),在一個(gè)產(chǎn)品中整合了復(fù)雜的設(shè)計(jì)、藝術(shù)、聲音和軟件,所以并不是人人皆知。直到今天,在中國(guó)從事游戲設(shè)計(jì)的人仍然很。才的教育、培養(yǎng)遠(yuǎn)落后于產(chǎn)業(yè)的發(fā)展。然后程序根據(jù)這七種方塊。堆疊成各種不同的模型。論文描述了游戲的歷史,開(kāi)發(fā)此游戲的環(huán)境,游戲開(kāi)發(fā)的意義。知識(shí),從軟件問(wèn)題定義開(kāi)始,接著進(jìn)行可行性研究、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì),最后對(duì)軟件進(jìn)行了測(cè)試,整個(gè)開(kāi)發(fā)過(guò)程貫穿軟件工程的知識(shí)體系。

  

【正文】 制器 處理按鍵事 件 處理邏輯 顯示面板 顯示 生產(chǎn) 圖形工廠 圖形 障礙物 生產(chǎn) 圖形 下落產(chǎn)生障礙物 觸發(fā)按鍵事件 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 12 視圖 層 (View)功能模塊圖設(shè)計(jì) 控制層 (Controller)功能模塊圖設(shè)計(jì) 游戲面板 GamePanel 方塊的顯示 障礙物的顯示 中央控制器 Controller 類 圖形工廠生產(chǎn)圖形 顯示面板顯示圖形和障礙物 處理按鍵和鼠標(biāo)事件 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 13 5. 詳細(xì) 設(shè)計(jì) 模型層 (Model)設(shè)計(jì) 圖形的產(chǎn)生 通過(guò)圖形工廠類 ShapeFactory的 getShape(ShapeListener listener)方法隨機(jī)產(chǎn)生 方塊的某種狀態(tài), 這里運(yùn)用了工廠設(shè)計(jì)模式, 這種 設(shè)計(jì)模式是為了實(shí)現(xiàn)高內(nèi)聚低耦合而存在的 ,這種設(shè)計(jì)模式的通俗解釋就是: 你想要一個(gè)產(chǎn)品 ,你需要讓工廠給你生產(chǎn)一個(gè) , 你要告訴工廠你要生產(chǎn)什么產(chǎn)品 , 就把你需要生產(chǎn)的這個(gè)產(chǎn)品當(dāng)做參數(shù)傳給工廠類的生產(chǎn)產(chǎn)品的方法 , 然后根據(jù)你傳進(jìn)來(lái)的產(chǎn)品 , 而決定工廠人生產(chǎn)什么產(chǎn)品 , 產(chǎn)生出來(lái)產(chǎn)品后 , 最后要返回您要的 這個(gè)東西 。 圖形 的數(shù)據(jù)結(jié)構(gòu) 定義一個(gè) 4x4 方陣, 共 16 個(gè)小格。 用“ 0”和“ 1”來(lái)表示每個(gè)方格是繪制還是空白,由此可以組合出多種圖形, 如圖所示 : 7 6 5 4 3 2 1 隨機(jī)產(chǎn)生一個(gè)數(shù) 隨機(jī)數(shù) 一字形 Z 字形 反 Z形 7 字形 反 7 形 倒 T 形 田字型 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 14 其中圖一表示為 {0, 0, 0, 0, 1, 1, 1, 1 , 0, 0, 0, 0, 0, 0, 0, 0} 其中圖二表示為 {0, 0, 0, 0, 0, 1, 1, 0 , 0, 1, 1, 0, 0, 0, 0, 0} 其中圖三表示為 {0, 0, 0, 0, 0, 1, 0, 0 , 0, 1, 1, 1, 0, 0, 0, 0} 其中圖四表示為 {0, 0, 0, 0, 0, 1, 0, 1 , 0, 1, 1, 0, 0, 0, 1, 0} 方塊的旋轉(zhuǎn)是通過(guò)繪制 4 個(gè)方向的方塊,在不同旋轉(zhuǎn)角度顯示不同方向的方塊來(lái)完成的。所以程序要控制方塊的旋轉(zhuǎn)方向,只要控制顯示哪副圖就可以了。 本游戲是用一個(gè)三維數(shù)組 int[][][] shapes = new int[][][]; 作為存儲(chǔ)方塊的數(shù)據(jù)結(jié)構(gòu)來(lái)保存方塊的 28 種狀態(tài)的 。 圖形的移動(dòng) 圖形類 Shape 保存了自己的位置信息, 用 left 表示圖形到左邊界的距離, top 表示圖形到上邊界的距離,圖形移動(dòng)就是改變 left 和 top 的 值。 向上移動(dòng): top 減 1, 向下移動(dòng): top 加 1, 向左移動(dòng): left 減 1, 向右移動(dòng): left 加 1。 圖形的移動(dòng)分為圖形的自動(dòng)下落以及通過(guò)按鍵事件實(shí)現(xiàn)圖形 的左移、右移以及加速下移。 通過(guò)多線程 ShapeDriver 類來(lái)實(shí)現(xiàn)圖形的自動(dòng)下移, 由于游戲中方塊的動(dòng)態(tài)性,每個(gè)方塊有一定的生命周期,所以選用線程來(lái)實(shí)現(xiàn)方塊。一個(gè)方塊用一個(gè)線程類對(duì)象實(shí)現(xiàn),該類繼承與 Thread 類,當(dāng)一個(gè)方塊出現(xiàn)時(shí)也就表示一個(gè)線程對(duì)象產(chǎn)生并開(kāi)始運(yùn)行。通過(guò)對(duì)按鍵事件的響應(yīng), 實(shí)現(xiàn)圖形的左移、右移以及加速下移。 圖形的變形 通過(guò) int type = new Random().nextInt()。 (shapes[type])。 (0)。實(shí)現(xiàn)初始圖形的初始化, 通過(guò) status = (status + 1) % 。實(shí)現(xiàn)圖形的變形功能。 存儲(chǔ)和表示障礙物 用一個(gè)和顯示區(qū)域的面板大小相對(duì)應(yīng)的二維數(shù)組保存障礙物的位置信息, 如果對(duì)應(yīng)的位置是障礙物,則這個(gè)數(shù)組中相應(yīng)的元素就為 1,否則就為 0。 如何把圖形變成障礙物呢?只要把屬于圖形的格子對(duì) 應(yīng)的位置都變成障礙物即可。 代碼如下: public boolean isMember(int x, int y, boolean rotate) { int tempStatus = status。 if(rotate) { tempStatus = (status + 1) % 。 } 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 15 return body[tempStatus][y*4 + x] == 1。 } public void accept(Shape shape) { (Ground39。s accept)。 for(int x=0。 x4。 x++) { for(int y=0。 y4。 y++) { if((x, y, false)) { if((() + x) amp。amp。 (() + y)) zaw[() + x][() + y] = 1。 } } } } 判斷滿行及消行 如果某一行沒(méi)有空白,則這一行就是滿行。 滿的那行上面所有的行整體下移一行就是消除這個(gè)滿行。 代碼如下: private void deleteFullLine() { for(int y=。 y=0。 y) { boolean full = true。 for(int x=0。 x。 x++) { if(zaw[x][y] == 0) { full = false。 } } if(full) { deleteLine(y)。 } } } private void deleteLine(int lineNum) { for(int y=lineNum。 y0。 y) { for(int x=0。 x。 x++) { zaw[x][y] = zaw[x][y1]。 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 16 } } for(int x=0。 x。 x++) { zaw[x][0] = 0。 } deleteFullLine()。 } 利用循環(huán)語(yǔ)句從屏幕最底行依次向上對(duì)有方塊的每一行進(jìn)行判斷, 判斷某一行中是否有空白,如果沒(méi)有空白的話, 則 將當(dāng)前的行號(hào)傳遞給 deleteLine(int lineNum)方法 , 由該方法實(shí)現(xiàn)消除當(dāng)前行,并將上面的方塊依次下移一行,最后再重新調(diào)用 deleteFullLine()方法進(jìn)行查找 ,直到所有行都檢查一遍結(jié)束。 視圖層 (View)設(shè)計(jì) 方塊的顯示 通過(guò) 視圖層的 GamePanel 類的 paint(Graphics g)方法調(diào)用 Shape類的 drawMe(Graphics g)方法,從而實(shí)現(xiàn)方塊的繪制,代碼如下: public void drawMe(Graphics g) { ()。 for(int x=0。 x4。 x++) { for(int y=0。 y4。 y++) if(getFlagByPoint(x, y)) { (new Shape().shapeColor)。 ((left + x)*, (top + y)*, , , true)。 } } } 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 17 障礙物的顯示 通過(guò)視圖層的 GamePanel 類的 paint(Graphics g)方法調(diào)用 Ground 的 drawMe(Graphics g) 方法,從而實(shí)現(xiàn)障礙物的繪制,代碼如下: public void drawMe(Graphics g) { for(int x=0。 x。 x++) { for(int y=0。 y。 y++) { if(zaw[x][y] == 1) { (x*, y*, , , true)。 } } } } 控制層 (Controller)設(shè)計(jì) 控制層主要是實(shí)現(xiàn)圖形工廠生產(chǎn)圖形, 圖形按鍵事件的處理, 方塊、障礙物顯示的控制, 圖形自動(dòng)下落和障礙物生成的控制 。 通過(guò)控制層這個(gè)大管家最終實(shí)現(xiàn)此俄羅斯方塊的按鍵事件的 處理以及各種邏輯的處理。 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 18 游戲演示 游戲界面顯示 開(kāi)始和結(jié)束控制菜單 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 19 分?jǐn)?shù)和等級(jí)查看菜單 變換方塊菜單 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 20 幫助菜單 5. 系統(tǒng)測(cè)試 游戲界面菜單選項(xiàng)的功能測(cè)試 (1) “控制 ”菜單測(cè)試 ①點(diǎn)擊“游戲” ?“ 開(kāi)始 ” 輸出:游戲開(kāi)始 結(jié)果:正常 ②點(diǎn)擊“游戲” ?“結(jié)束” 輸出:彈出 游戲結(jié)束提示框 結(jié)果:正常 (2) “查看 ”菜單測(cè)試 ①點(diǎn)擊“查看” ?“ 分?jǐn)?shù) ” 輸出: 在游戲面板中間跳出分?jǐn)?shù)顯示 框 結(jié)果:正常 ②點(diǎn)擊“查看” ?“ 級(jí)別 ” 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 21 輸出: 在游戲面板中間跳出級(jí)別顯示框 結(jié)果:正常 (3) “變換 ”菜單測(cè)試 ①點(diǎn)擊“變換” ?“改變方塊” 輸出:在游戲面板中 顯示隨機(jī)產(chǎn)生的某種方塊 結(jié)果:正常 按鍵事件的功能測(cè)試 (1) 方塊移動(dòng)測(cè)試 游戲過(guò)程中,點(diǎn)擊“左、右、下”方向鍵 輸出: 方塊正常移動(dòng),不會(huì)移出邊界 結(jié)果:正常 (2) 方塊 反轉(zhuǎn) 測(cè)試 游戲過(guò)程中,點(diǎn)擊 向上 方向鍵 輸出:方塊 無(wú)邊界和障礙物阻擋的情況下可反轉(zhuǎn) 結(jié)果:正常 方塊堆砌與消行測(cè)試 (1) 當(dāng)方塊下落 到最底面或與障礙物接觸時(shí) 輸出: 方塊成功堆砌在底部 結(jié)果:正常 (2) 當(dāng)出現(xiàn)滿行現(xiàn)象時(shí) 輸出: 所有滿行被消除 , 方塊依次下移 結(jié)果:正常 測(cè)試結(jié)果分析 經(jīng)過(guò)測(cè)試,本游戲?qū)崿F(xiàn)了基本的功能, 不過(guò)整體功能還不是很強(qiáng)大, 作為開(kāi)發(fā)的第一個(gè)版本,游戲在很多方面還需要進(jìn)一步完善。 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 22 結(jié) 論 游戲設(shè)計(jì)與實(shí)踐是一項(xiàng)復(fù)雜而且龐大的工作,在選題之后,我才意識(shí)到過(guò)程的艱難,因?yàn)橐郧皬膩?lái)沒(méi)有接觸過(guò)游戲設(shè)計(jì),剛開(kāi)始時(shí)有點(diǎn)迷茫和彷徨。后來(lái)通過(guò)看書(shū)和在網(wǎng)上查找資料,逐漸找到了一些感覺(jué),也依照資料自己動(dòng)手編寫(xiě)了幾個(gè)簡(jiǎn)單 經(jīng)典的游戲。本文僅以俄羅斯方塊為例予以說(shuō)明。 本次設(shè)計(jì)讓我初步懂得了電子游戲所涉及到的有關(guān)技術(shù)、方法,包括電子游戲分類、選題、構(gòu)思等。并實(shí)現(xiàn)幾個(gè)可演示的游戲軟件,其中有很多應(yīng)用了學(xué)習(xí)的相關(guān)技術(shù),并且做到了圖、文、聲并茂,能實(shí)際演示。此次設(shè)計(jì)過(guò)程中印象最深的收獲有: 學(xué)到了很多新知識(shí),并且對(duì)老知識(shí)進(jìn)行了回顧。經(jīng)過(guò)長(zhǎng)時(shí)間的學(xué)習(xí),更進(jìn)一步熟悉了 Java語(yǔ)言。 通過(guò)不斷上機(jī)實(shí)驗(yàn),調(diào)試程序,總結(jié)經(jīng)驗(yàn),從對(duì)課題的不理解到能夠開(kāi)始動(dòng)手去做,提出問(wèn)題并自己想辦法解決問(wèn)題,自己多實(shí)踐,所以增強(qiáng)了動(dòng)手能力。 提高了中、英 文資料的檢索能力。這次畢業(yè)設(shè)計(jì)過(guò)程中我查閱了很多資料,不但有圖書(shū)館的期刊、雜志、館藏圖書(shū),還有網(wǎng)絡(luò)中的電子文檔、電子書(shū)籍、網(wǎng)頁(yè)及下載的視頻教學(xué)課程;不但有中文資料還有英文資料。這些資料,使我的眼界更開(kāi)闊,對(duì)課題的認(rèn)識(shí)更加深刻,編寫(xiě)程序的時(shí)候思路更加清楚,少走了很多彎路。 但如果真的要從事游戲設(shè)計(jì)的工作 , 需要走的路還很長(zhǎng),即便是對(duì)于國(guó)際知名的大公司,也是在不斷的探索和實(shí)踐中前進(jìn)。但這并不表明前途就是渺茫的,通過(guò)這次實(shí)踐 ,進(jìn)行了一次從底而上和自上而下的歸納和演繹的過(guò)程,在變化多端的游戲面前 , 總算領(lǐng)悟了一點(diǎn)它的奧 妙。內(nèi)容繁復(fù)、采用的表現(xiàn)手段多姿多彩的游戲世界,即便是再?gòu)?fù)雜,也可以通過(guò)一定程度的歸納演繹得出適應(yīng)其規(guī)則和表現(xiàn)的契合點(diǎn)。 回顧這個(gè)設(shè)計(jì)過(guò)程 ,我學(xué)到了許多書(shū)本上沒(méi)有學(xué)到的知識(shí)。通過(guò)這次自己制作的軟件 ,豐富了自己的實(shí)踐技能 ,擴(kuò)展了本專業(yè)的知識(shí)面 ,使我受益非淺 ,同時(shí)也體驗(yàn)到了搞軟件開(kāi)發(fā)的 困 難度。在這次設(shè)計(jì)的同時(shí) ,我又從中學(xué)到了許多東西。但由于我對(duì)這樣的軟件開(kāi)發(fā)還只是一個(gè)開(kāi)始, 了解的不多, 這其中或許還有很多的不足,有些模塊做得不是很好,有些功能還不能夠完全的實(shí)現(xiàn), 如不能把要裝載的方塊提前顯示出來(lái)。 因此做得不是很好, 界面的設(shè)計(jì)及整體的布局還比較簡(jiǎn)單,沒(méi)有突出特色出來(lái),這也可能是我這個(gè)系統(tǒng)的不足之處 。 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 23 致 謝 經(jīng)過(guò)一個(gè)多 月的不斷努力 ,畢業(yè)設(shè)計(jì)內(nèi)容已經(jīng)基本上完成了。 首先,在這里我要由衷地感謝我的指導(dǎo)老師 梁光春 教授。他在畢業(yè)設(shè)計(jì)期間對(duì)本人給予了悉心指導(dǎo)和大力幫助。在畢業(yè)設(shè)計(jì)期間,在我的課題設(shè)計(jì)和論文撰寫(xiě)過(guò)程中對(duì)我進(jìn)行了認(rèn)真檢查,嚴(yán)格督促和仔細(xì)批閱,并對(duì)我的課題提出了許多富有啟發(fā)性和建設(shè)性的意見(jiàn)和建議。 同時(shí)我也要非常感謝班上的同學(xué) ,一直以來(lái)都是 他 們 在身邊督促我,我們互相鼓勵(lì)共同進(jìn)步。 最后,在這里還要對(duì)我的家人和 遠(yuǎn)方的朋友表示深深的感謝,他們?cè)诰窈臀镔|(zhì)上都給了我莫大的支持,沒(méi)有他們的關(guān)懷和愛(ài)護(hù),我想我就無(wú)法順利地完成這次畢業(yè)設(shè)計(jì)。 參 考 文 獻(xiàn) [1] 羅偉堅(jiān)著 .Visual C++經(jīng)典游戲程序設(shè)計(jì) [M].北京 :人民郵電出版社, 仰恩大學(xué)畢業(yè)設(shè)計(jì)(論文) 24 [2] 朱福喜著 . Java 程序設(shè)計(jì)技巧與開(kāi)發(fā)實(shí)例 [M].北京 :人民郵電出版社, [3] 趙東躍著 .俄羅斯方塊編程 [M].電腦編程技巧與維護(hù) ,1998年第六期 [4] 陸惠恩著 . 實(shí)用軟件工程 [M].北京 :清華大學(xué)出版社, [5] 黃復(fù)賢著 .俄羅斯方塊游戲的敏捷設(shè)計(jì)與開(kāi)發(fā) [M]. 電腦編程技巧與維護(hù), [6] (美 )Bruce Eckel 著, 陳昊天 譯 .Java編程思想 [M].北京 :機(jī)械工業(yè)出版社 ,
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1