欧美国产日韩精品-欧美国产日韩久久久-欧美国产日韩一区二区三区-欧美国产日韩在线-台湾毛片-台湾美女古装一级毛片

Java3D的坦克游戲設計策略

來源:期刊VIP網所屬分類:計算機應用時間:瀏覽:

  Java3D是由SUN公司在1998年年底正式推出的交互式三維圖形應用編程接口。它的思想來源于現存的各種圖形API及多種新技術,它包含了實現三維交互真實感圖形的基本類和接口,用于實現三維動畫的生成及多媒體程序和交互程序的編寫,是Java語言在三維領域的擴展。

  近幾年來,3D硬件繪圖技術的突破,使得實時描繪的畫面越來越精致,3D游戲更多元化,更逼近真實世界,因此在游戲產業中,3D游戲已經逐漸取代2D游戲而成為游戲市場的主流,即使是網絡游戲,也慢慢趨向3D化。雖然開發3D游戲存在著諸如技術更新快、程序人員與美工的配合要求高、各廠商所生產的3D硬件規格和特性不同、失敗率高等問題,但不可否認,3D游戲己是大勢所趨。目前Java3D在游戲開發領域已經占到了重要的地位,可應用在三維動畫、三維游戲、機械CAD等多個領域,在許多情況下已成為游戲開發者的首選。Java3D也是目前在Interact上實現三維動畫的主要手段之一。

  Java3D是建立在Java2基礎之上的,Java語言的簡單性使Java3D的推廣有了可能。Java3D給我們編寫三維應用程序提供了一個非常完善的API,它可以幫助我們生成簡單或復雜的形體。因此,利用Java3D設計一個具有互動性的坦克射擊游戲,對于三維技術的探索和研究,具有實際意義。

  1、Java3D介紹

  利用Java3D提供的API,可以編寫出基于網頁的三維動畫、各種計算機輔助教學軟件和三維游戲等等。Java3D的這種體系結構既可以使其開發的程序“到處運行”,又使其能充分利用系統的三維特性。

  Java3D的數據結構采用Scene Graphs Structure,這種靈活的樹狀結構與顯示列表多少有些相似之處,但更具有健壯性。Java3D的場景圖由Java3D在計算機上顯示出三維效果,顯示內存不斷接受JavaSD運行的最新結果并直接顯示出來,從而產生三維動畫效果。

  2、系統的設計與分析

  2.1基本形體的生成

  Java3D編程過程中,三維形體是重要的處理對象。可以用兩種方式生成Java3D所需要的三維形體:一是利用Java3D提供的用于編寫點、線、面的類生成點、線、面對象;二是通過調用外部其他格式的三維圖形文件,生成復雜的三維形體對象。

  (1)面的生成

  Java3D的點、線、面時,需要給出頂點坐標數組、頂點坐標對應的顏色數組等內容。輸入這些內容需要用到GeometryArray提供的多個方法,因為所有的點、線、面類都是GeometryArray的子類或孫類,因而都繼承了它所有的方法。Java3D程序中的面有多個屬性,可通過PolygonAttributes對象設定具體的屬性。

  Java3D可以通過變換生成三角形和四邊形的面,Tiangle為三角形面,Quad為四邊形面。

  (2)形體組合編程

  Java3D應用程序中,一般都擁有多個三維形體,需要對其進行合理的組合,這樣才能對指定的形體進行幾何變換,對指定的形體進行某種操作,生成所需要的交互式三維應用程序或三維動畫。

  Java3D為此提供了多個用于形體組合的對象。組合各種對象所用的是Group及其子孫類。

  Java3D場景圖的底部為Virtual Universe。每一個場景圖只能有一個VirtuaUniverse,上面為Locale。

  Group類型對象只能有一個父類,對于BranchGroup對象來說是Locale。而其他的Group類型的對象,則可以將其他Group類型的對象做為父類。如TransformGroup對象可以將Group對象做為父類,也可以將另一個TransformGroup對象做為父類。Group類型的對象可以有任意多的子類。

  2.2鍵盤輸入控制

  Java通過一系列的監聽器(listener)方法提供一種與用戶交互的方式。向Java輸入想要監聽鍵盤輸入事件的指令,Java會把鍵盤事件發送給監聽器方法,此時,可以檢查按碼來判斷是哪個鍵被按下或者釋放。Java通知程序某一個按鍵被按下的方法是通過程序所使用的接口實現的。

  KeyListener接口監聽鍵盤事件,并且把事件發送給程序中所實現的回調方法(callback method)。這些方法叫做keyPressed、keyRelesed和keyTyped,他們都只有一個名為KeyEvent的參數。

  編寫一個使用KeyListener的程序時,需要使用implements關鍵字來修改程序的類定義:

  pubHc class KeyboardTest extends Applet implementsKeyListener。

  2.3實體元素的碰撞檢測

  本游戲中有坦克與坦克之間的碰撞檢測,坦克與障礙物之間的碰撞檢測,炮彈與坦克之間的碰撞檢測,炮彈與障礙物之間的碰撞檢測。

  當坦克碰到障礙物或其他坦克時將不能再繼續往前移動;當炮彈打中障礙物時炮彈爆炸,障礙物不損;當主體坦克炮彈打中敵對坦克時,敵對坦克爆炸且ENEMY數量減少1格;當敵對坦克炮彈打中主體坦克時,主體坦克ENERGY減少1格。

  當主體坦克發出子彈打中敵對坦克或障礙物,發生碰撞沖突時,播放聲音效果co1lide.au。其主要代碼為:

  fCollldeSnd=getAudioClip(getCodeBase(),〝collide.au〞):

  若打中的是敵對坦克,敵對坦克發生爆炸,還會播放聲音效果explode.au。其主要代碼為:

  fExplodeSnd=getAudioClip(getCodeBase(),〝explode.au〞):

  當主體坦克與敵對坦克或障礙物發生碰撞沖突時,播放聲音效果veollide.au。其主要代碼為:

  fViewerCollisionSnd=getAudioClip(getCodeBase(),〝vcollide.au〞):

  3、結束語

  本文結合了Java3D的特點,利用Java3D設計了一個坦克射擊游戲,對Java3D的系統結構和開發本游戲所涉及到的關鍵技術作了詳細的介紹,確定了游戲需要實現的總體功能,論述了實現方法。該游戲的設計方案可供3D游戲的開發者參考。

