日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

javafx2_JavaFX 2 GameTutorial第1部分

發(fā)布時間:2023/12/3 java 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 javafx2_JavaFX 2 GameTutorial第1部分 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

javafx2

介紹

我相信大多數(shù)軟件開發(fā)人員可能會在年輕人(年輕人)生活的某一時刻被迫創(chuàng)建游戲來幫助他們學(xué)習(xí)編程語言(我知道我曾經(jīng)做過)。 以前,我的第一臺計(jì)算機(jī)實(shí)際上是Franklin Ace 1000 ,后來是Apple [] 。 在這些系統(tǒng)上開發(fā)游戲時,這非常具有挑戰(zhàn)性。 對于初學(xué)者,您必須學(xué)習(xí)匯編語言(6502),實(shí)際上幾乎沒有工具來創(chuàng)建子畫面(圖形資產(chǎn))。 我認(rèn)為我最喜歡的一款游戲可能是第一款實(shí)時策略(RTS)游戲,是《 搶劫攻略》 ( Rescue Raiders ,1984)。

讓我們進(jìn)入2012年,自那時以來,計(jì)算機(jī),圖形工具包,庫和游戲引擎已經(jīng)走了很長一段路。 許多API都會提供許多可以屏蔽API用戶的管道,以便他們可以專注于使游戲變得有趣而令人興奮。 談到API JavaFX 2.x不僅是創(chuàng)建美觀應(yīng)用程序的出色UI工具包,而且還可以使游戲變得有趣。 使用JavaFX 2.x,您將能夠創(chuàng)建可以消磨時間并帶來數(shù)小時樂趣的游戲!

圖1太空飛船的SVG

長大后我一直對科幻電影如“星球大戰(zhàn)”和“ 星際迷航”著迷。 我一直想創(chuàng)建一個簡單的頂視圖顯示游戲(2D),在其中我可以像經(jīng)典游戲《小行星》一樣控制飛船。 然而,隨著時間的流逝,一位朋友與我分享了《 星際爭霸 1》和《 育雛戰(zhàn)爭》的游戲,我感到非常驚訝。 我真的很喜歡今天的游戲,所以我想采用游戲的某些元素,例如使用鼠標(biāo)指針和按鈕(例如:Terran Battle Cruiser)導(dǎo)航部隊(duì)和部隊(duì)。

在此博客文章(第1部分)中,我將簡要說明使用簡單形狀的簡單宇宙飛船的游戲或?qū)Ш健?在第1部分(此博客條目)中沒有顯示代碼,而是一個簡單的應(yīng)用程序來演示飛船在最終游戲中的行為。 隨著系列的進(jìn)行,您會注意到漸進(jìn)式的變化,例如酷炫的精靈,聲音等。請記住,最后一場比賽將是一艘飛船,避開敵艦并以聲音效果向后射擊。 該船將看起來像此博客條目開頭所描述的船(圖1)。

我想創(chuàng)建一系列博客條目( 六個部分 ),詳細(xì)介紹如何創(chuàng)建JavaFX 2.x游戲的教程。 。 以下是該系列的簡要摘要:

第1部分-簡介( 單擊此處以運(yùn)行演示 )
第2部分– 游戲循環(huán)
第3部分-輸入/(鼠標(biāo),鍵盤) 第4部分–精靈/碰撞 第五部分–聲音 第六部分–結(jié)論思想

需求與設(shè)計(jì)

  • 使用基本形狀創(chuàng)建太空飛船的原型。
  • 根據(jù)鼠標(biāo)右鍵單擊的屏幕位置,順時針或逆時針旋轉(zhuǎn)飛船。
  • 按下主按鈕時發(fā)射射彈。
  • 顯示鼠標(biāo)按下(x,y)屏幕坐標(biāo)
  • 顯示角度以旋轉(zhuǎn)船頭(船前)
  • 顯示飛船旋轉(zhuǎn)的方向(順時針或逆時針)

圖2中顯示的是一個使用簡單形狀的簡單原型,以幫助我們專注于數(shù)學(xué)。 一個好的原則是在投入大量時間來繪制圖形資產(chǎn)之前,先創(chuàng)建一個功能原型。

圖2太空飛船原型
  • (MX,MY)–按下鼠標(biāo)(x,y)可以協(xié)調(diào)JavaFX Scene上的空間。
  • (vx,vy)–相對于船中心的直角坐標(biāo)轉(zhuǎn)換為結(jié)束角或鼠標(biāo)按下(x,y)坐標(biāo)。
  • (ux,uy)–起始角或上次鼠標(biāo)按下(x,y)坐標(biāo)轉(zhuǎn)換為相對于船中心的笛卡爾坐標(biāo)。
  • U形角:船首旋轉(zhuǎn)角度。 在笛卡爾坐標(biāo)系(1,0)中,鼻子指向西或零度。 隨著船舶逆時針旋轉(zhuǎn),角度會增加。 當(dāng)沿順時針方向移動時,旋轉(zhuǎn)角度將為負(fù)數(shù)。
  • V的角度:船頭旋轉(zhuǎn)應(yīng)停止的角度。 在笛卡爾坐標(biāo)系(1,0)中,鼻子指向東或零度。 隨著船舶逆時針旋轉(zhuǎn),角度會增加。 當(dāng)沿順時針方向移動時,旋轉(zhuǎn)角度將為負(fù)數(shù)。
  • 方向:旋轉(zhuǎn)船頭以順時針或逆時針旋轉(zhuǎn)船。 當(dāng)單擊鼠標(biāo)以在小于180度的角度旋轉(zhuǎn)船舶時,船舶將轉(zhuǎn)向鼠標(biāo)單擊,而不是轉(zhuǎn)向大于180度的另一種方式(長距離)。

演示版

要求:

  • Java 7或更高版本
  • JavaFX 2.0或更高版本
  • Windows XP或更高版本(應(yīng)該很快可用于Linux / MacOS)

飛船導(dǎo)航和武器系統(tǒng)的簡單原型。

說明:

  • 右鍵單擊(在Windows上)鼠標(biāo)以飛船。
  • 主武器(在Windows鼠標(biāo)上單擊鼠標(biāo)左鍵)以射擊武器。

點(diǎn)擊此處運(yùn)行演示

參考資料

富蘭克林Ace –老式計(jì)算機(jī):http://www.vintage-computer.com/franklin.shtml

Apple] [ –老式計(jì)算機(jī):http://en.wikipedia.org/wiki/Apple_II

救援攻略 –維基百科:http://en.wikipedia.org/wiki/Rescue_Raiders

星球大戰(zhàn) –電影數(shù)據(jù)庫:http://www.imdb.com/title/tt0076759/

星際迷航 –電影數(shù)據(jù)庫:http://www.imdb.com/title/tt0796366/

星際飛船 –維基百科:http://en.wikipedia.org/wiki/Star_Craft

星際飛船母巢之戰(zhàn) –維基百科:http://en.wikipedia.org/wiki/StarCraft:_Brood_War

http://en.wikipedia.org/wiki/Rescue_Raiders

參考:來自我們的JCG合作伙伴 Carl Dea的JavaFX 2 GameTutorial第1部分 ,位于Carl's FX博客上。


翻譯自: https://www.javacodegeeks.com/2012/04/javafx-2-gametutorial-part-1.html

javafx2

總結(jié)

以上是生活随笔為你收集整理的javafx2_JavaFX 2 GameTutorial第1部分的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。