自己編寫游戲引擎(用游戲引擎做app)
本篇文章給大家談?wù)勛约壕帉懹螒蛞?,以及用游戲引擎做app對應(yīng)的知識(shí)點(diǎn),希望對各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
學(xué)游戲開發(fā)的都必須自己寫一個(gè)引擎嗎?
你可以先去【繪學(xué)霸】網(wǎng)站找“游戲特效/unity3D”板塊的【免費(fèi)】視頻教程-【點(diǎn)擊進(jìn)入】完整入門到精通視頻教程列表: ;tagid=305,306zdhhr-11y17r-872924286609968772
想要系統(tǒng)的學(xué)習(xí)可以考慮報(bào)一個(gè)網(wǎng)絡(luò)直播課,推薦CGWANG的網(wǎng)絡(luò)課。老師講得細(xì),上完還可以回看,還有同類型錄播課可以免費(fèi)學(xué)(贈(zèng)送終身VIP)。
自制能力相對較弱的話,建議還是去好點(diǎn)的培訓(xùn)機(jī)構(gòu),實(shí)力和規(guī)模在國內(nèi)排名前幾的大機(jī)構(gòu),推薦行業(yè)龍頭:王氏教育。
王氏教育全國直營校區(qū)面授課程試聽【復(fù)制后面鏈接在瀏覽器也可打開】:
在“游戲特效/unity3D”領(lǐng)域的培訓(xùn)機(jī)構(gòu)里,【王氏教育】是國內(nèi)的老大,且沒有加盟分校,都是總部直營的連鎖校區(qū)。跟很多其它同類型大機(jī)構(gòu)不一樣的是:王氏教育每個(gè)校區(qū)都是實(shí)體面授,老師是手把手教,而且有專門的班主任從早盯到晚,爆肝式的學(xué)習(xí)模式,提升會(huì)很快,特別適合基礎(chǔ)差的學(xué)生。
大家可以先把【繪學(xué)霸】APP下載到自己手機(jī),方便碎片時(shí)間學(xué)習(xí)——繪學(xué)霸APP下載:
如何自學(xué)游戲引擎的開發(fā)
游戲編程難不難?沒有基礎(chǔ)能學(xué)嗎? 我們知道,現(xiàn)在一般的游戲應(yīng)該包含兩部分:游戲程序開發(fā),畫面處理與三維影像生成。想玩程序還是玩圖像?這個(gè)看你喜歡。自學(xué)游戲開發(fā)難不難?
其實(shí)小編很想告訴大家,要么找個(gè)好老師;要么找個(gè)好學(xué)校。否則想要自學(xué)好游戲開發(fā),并不是一件易事。俗話說興趣是個(gè)好老師,有興趣就會(huì)努力去學(xué),努力去學(xué)就能學(xué)的會(huì)、學(xué)的會(huì)就會(huì)覺得不難了。
當(dāng)然了,沒有計(jì)算機(jī)基礎(chǔ)沒有關(guān)系,如果找到了游戲開發(fā)學(xué)習(xí)機(jī)構(gòu),都有人專門從基礎(chǔ)知識(shí)開始帶,想學(xué)就學(xué)去吧,相信自己。畢竟游戲發(fā)展前景誘人!
游戲工程師前景一片大好,是因?yàn)槿魏斡螒蛑卸夹枰羞@樣的人員,尤其是我們所熟悉的網(wǎng)游,更是需要游戲工程師不斷創(chuàng)新,才能吸引到更多的人。
游戲工程師的工作很容易找到,尤其是現(xiàn)在的游戲研發(fā)人比較緊缺,進(jìn)入任何一家游戲開發(fā)公司可能都是被爭搶的人才,所以薪水自然也會(huì)較高了。
游戲的誕生,豐富了人們的文化生活,讓生活變的更加精致多彩,充實(shí)了我們的碎片時(shí)間,從當(dāng)初的單機(jī)游戲到現(xiàn)在的網(wǎng)絡(luò)游戲,從多年前客戶端游戲的盛行,到前幾年網(wǎng)頁游戲的鼎盛,再到如今手機(jī)游戲的一枝獨(dú)秀,游戲經(jīng)歷了很大的變革,但是并不是走向沒落,而是走向繁榮興盛。
游戲編程指利用計(jì)算機(jī)編程語言,如C編程語言、C++、java等,編寫計(jì)算機(jī)、手機(jī)或游戲機(jī)上的游戲。
目前流行的游戲編程語言為C++編程語言,目前流行的游戲編程接口為DirectX9.0,還有OpenGL、SDL(Simple DirectMedia Layer)等。現(xiàn)在手機(jī)上玩的游戲分為Android與IOS兩種不同平臺(tái),分別是用eclipse/MyEclipse和xcode。現(xiàn)在也流行一些跨平臺(tái)的編程引擎,例如cocos2d-x、unity 3D等。
為什么我要自己寫html5游戲引擎
用html5寫游戲,會(huì)面臨一系列的問題,情況很復(fù)雜。而當(dāng)下熱衷于html5開發(fā)游戲的,有兩撥不同的人——熟悉dom、css、js、web2.0的傳統(tǒng)前端開發(fā)工程師和熟悉canvas的傳統(tǒng)游戲開發(fā)工程師。這兩撥人的背景截然不同,所以在很多問題的處理上有出入。
1)js語法簡單,很多高級一點(diǎn)的語法特性都沒有,不適合直接拿來開發(fā)大型項(xiàng)目。
js核心語法只經(jīng)過一個(gè)星期就設(shè)計(jì)完成了,很倉促。它在設(shè)計(jì)之初主要是為是給頁面寫一點(diǎn)“表單驗(yàn)證”之類的小功能,它是基于對象的語言,但extend、mix-in、import等語法都沒有提供,因?yàn)榇驈囊婚_始js之父從沒想過有一天js會(huì)變得如此重要。在web2.0時(shí)代,有大量的DHTML需求,所以大型一些的js框架都會(huì)著手解決“大型項(xiàng)目可維護(hù)性”方面的問題,擴(kuò)展js語言,通過封裝api模擬高級語法特性,例如YUI3和Dojo。
extend和mix-in之類的還好解決一點(diǎn),特別值得一提的是js模塊化問題。js原生不提供import和包的機(jī)制,所以聰明的工程師自己封裝了相關(guān)的api,更在近兩年形成了commonJS規(guī)范。模塊化、動(dòng)態(tài)加載、依賴處理非常非常重要,不解決這個(gè)問題,很難優(yōu)雅地處理大型項(xiàng)目。
html5游戲,首先它得是個(gè)js大型項(xiàng)目。web site在這些年積累了很多這方面的經(jīng)驗(yàn),html5游戲開發(fā)者應(yīng)該吸收這些經(jīng)驗(yàn),不要寫出web2.0以前的js代碼水平。
2)html5是web前端技術(shù),有web方面的特殊性。
比如說跨域問題、http優(yōu)化、BOM相關(guān)接口。這些都是傳統(tǒng)前端開發(fā)方面的知識(shí),我敢說一大半的游戲開發(fā)工程師們不清楚JSONP是干嘛的。比如原生ajax和cookie的接口非常難用,總是要封裝一下才好用的,包括1)里所講的語法擴(kuò)展,都是web開發(fā)相關(guān)的,但其實(shí)和游戲又沒有直接的關(guān)系。html5游戲引擎是不方便處理這些的。這些內(nèi)容可以交給傳統(tǒng)前端的框架來做。
3)canvas和DOM,不同的GUI套路。
這是個(gè)巨大的鴻溝。前端們非常熟悉的三大基本元素html + css + js,傳統(tǒng)游戲開發(fā)工程師們很陌生。特別是神器css,傳統(tǒng)游戲工程師們很排斥,他們知道這個(gè)東西很好,卻提不起興趣學(xué)習(xí),他們害怕瀏覽器兼容問題。他們號(hào)稱開發(fā)html5游戲,其實(shí)只敢用canvas相關(guān)的子集?,F(xiàn)在絕大多數(shù)的html5游戲引擎都是基于canvas的,純canvas。
其實(shí)css是個(gè)巨大的神器,在GUI編程方面性價(jià)比奇高。css的api設(shè)計(jì)得如此簡單卻出奇強(qiáng)大!在桌面端已經(jīng)有很多軟件使用c++做個(gè)框,框里套個(gè)html,所有的GUI全是用html+css+js來實(shí)現(xiàn)的。在移動(dòng)終端phonegap也是同樣的思路。
純canvas雖然省卻了css、dom、瀏覽器兼容的學(xué)習(xí)成本,卻主動(dòng)放棄了css和dom引擎提供的大量幫助。撿芝麻丟西瓜。
4)大量不同終端和平臺(tái)的適配。
html5適用的終端包括pc、移動(dòng)設(shè)備甚至平板電視。操作系統(tǒng)有windows、ios、android、win8等主流平臺(tái),還有blackberry、web os、chrome os、ubuntu touch、firefox os,甚至wii u等非主流平臺(tái)。不同的操作系統(tǒng)、不同分辨率、不同物理尺寸。游戲的尺寸該如何取舍?是放任縮放還是做響應(yīng)式設(shè)計(jì)?瀏覽器能否全屏?瀏覽器狀態(tài)欄有多高?是否是從主屏打開的(ios設(shè)備)?是橫屏還是豎屏?
除了上面的這些操作系統(tǒng),還有人人網(wǎng)、微博、微信這樣的平臺(tái),也是html5游戲可以發(fā)布的地方,這些地方對接入的游戲尺寸又有哪些要求和限制?我能改頁面的viewport嗎?還是要將游戲的根結(jié)點(diǎn)進(jìn)行scale縮放?
除了游戲的尺寸要適配,還有輸入設(shè)備也要適配。pc的輸入設(shè)備是鍵盤和鼠標(biāo),移動(dòng)設(shè)備的輸入設(shè)備是觸摸屏和重力感應(yīng)。什么設(shè)備使用虛擬十字鍵,什么設(shè)備鍵盤操作就行了,我們還需要對當(dāng)前的終端做嗅探。
適配問題是個(gè)巨大的問題,終端多也就罷了,還很可能在不停地變化,系統(tǒng)升個(gè)級或者出來個(gè)新設(shè)備什么的,適配方面的工作還得持續(xù)更新。這些,游戲引擎?zhèn)兛紤]過嗎?考慮得完善,能應(yīng)付我的定制需要嗎?引擎更新得頻繁和及時(shí)嗎?
自己編寫游戲引擎的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于用游戲引擎做app、自己編寫游戲引擎的信息別忘了在本站進(jìn)行查找喔。
掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。