整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          你玩的游戲就是HTML5開發(fā)的,想自己開發(fā)一款游戲嗎?

          要:兄弟連專注IT教育十年,開設(shè)了PHP培訓(xùn)、UI設(shè)計(jì)培訓(xùn)、H5培訓(xùn)、云計(jì)算培訓(xùn)、Android培訓(xùn)、Java EE+大數(shù)據(jù)培訓(xùn)6門學(xué)科。



          要說互聯(lián)網(wǎng)發(fā)展迅猛的今天,什么行業(yè)最掙錢,當(dāng)然是貼近互聯(lián)網(wǎng)的產(chǎn)業(yè),IT行業(yè)備受大家關(guān)注,一個(gè)初入職場對自己未來不抱希望的人,未來一片迷茫,選擇兄弟連H5培訓(xùn),月薪過萬。H5這么火嗎?H5的火爆讓不少開發(fā)商發(fā)現(xiàn)了機(jī)遇,H5開發(fā)人才也遭受瘋搶,但傳統(tǒng)前端人才很難駕馭移動(dòng)端,因此,H5開發(fā)人才出現(xiàn)嚴(yán)重緊缺狀態(tài)。

          據(jù)統(tǒng)計(jì),我國對于H5開發(fā)人員的缺口將達(dá)到20萬左右,并且每天還在不斷的增加。人才少,崗位稀缺,薪資自然高,H5的從業(yè)人員月薪平均在10000元以上,而且根據(jù)工作年限的增加,經(jīng)驗(yàn)的積累,薪資呈飆升趨勢,目前,北京、上海、廣州、深圳、杭州等地H5開發(fā)人員的薪資待遇更是高的離譜。

          H5開發(fā)人才的巨大缺口掀起一股培訓(xùn)熱潮,很多人選擇兄弟連H5培訓(xùn),通過培訓(xùn)作為進(jìn)入H5開發(fā)行業(yè)的捷徑,對于有一定開發(fā)經(jīng)驗(yàn)的人來說,參加H5培訓(xùn)可以在技術(shù)上達(dá)到精益求精的效果,學(xué)習(xí)當(dāng)下比較高級(jí)的開發(fā)框架,與前沿的開發(fā)技術(shù)接軌,也可以讓自己的開發(fā)技術(shù)達(dá)到一個(gè)新的高度。而對于沒有任何經(jīng)驗(yàn)的“零基礎(chǔ)”學(xué)員來說,自學(xué)H5開發(fā)相對來說沒有那么容易。所以選擇一家在課程設(shè)置、師資力量都很好的兄弟連H5培訓(xùn)機(jī)構(gòu)很重要,能夠更快地掌握前沿的開發(fā)技術(shù),學(xué)習(xí)的效果將會(huì)事半功倍。

          如果你是零基礎(chǔ),迫切想學(xué)會(huì)H5,或者你對H5懂一點(diǎn)點(diǎn),不知道什么樣的課程適合你,那么兄弟連H5培訓(xùn)課程給你最好的指導(dǎo)建議:從初級(jí)到高級(jí),從基本到復(fù)雜,這是一個(gè)循序漸進(jìn)的過程,每個(gè)過程該注意什么,兄弟連H5培訓(xùn)老師會(huì)把一切知識(shí)和盤托出。你需要做的,就是認(rèn)真學(xué)習(xí),勤做筆記,徹頭徹尾的讓自己也成為H5開發(fā)大軍的一部分。

          strolid是一款采用諸多web新技術(shù)的HTML5游戲。游戲的作者treeform分別使用webGL、WebSocket、AudioContext和作者自制的響應(yīng)式HTML框架來渲染圖形、創(chuàng)建網(wǎng)絡(luò)連接、播放音頻和設(shè)計(jì)UI。另外,他還使用了Electron來將游戲打包成Windows和Mac的桌面應(yīng)用程序。筆者這次給大家分享一下Istrolid作者的游戲開發(fā)心得。

          2D WebGL

          在使用openGL和WebGL引擎時(shí),開發(fā)者通常會(huì)創(chuàng)建多個(gè)網(wǎng)格和紋理對象。但是Istrolid的作者卻有著自己獨(dú)特的建構(gòu)方法。他通過一個(gè)網(wǎng)格和紋理對象來繪畫所有的游戲內(nèi)容。游戲中的飛船有非常簡單的多邊形構(gòu)成,有的甚至是由若干個(gè)三角形構(gòu)成的。因此作者認(rèn)為沒有必為每一個(gè)要繪制的物體都新建一個(gè)網(wǎng)格對象。

          取而代之的是創(chuàng)建一個(gè)動(dòng)態(tài)的網(wǎng)格并在每一幀畫面中通過代碼來調(diào)整這個(gè)網(wǎng)格。這樣會(huì)大大加快繪制的速度。這種方法和通常被開發(fā)者們棄用的openGL的immediate模式比較類似。同時(shí),作者不推薦使用 3D ModelView的矩陣。在編寫Istrolid時(shí),他僅僅將一個(gè)視點(diǎn)的矩形傳遞給了著色器。因此這款游戲是完全基于2D引擎的。

          圖1 游戲中的飛船均由簡單的多邊形構(gòu)成

          紋理對象也很簡單,而且和網(wǎng)格對象一樣是動(dòng)態(tài)的。在一個(gè)區(qū)域或者地形上繪制圖片時(shí),游戲程序會(huì)加載這個(gè)紋理對象并將它放到一個(gè)實(shí)時(shí)打包的紋理地圖集中。之后程序會(huì)根據(jù)新的UI坐標(biāo)系來創(chuàng)建網(wǎng)格對象。

          圖2 2048px*2048px的地圖集

          作者對著色器的操作也很簡單。他將所有的顏色都轉(zhuǎn)換到了HSV顏色空間中以便于進(jìn)行顏色的調(diào)整。

          圖3 HSV顏色空間

          Coffee Script

          JavaScript快得難以置信。作者原本利用Panda3d和Python來編寫卻發(fā)現(xiàn)Python并不能滿足他對速度的需求。他認(rèn)為不斷發(fā)展壯大的JavaScript在滿足他對速度的追求的同時(shí)還能實(shí)現(xiàn)更多的功能。他使用CoffeeScript來編寫整個(gè)游戲并非常喜愛它的縮進(jìn)排版和箭頭標(biāo)識(shí)符。特別令他印象深刻的一點(diǎn)是箭頭標(biāo)識(shí)符可以非常快速的創(chuàng)建內(nèi)聯(lián)函數(shù)。

          他利用自己三年前編寫的基于HTML的編輯器在服務(wù)器上編寫代碼。這樣的好處是他可以通過訪問編輯器的URL來在任意一臺(tái)電腦上開始他的開發(fā)工作。他用過Windows、Mac和ChromeOS并非常支持ChromeOS的云理念。

          圖4 作者自制的基于網(wǎng)絡(luò)的編輯器

          WebSocket和服務(wù)器

          作者利用CoffeeScript來編寫服務(wù)器端程序并用Node.js來運(yùn)行。他希望這款游戲能夠同時(shí)支持單人模式和多人模式。當(dāng)玩家進(jìn)行單人模式游戲時(shí)會(huì)開啟一個(gè)本地服務(wù)器。程序通過一個(gè)偽WebSocket來連接到本地服務(wù)器。這樣的好處是可以在一個(gè)真實(shí)的網(wǎng)絡(luò)環(huán)境中來測試代碼,從而簡化調(diào)試的過程。所有的調(diào)試和單步調(diào)試都在一個(gè)進(jìn)程中完成。另外,他還可以在這個(gè)偽WebSocket中設(shè)置網(wǎng)絡(luò)延時(shí)和抖動(dòng)來模擬復(fù)雜的網(wǎng)絡(luò)環(huán)境。

          在開發(fā)即時(shí)戰(zhàn)略類游戲時(shí),開發(fā)者通常會(huì)選擇鎖步(Lock Step)方法。但是Istrolid得作者并沒有這么做。他認(rèn)為鎖步已經(jīng)過時(shí),不易于編寫(尤其是用JavaScript編寫時(shí))。而且在這個(gè)個(gè)人電腦普遍擁有高帶寬的時(shí)代,鎖步的優(yōu)勢已不再明顯。他采用delta編碼方式,并僅將變動(dòng)的數(shù)據(jù)從服務(wù)器傳給每個(gè)玩家的服務(wù)器上。

          圖5 Istrolid的網(wǎng)絡(luò)結(jié)構(gòu)

          AudioContext

          瀏覽器的音頻播放能力已經(jīng)改善許多。作者通過過程生成技術(shù)來創(chuàng)建背景音樂,并創(chuàng)建一個(gè)隨著游戲的進(jìn)行動(dòng)態(tài)響應(yīng)的鼓。當(dāng)一個(gè)單位被集中或者爆炸時(shí)他會(huì)提高這個(gè)鼓的音量。他將每一個(gè)武器開火時(shí)的聲音的音量設(shè)定成一個(gè)隨機(jī)數(shù)以保證每一個(gè)武器的聲音都有差別,盡管這個(gè)差別很細(xì)微。除非要開發(fā)一個(gè)音樂游戲否則作者不推薦在這方面花太多時(shí)間。

          HTML UI

          如果游戲中的UI非常多的話,那么完全靠自己用代碼來實(shí)現(xiàn)就會(huì)非常困難。這時(shí)就需要一些些復(fù)雜的UI框架來進(jìn)行輔助。對于HTML5游戲來說,無需使用復(fù)雜的工具包即可實(shí)現(xiàn)復(fù)雜的UI效果。作者還利用HTML5的特性自己設(shè)計(jì)了一個(gè)響應(yīng)式框架從而簡化UI的編寫過程。

          Electorn “Shell”

          如今將HTML5游戲編譯成適合于Windows、Mac或Linux的桌面應(yīng)用程序非常容易。Istrolid的作者非常推薦那些因?yàn)椴寮卣埂g覽器過時(shí)或者驅(qū)動(dòng)故障等問題頭疼的開發(fā)者嘗試一下Electron。同時(shí)這也為把你的游戲發(fā)布到類似Steam這樣需要提供可下載文件的游戲平臺(tái)創(chuàng)造了可能。

          圖6 Electron

          點(diǎn)擊閱讀原文,查看原文章~




          主站蜘蛛池模板: 99久久精品午夜一区二区| 国产一区三区三区| 国产AV一区二区三区传媒| 精品少妇一区二区三区视频| 亚洲A∨无码一区二区三区 | 日本免费一区二区在线观看| 亚洲AV无码一区二区三区鸳鸯影院| 国产成人一区二区动漫精品| 久久久久国产一区二区| 亚洲乱码一区av春药高潮| 色老头在线一区二区三区| 国产婷婷色一区二区三区深爱网 | 伊人激情AV一区二区三区| 无码成人一区二区| 成人在线视频一区| 影音先锋中文无码一区| 国产午夜精品一区二区三区| 亚洲AV无码一区二区三区牲色| 波多野结衣一区二区三区高清在线| 国产丝袜无码一区二区三区视频| 日韩免费一区二区三区在线| 国产AV国片精品一区二区| 好爽毛片一区二区三区四无码三飞| 亚洲片一区二区三区| 在线视频精品一区| 国产手机精品一区二区| 国产激情无码一区二区| 亚洲乱码国产一区网址| 视频一区二区在线观看| 久久精品无码一区二区三区不卡| 一区二区三区在线|欧| 国产主播一区二区| 国产熟女一区二区三区四区五区 | 91国在线啪精品一区| 国产一区美女视频| 日韩AV在线不卡一区二区三区| 无码人妻一区二区三区兔费| 亚洲日韩一区二区一无码| 色噜噜狠狠一区二区三区| 色窝窝无码一区二区三区色欲 | 高清一区高清二区视频|