目前的游戲市場(chǎng)可謂日漸蕭條,分分鐘就逼死眾多產(chǎn)品經(jīng)理,三消游戲可謂一把溫柔的彎刀,從女人這塊獲取到了一大片的市場(chǎng),動(dòng)不動(dòng)就做個(gè)幾百關(guān),相互之間還有攀比,果然女人的錢(qián)還是更好賺一些的。當(dāng)然,三消游戲確實(shí)有很大的優(yōu)勢(shì),不浪費(fèi)太多時(shí)間,不那么燒腦,簡(jiǎn)單有趣。但如果要做一款集成性很高的三消游戲,對(duì)于開(kāi)發(fā)者而言也并不是那么簡(jiǎn)單,畢竟要用到很多算法,相比所謂的FPS、MMORPG有另一層次的深度。今天,就給大家簡(jiǎn)單分享一下三消中的核心算法,以及在Unity中的實(shí)現(xiàn)。
· 消除算法圖文詳解
· 三消算法首要實(shí)現(xiàn)的就是找到所有三個(gè)或三個(gè)以上的可消除對(duì)象,但直接找到這些對(duì)象是不太現(xiàn)實(shí)的,所以我們要將需求拆分。可不可以先獲取所有圖案相連的對(duì)象,進(jìn)而在獲取三消對(duì)象,這個(gè)算法也是眾多三消游戲的一致實(shí)現(xiàn)。
· 獲取圖案相同的對(duì)象,一定要以一個(gè)對(duì)象為基準(zhǔn),這樣才能夠知道以誰(shuí)為中心,以這個(gè)中心為核心橫向及縱向的檢測(cè),檢測(cè)到三個(gè)及以上的對(duì)象,那說(shuō)明是可以消除的對(duì)象。
· 當(dāng)然也有特殊情況,在游戲開(kāi)始時(shí),如沒(méi)有設(shè)置任何阻止同色的算法,即有可能出現(xiàn)這種狀況,我們就要也采用一些算法去防止Bug出現(xiàn)。
· 接下來(lái)就是消除處理了,采用一些動(dòng)畫(huà)之類(lèi),此處略過(guò),我們來(lái)講解下落算法。下落算法有很多,我們采用的是逐個(gè)入位法。
· 最后生成新的對(duì)象
· 當(dāng)然如果兩個(gè)圖片交換后,無(wú)法消除要還原回原來(lái)位置
· 項(xiàng)目實(shí)踐
結(jié)束語(yǔ)
當(dāng)然這個(gè)項(xiàng)目是最基礎(chǔ)版,只有簡(jiǎn)單的消除操作,如果加上道具特效,算法會(huì)更多,以后在慢慢琢磨品鑒。最后奉上源碼,這個(gè)項(xiàng)目下落及生成新對(duì)象的延遲時(shí)間還沒(méi)有細(xì)調(diào),調(diào)好后玩起來(lái)比較流暢。
更多關(guān)于網(wǎng)絡(luò)安全培訓(xùn)的問(wèn)題,歡迎咨詢(xún)千鋒教育在線(xiàn)名師,如果想要了解我們的師資、課程、項(xiàng)目實(shí)操的話(huà)可以點(diǎn)擊咨詢(xún)課程顧問(wèn),獲取試聽(tīng)資格來(lái)試聽(tīng)我們的課程,在線(xiàn)零距離接觸千鋒教育大咖名師,讓你輕松從入門(mén)到精通。