日韩中文字幕一区| 精品国产亚一区二区三区| 日本在线播放一区| 久久福利影视| 国产麻豆精品免费视频| 可以免费在线看黄的网站| 色综合久久天天综合绕观看| 成人高清视频免费观看| 久久久久久久免费视频| 欧美另类videosbestsex久久 | 91麻豆精品国产片在线观看| 久久精品免视看国产明星 | 欧美α片无限看在线观看免费| 午夜家庭影院| 欧美大片一区| 国产视频久久久| 国产精品自拍一区| 国产a免费观看| 国产亚洲精品成人a在线| 亚欧成人乱码一区二区| 97视频免费在线观看| 欧美激情一区二区三区在线| 日韩一级黄色| 午夜在线观看视频免费 成人| 韩国毛片免费| 国产一区精品| 国产一区二区精品久| 久久99这里只有精品国产| 91麻豆精品国产片在线观看| 精品视频一区二区三区| 欧美日本国产| 精品国产香蕉在线播出| 国产视频一区二区在线播放| 99色吧| 精品国产一级毛片| 99久久精品费精品国产一区二区| 亚洲天堂一区二区三区四区| 亚洲wwwwww| 国产精品免费久久| 久久久久久久久综合影视网| 精品久久久久久综合网| 国产一区二区精品久久91| 亚欧成人乱码一区二区| 一级毛片看真人在线视频| 欧美电影免费看大全| 欧美国产日韩精品| 欧美另类videosbestsex久久 | 中文字幕97| 日韩中文字幕在线亚洲一区| 免费的黄色小视频| 99色吧| 久久99这里只有精品国产| 中文字幕97| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 天天色成人网| 999精品影视在线观看| 91麻豆tv| 欧美大片aaaa一级毛片| 国产视频一区二区在线观看| 日韩一级精品视频在线观看| 免费毛片播放| 日本伦理黄色大片在线观看网站| 中文字幕97| 免费一级片在线| 日韩专区一区| 亚洲精品永久一区| 青青久久国产成人免费网站| 日本免费乱理伦片在线观看2018| 青青久久精品| 欧美另类videosbestsex久久| 欧美1区| 日韩av成人| 一本高清在线| 国产91精品露脸国语对白| 亚洲第一页色| 国产成人女人在线视频观看| 精品在线观看国产| 黄色短视屏| 国产高清在线精品一区二区| 成人免费观看视频| 欧美a免费| 99色视频在线| 精品在线免费播放| 日韩免费片| 一级片免费在线观看视频| 久久99青青久久99久久| 精品毛片视频| 中文字幕一区二区三区 精品| 免费一级生活片| 中文字幕97| 午夜欧美成人久久久久久| 可以免费看毛片的网站| 久久成人综合网| 中文字幕97| 黄视频网站免费看| 色综合久久久久综合体桃花网| 精品视频在线观看一区二区| 精品视频在线观看视频免费视频 | 国产视频在线免费观看| 韩国三级香港三级日本三级| 成人在激情在线视频| 国产原创中文字幕| 国产原创中文字幕| 一a一级片| 日韩女人做爰大片| 国产伦精品一区二区三区无广告| 精品毛片视频| 日韩av成人| 国产一级生活片| 欧美大片aaaa一级毛片| 九九久久国产精品大片| 精品在线视频播放| 色综合久久天天综合绕观看| 天天色成人| 国产福利免费观看| 国产亚洲免费观看| 九九国产| 91麻豆精品国产自产在线观看一区 | 久久国产影院| 欧美激情伊人| 久久久久久久久综合影视网| 国产不卡精品一区二区三区| 国产麻豆精品高清在线播放| 精品国产一区二区三区久久久狼| 欧美a级片视频| 999久久久免费精品国产牛牛| 精品国产香蕉伊思人在线又爽又黄| 欧美一区二区三区在线观看| 高清一级片| 欧美一级视频高清片| 人人干人人插| 免费毛片基地| 欧美另类videosbestsex| 久久久成人网| 在线观看导航| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 精品在线观看国产| 四虎影视久久久| 免费国产在线观看不卡| 九九精品久久久久久久久| 国产成人精品影视| 国产伦精品一区二区三区在线观看 | 香蕉视频一级| 国产91丝袜在线播放0| 精品久久久久久中文| 在线观看成人网| 欧美另类videosbestsex视频 | 国产网站免费在线观看| 99久久精品国产高清一区二区| 国产一区二区精品久久| 色综合久久久久综合体桃花网| 999精品影视在线观看| 美国一区二区三区| 99色吧| 国产亚洲精品成人a在线| 中文字幕97| 国产国产人免费视频成69堂| 97视频免费在线观看| 国产麻豆精品免费密入口| 精品国产一区二区三区国产馆| 国产91精品一区| 99久久精品国产免费| 国产91视频网| 青青青草影院| 亚洲天堂免费| 日日爽天天| 欧美1区2区3区| 国产韩国精品一区二区三区| 精品国产一区二区三区久| 成人免费观看视频| 91麻豆国产| 青青久久精品| 麻豆污视频| 久久国产一久久高清| 国产一区二区精品久久91| 欧美爱色| 沈樵在线观看福利| 91麻豆国产| 国产激情视频在线观看| 高清一级淫片a级中文字幕| 午夜激情视频在线播放| 国产精品自拍亚洲| 国产高清视频免费观看| 青青久久精品| 国产一区二区精品久久91| 欧美激情一区二区三区视频 | 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 黄视频网站在线看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 免费国产一级特黄aa大片在线| 欧美激情影院| 日本伦理网站| 青青久热| 日韩一级精品视频在线观看| 日韩中文字幕在线播放| 台湾美女古装一级毛片| 免费一级片在线| 九九精品久久久久久久久| 欧美国产日韩久久久| 精品久久久久久影院免费|