javascript - 游戲里面背景移動(dòng)的原理是什么?
問(wèn)題描述
比如人向前走,背景向后,切換畫(huà)布
問(wèn)題解答
回答1:實(shí)現(xiàn)的原理可以有很多,根據(jù)游戲的主題和內(nèi)容會(huì)有所差異。我所知道的常見(jiàn)比較好實(shí)現(xiàn)的:1、設(shè)置一張背景圖,平鋪游戲主體區(qū)域大小,設(shè)置background-repeat為repeat,通過(guò)定時(shí)器改變?cè)搱D片的background-position的坐標(biāo)即可實(shí)現(xiàn)(例如微信上的打飛機(jī)游戲的背景)。2、此外還有一些背景相對(duì)復(fù)雜的可采用一個(gè)子容器內(nèi)含有多張背景圖無(wú)間隙拼接,針對(duì)父容器做相對(duì)定位,移動(dòng)即改變子容器的top、left值等(類似于輪播圖的原理),因?yàn)槿讼蚯白邔?shí)際上只是“人”這個(gè)層級(jí)在限定區(qū)域內(nèi)活動(dòng),同時(shí)地面和背景在另一相同的層級(jí)往人的相反方向定位移動(dòng)的效果所產(chǎn)生的。
回答2:我第一印象是超級(jí)瑪麗這種2D游戲,它的背景并不是二方連續(xù)的,左右方向,我覺(jué)得最笨的辦法就是那個(gè)2D背景很長(zhǎng)很長(zhǎng),然后攝像機(jī)一直往前推進(jìn),哈哈。
相關(guān)文章:
1. node.js - mongodb查找子對(duì)象的名稱為某個(gè)值的對(duì)象的方法2. html5 - datatables 加載不出來(lái)數(shù)據(jù)。3. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????4. 運(yùn)行python程序時(shí)出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯(cuò)誤?5. html5和Flash對(duì)抗是什么情況?6. 利用IPMI遠(yuǎn)程安裝centos報(bào)錯(cuò)!7. 測(cè)試自動(dòng)化html元素選擇器元素ID或DataAttribute [關(guān)閉]8. javascript - 在 model里定義的 引用表模型時(shí),model為undefined。9. 前端 - @media query 使用出現(xiàn)的問(wèn)題?10. javascript - QQ第三方登錄的問(wèn)題

網(wǎng)公網(wǎng)安備