麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > HTML > 正文

HTML5+lufylegend實現游戲中的卷軸

2024-08-26 00:18:31
字體:
來源:轉載
供稿:網友
玩過RPG或者橫版格斗的同學應該知道,人物走到屏幕中央后,由于地圖過大,地圖會進行移動,人物則相對靜止不動,本文給大家介紹通過HTML5+lufylegend實現游戲中的卷軸,感興趣的朋友一起學習吧
 
 
lufylegend是一個HTML5開源引擎,它實現了利用仿ActionScript3.0的語法進行HTML5的開發, 包含了LSprite,LBitmapData,LBitmap,LLoader,LURLLoader,LTextField,LEvent等多個AS開發人員熟悉的類, 支持Google Chrome,Firefox,Opera,IE9,IOS,Android等多種熱門環境。 利用lufylegend可以輕松的使用面向對象編程,并且可以配合Box2dWeb制作物理游戲, 另外它還內置了LTweenLite緩動類等非常實用的功能, 現在開始使用它吧,它可以讓你更快的進入HTML5的世界! 
什么是卷軸 
玩過RPG或者橫版格斗的同學應該知道,人物走到屏幕中央后,由于地圖過大,地圖會進行移動,人物則相對靜止不動。這個就是傳說中的卷軸。例如下圖是我的游戲“三國戰線”里的卷軸: 

HTML5+lufylegend實現游戲中的卷軸


有了以上的簡介,大家應該明白了什么是卷軸。說白了就是鏡頭跟隨主角的效果。接下來,我們就利用lufylegend.js游戲引擎來實現這個效果。 
原理介紹 
其實實現這個效果的關鍵在于如何使人物靜止,何時移動地圖,以及如何移動地圖。在探究這個兩個問題之前,我們先創建一個結構良好的舞臺層(及一個LSprite對象),以便以后的操作。舞臺結構如下: 
+- 舞臺層 

+- 地圖層 

+- 人物層 
可見舞臺層就是地圖層和人物層的父元素,并且人物層在地圖層上方,畢竟人物是站在地圖上的。我們知道,子對象的坐標是相對于父對象的,所以移動父對象,子對象會跟著移動。這點要先弄明白。 
如何使人物靜止呢?何時移動地圖呢?如何移動地圖呢?也許你會想,首先用if(xxx){...}來判斷人物的坐標是否達到屏幕中央,如果是,則移動地圖對象,如果不是則移動人物對象。這么做的話就麻煩了。其實有更簡單的方法: 
卷軸/不卷軸時,我們的人物都是在移動,但是如果人物達到屏幕中央時,要開始卷軸了,我們的舞臺層就進行與人物速度方向相反、大小相同的移動,那么人物的相對于canvas畫布的位移就抵消了,看上去就是靜止的,而地圖就跟著父類向反方向移動。這個類似于拍古裝電影,拍兩個人一邊騎馬一邊談話。如果人和馬在前進,攝像機以相同的速度跟拍,那么得到的畫面就是人物并沒有移動,而人物背后風景是在移動的。 
接下來看實現代碼。 
實現代碼 
以下是含有詳細注釋的代碼: 
XML/HTML Code復制內容到剪貼板
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大片毛片| 亚洲欧美国产精品va在线观看 | 91,视频免费看 | 精品一区二区在线观看视频 | 在线成人www免费观看视频 | 久久综合一区 | 免费看国产 | 国产毛片毛片毛片 | 国产91小视频在线观看 | av日韩一区二区三区 | 成人午夜在线免费 | 成人毛片视频免费看 | xxxxxx免费 | 逼特逼视频在线观看 | 午夜激情视频网站 | 黄色网址免费在线 | 4p一女两男做爰在线观看 | 欧美一级高清免费 | 日韩深夜视频 | 国产午夜免费 | 久久亚洲精品久久国产一区二区 | 欧美黄色大片免费观看 | 黄色av.com | 久久国产精品久久久久久 | 久久精品伊人网 | 2021狠狠操 | 国产午夜亚洲精品理论片大丰影院 | 欧美一级做一级爱a做片性 91在线视频观看 | 国产欧美精品综合一区 | 91成人免费视频 | 免费观看一区二区三区视频 | 欧美日穴视频 | 久久久精品精品 | 男女做性免费网站 | 久久久久国产成人免费精品免费 | 成人毛片网 | 中文字幕免费播放 | 91在线视频网址 | 免费一级毛片观看 | 日本在线一区二区 | 久久亚洲精品久久国产一区二区 |