來源:北大青鳥飛迅校區(qū)|發(fā)布時間:2013-04-07 10:16:44
高中生學(xué)什么好?高中生學(xué)java怎么樣?這些年由于Java技術(shù)的不斷發(fā)展,Java程序的運行速度有了顯著提升,同時硬件技術(shù)也在不斷進步,從而使得java處理比較復(fù)雜的3d圖形成為可能。 Lwjgl,Jogl,Java3D等技術(shù)的出現(xiàn),使Java語言可以方便的利用現(xiàn)在的顯卡日益強大的硬件加速能力。實際上目前已經(jīng)有許多基于java的 2d和3d游戲,其中不乏大型多人在線游戲。
上面這些只是Java游戲的一小部分。然而,即使還有其它很多基于Java的游戲,相對于整個游戲產(chǎn)業(yè)來說,Java游戲社區(qū)仍然非常小,以至于其力量在手機游戲之外的領(lǐng)域幾乎可以被忽略不計。但是實際上Java作為一種游戲編程語言和平臺,這些年還是取得了長足的發(fā)展,在后applet時代走著復(fù)興之路。
當(dāng)然,Java可以做游戲,并不意味著Java就適合做游戲,那么:
基于java對于一個游戲來說到底意味著什么?
1、Java是一門經(jīng)過充分發(fā)展,已經(jīng)十分成熟的語言。
Java語言稱霸企業(yè)級應(yīng)用這么多年,事實證明了它非常適合于開發(fā)大型軟件。當(dāng)Java的運行效率不再是問題的時候,Jjava語言嚴(yán)謹(jǐn)、高抽象、可讀性強的優(yōu)勢就體現(xiàn)出來了。這對于規(guī)模越來越龐大的游戲軟件來說,有著不小的誘惑。
2、Java作為平臺,極大的方便了游戲腳本的使用
對于游戲開發(fā)來說,由于涉及到比較復(fù)雜的情況(有時候甚至是美學(xué)問題),開發(fā)過程很多時候是一個不斷修改的過程,可以方便的修改游戲內(nèi)容是十分關(guān)鍵的。對于很多游戲引擎來說,都有自己編寫的腳本解釋器,用來解釋一些自定義的游戲腳本語言(一般為命令式腳本,比如moveplayer(int x,int y),playersmile()之類的東西),另一些則提供了例如lua和rubby等的腳本語言來訪問游戲引擎。由于其虛擬機特性,java本身就可以用來編寫游戲腳本,目前也有例如beanshell、groovy等腳本語言可以方便的無縫的和java語言進行交互,這些都極大的方便了java游戲編程。
3、跨平臺?
跨平臺,每當(dāng)比較java與其他語言的時候,總是要談到跨平臺。但是在java游戲領(lǐng)域,write once ,run everywhere,聽起來更像是一個冷笑話。這個笑話有多冷呢?(手機游戲我不熟悉,但是確實有人用“痛苦”來形容開發(fā)運行在不同手機上的 javame游戲)對于其他大多數(shù)java游戲來說,或者通過applet或者通過java web start來部署,這兩種方式無一例外的都要用到瀏覽器。對于java web start來說,問題相對較小,程序員必須處理的問題主要是如何讓非專業(yè)用戶成功安裝指定的jre版本的問題,雖然很麻煩,但是是可以解決的。對于applet來說,問題就變得復(fù)雜的多,很多問題只會在特定的操作系統(tǒng)配上特定的瀏覽器時才會出現(xiàn),即使是同一品牌的瀏覽器,不同的瀏覽器版本也會出現(xiàn)不同的問題,同時這里還涉及到客戶機默認是使用opengl pipeline還是directdraw pipeline的問題。而我們現(xiàn)在甚至還沒有開始討論當(dāng)3d游戲需要使用底層圖形api時的情況,無論是applet還是web start一旦在程序中使用了任何一種opengl的java綁定,客戶機各不相同的顯卡以及同一款顯卡的不同驅(qū)動都會帶來不同的問題,而這些問題是隨著操作系統(tǒng)和瀏覽器的不同而不同的,操作系統(tǒng)數(shù)×瀏覽器數(shù)(web start不需要考慮瀏覽器)×顯卡數(shù)×每款顯卡平均的驅(qū)動版本數(shù)=噩夢。最后你不得不妥協(xié)于這樣一個現(xiàn)實-----即使電腦在硬件上滿足程序的要求,你也無法讓你的程序運行在這些電腦中的每一臺上,除非你的用戶都是專業(yè)人士。
全程面授,不高薪都難
申請成功后,我們將在24小時內(nèi)與您聯(lián)系
招生熱線: 4008-0731-86 / 0731-82186801
學(xué)校地址: 長沙市天心區(qū)團結(jié)路6號
Copyright © 2006 | 湖南大計信息科技有限公司 版權(quán)所有
湘ICP備14017520號-3