女人被躁到高潮嗷嗷叫游戏,久久久久亚洲av成人人电影,久久久精品人妻一区二区三区四,久久久久无码精品国产app,免费人成视频在线播放

留求藝—您的留學(xué)規(guī)劃師

問(wèn)怎么用java做游戲

306次

問(wèn)題描述:

怎么用java做游戲,麻煩給回復(fù)

最佳答案

推薦答案

I am xiaowutonxue. First and foremost, I would like to express my sincere gratitude to my supervisor, professor Hu Anjiang, for his intellectual guidance, invaluable instructions and comments on my thesis. It is with his valuable assistance that I have finally accomplished this thesis.我來(lái)了。

1.設(shè)計(jì)游戲,首先就要設(shè)計(jì)界面。首先看一下我設(shè)計(jì)的一個(gè)界面。界面分為左邊的游戲區(qū)與右邊的控制區(qū)。游戲區(qū)包含“得分信息”和貪吃蛇的游戲區(qū),右邊控制區(qū)有“開(kāi)始”“暫停”“停止”按鈕,等級(jí)選擇單選框以及游戲排行榜。

2. 所以我們需要定義swing組件,并在類初始化時(shí)初始化這些組件,添加組件。因?yàn)楹竺嬖O(shè)計(jì)游戲的時(shí)候,我們要確切知道游戲區(qū)的大小,所以這里設(shè)置游戲區(qū)固定大小值。本來(lái)想用布局來(lái)更好的管理,但作者對(duì)布局也掌握不夠,所以就先設(shè)置固定大小吧。

3. 定義我們的游戲。貪吃蛇游戲其實(shí)就是包含很多細(xì)小網(wǎng)格,然后蛇在網(wǎng)格中移動(dòng)。蛇由一連串的網(wǎng)格組成,為了視覺(jué)效果,蛇身用藍(lán)色標(biāo)記,食物用紅色標(biāo)記,背景白色。如第一張圖片所示。所以,我們需要定義二維數(shù)組,保存網(wǎng)格信息,保存蛇身和食物的位置信息等。初始化時(shí),還需要添加鍵盤事件控制上下左右移動(dòng)。

4. 豆豆的位置信息是二維的,所以我簡(jiǎn)單定義了一個(gè)類用來(lái)保存二維信息。

5. 接著就是實(shí)現(xiàn)游戲的功能了。開(kāi)始,暫停,停止按鈕添加事件控制游戲開(kāi)始。等級(jí)按鈕定義游戲難度等。

6. 開(kāi)始游戲后,我們定義一個(gè)定時(shí)器。蛇身按照指定的方向移動(dòng),方向是通過(guò)初始化時(shí)添加的鍵盤事件,鍵盤的上下左右按鈕來(lái)控制。蛇身是連續(xù)的位置信息,保存到隊(duì)列中,所以蛇身的移動(dòng)就是隊(duì)首增加一個(gè)位置,隊(duì)尾減少位置,然后重新繪畫(huà)游戲區(qū)就可以了。在蛇身移動(dòng)時(shí)進(jìn)一步做吃掉食物、撞墻、撞到自己的處理。這是游戲的主要邏輯。

7. 最后,游戲結(jié)束我們彈出一個(gè)對(duì)話框提示是否保存游戲得分。我們制作了排行榜信息,只保留前10名的游戲得分。首先定義了一個(gè)實(shí)現(xiàn)Comparable接口的游戲得分類,按得分高,時(shí)間最早來(lái)排序。

8. 游戲結(jié)束時(shí)保存得分信息,看是否進(jìn)入到排行榜中。而之前在初始化排行榜組件時(shí)就會(huì)加載游戲排行榜信息。通過(guò)保存和讀取排行榜信息,我們也熟悉一下文件讀取操作,還有集合、排序算法的功能。

9. 我是傳播愛(ài)與正義的小蕪?fù)瑢W(xué),我的回答結(jié)束。

怎么用java做游戲

其他答案

主要是用Java分支中的J2ME來(lái)寫(xiě),但是J2ME中需要Java的基礎(chǔ)知識(shí) 。

現(xiàn)在有大部分人,都是從零開(kāi)始學(xué)J2ME的,學(xué)習(xí)J2ME的時(shí)候,總是從Java基礎(chǔ)開(kāi)始學(xué)習(xí),而且現(xiàn)在講Java基礎(chǔ)的書(shū)籍中都是以J2SE來(lái)講基礎(chǔ),這就給學(xué)習(xí)造成了一些不必要的麻煩,下面將J2ME中用到的和不需要的Java基礎(chǔ)知識(shí)做一個(gè)簡(jiǎn)單的說(shuō)明。

