html5游戲開發(fā),需要學習什么技術(shù)?
開發(fā)和學習html5游戲所需的技術(shù):教程主要研究html標簽、屬性和事件。2.CSS教程主要學習使用CSS控制網(wǎng)頁的樣式和布局。教程做HTML5開發(fā),主要用JS語言。所以學習JS語言。必要的話學習一些JS庫,方便開發(fā)。其他核心技術(shù)只是基礎(chǔ)。為了開發(fā)HTML5,可以使用以下技術(shù)。1)WebWorker可以在瀏覽器中運行多個JS腳本。它可用于需要在后臺執(zhí)行一些耗時工作的情況。2)WebSocket瀏覽器可以與服務(wù)器雙向通信。Socket模式可以大大提高瀏覽器和服務(wù)器之間的通信效率。可以用在瀏覽器和服務(wù)器通訊頻繁的場合,比如實時聊天。3)在3)Canvas2D瀏覽器中繪圖。可用于游戲開發(fā)等場合。
HTML5真能代替Flash嗎?
從長遠來看,HTML5將占據(jù)Flash的大部分市場,但Flash仍將主要在游戲開發(fā)方面有生存空間。
1.在功能上,現(xiàn)代瀏覽器正在迅速擴大java的應(yīng)用范圍。:本地視頻/音頻API,2D繪圖有畫布,3D有WebGL,即時消息有WebSockets和本地存儲。其他正在討論中并可能在未來添加到標準中的API包括地理定位、文件API(更強大的上傳/下載)、WebStorage(增強的cookie),甚至本地文件處理功能。現(xiàn)階段Flash在功能上沒有太大優(yōu)勢,暫時還是有作為流媒體解決方案的一席之地,但瀏覽器原生API被取代只是時間問題。在數(shù)據(jù)存儲和本地操作中,因為是插件,所以受到各種安全的限制。(此為基于網(wǎng)絡(luò),不討論空氣。)
2.性能:以前Flash在整體性能上有明顯優(yōu)勢,AS3是編譯語言,在虛擬機上的運行速度比當年的java快很多。但是現(xiàn)在各大瀏覽器都在關(guān)注java引擎的優(yōu)化,尤其是Chrome的V8,在代碼運行效率上已經(jīng)和AS3并駕齊驅(qū)。然而,在2D動畫中,F(xiàn)lash的優(yōu)勢仍然很明顯。即使在Chrome上,平均fps仍然高于canvas。另外,F(xiàn)lash本身的IDE支持矢量圖形,這是Canvas沒有的。從這個角度來看,F(xiàn)lash在依賴大量2D圖像的游戲中仍然保持著絕對優(yōu)勢。在3D中,F(xiàn)lashPlayerGPU支持是通過MolehillAPI獲得的,WebGL也是直接調(diào)用GPU,性能上沒有太大區(qū)別,主要是API和第三方3D引擎的對比。在這方面,F(xiàn)lash顯然更成熟,但js正在迎頭趕上。
4.平臺支持:Flash是嵌入式的,所以只要能運行,自身虛擬機不存在兼容性問題,只有版本問題;FlashPlayer的版本更新采用率一直很高。這對開發(fā)者來說,少了很多麻煩。HTML5最頭疼的就是瀏覽器兼容性參差不齊,這也是HTML5現(xiàn)階段最大的缺陷。不過HTML5在平臺上也有一個明顯的優(yōu)勢,那就是在越來越重要的移動平臺上,對HTML5的支持要好得多(iOS幾乎支持所有的HTML5API和CSS3屬性,而大部分移動瀏覽器都是webkit內(nèi)核,對HTML5的支持很好)。相比之下,F(xiàn)lashs在iOS上直接退出也是硬傷。從長遠來看,HTML5還是絕對的贏家,因為瀏覽器支持只會越來越好,移動平臺上的Flash已經(jīng)沒有競爭力了。Adobe最近宣布停止FlashPlayer在移動平臺上的繼續(xù)開發(fā)。