J2ME中使用到的Java基礎(chǔ)知識(shí):

1、Java語(yǔ)法基礎(chǔ):包括基本數(shù)據(jù)類型、關(guān)鍵字、運(yùn)算符等等

2、面向?qū)ο蟮乃枷耄侯惡蛯?duì)象的概念,繼承和多態(tài)等等。

3、異常處理

4、多線程

J2ME中沒(méi)有用到的Java基礎(chǔ)知識(shí):

1、JDK中javac和java命令的使用

2、Java基礎(chǔ)中的很多類在J2ME中沒(méi)有,或者類中的方法做了大量的精簡(jiǎn)。所以建議在J2ME中熟悉類庫(kù)。

3、Applet、AWT、Swing這些知識(shí)在J2ME中根本使用不到。

簡(jiǎn)單說(shuō)這么多,希望學(xué)J2ME的朋友們能少走一些彎路,不足之處希望大家積極指正和補(bǔ)充

1

相關(guān)問(wèn)題全部

其他答案

啊,不止一次的被問(wèn)過(guò)這個(gè)問(wèn)題。

作為世界上最強(qiáng)大的開(kāi)源語(yǔ)言之一,Java能做任何事,寫(xiě)個(gè)框架?寫(xiě)個(gè)程序?或者說(shuō)——做個(gè)游戲?

但首先你得會(huì)使用引擎——unity、虛幻,哪怕是寒霜都成,但你得會(huì)一個(gè)。

然后是最難的部分之一——模型,和貼圖。一般來(lái)說(shuō),3DSMAX較多的用作游戲開(kāi)發(fā),但如果是虛幻,MAYA更方便一些。建好模型,再繪制貼圖,把它扔到引擎里,第一步就算完成了。

然后,繪制場(chǎng)景——這需要你擁有高超的關(guān)卡設(shè)計(jì)能力,這步通常需要很長(zhǎng)時(shí)間的學(xué)習(xí)。

然后你就可以進(jìn)行程序開(kāi)發(fā)了,使用Java,制作主程序,再在主程序的基礎(chǔ)上,制作條件、精靈,和任務(wù)等等。

最后,再用你那高超的UI設(shè)計(jì)能力,做一個(gè)UI,除錯(cuò)后打包,你的游戲就算是完成了!

題主加油,等著你的游戲。

其他答案

Java可以做3D游戲,可以做非??犰诺?D游戲,性能并不比那些C++的引擎差!而開(kāi)發(fā)效率又要高處好幾個(gè)數(shù)量級(jí)!

為什么呢?因?yàn)橛螒虻讓拥膱D形渲染實(shí)質(zhì)上都是OpenGL或者Direct3D,現(xiàn)代游戲引擎不大可能讓你手動(dòng)去做圖形運(yùn)算,復(fù)雜的東西都是交給底層的dll/so靜態(tài)庫(kù)文件以及GPU執(zhí)行的,上層代碼主要做好場(chǎng)景管理和邏輯控制。這也是為什么Unity3D這個(gè)引擎居然可以使用 C# 和 JavaScript 作為它的游戲腳本,而從來(lái)沒(méi)有人說(shuō)Unity3D引擎的游戲性能差。

另外,游戲的畫(huà)面,不管3D還是2D游戲,影響畫(huà)面效果的主要因素是游戲素材,而不是編程語(yǔ)言。

3D游戲又有獨(dú)特的著色器語(yǔ)言專門負(fù)責(zé)圖形特效。什么HDR、PBR、SSAO、動(dòng)態(tài)模糊、次世代法線貼圖,通通都是靠Shader搞定的,跟你用什么語(yǔ)言來(lái)寫(xiě)游戲邏輯沒(méi)有半毛錢關(guān)系。

反觀 Java 本身的性能,現(xiàn)代編程語(yǔ)言除了 C/C++,真沒(méi)有哪個(gè)敢在 Java 面前夸自己性能的。而且 Java 有眾多的開(kāi)源類庫(kù),憑什么我們不能用 Java來(lái)做游戲呢?

誠(chéng)然,Unity3D、CryEngine、Unreal這樣的商業(yè)引擎不僅僅是個(gè)游戲引擎,它們還有很多成熟的配套工具和資源工廠,這是Java游戲引擎所不具備的。

為你推薦

網(wǎng)站首頁(yè)  |  關(guān)于我們  |  聯(lián)系方式  |  用戶協(xié)議  |  隱私政策  |  在線報(bào)名  |  網(wǎng)站地圖