999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Egret引擎Tween緩動動畫技術研究

2017-05-27 22:55:49佟鑫黃偉
科技傳播 2017年6期
關鍵詞:動畫

佟鑫+黃偉

摘 要 通常情況下,游戲中或多或少都會帶有一些緩動動畫。例如界面彈出,或者道具飛入飛出的特效等等。在制作這些緩動動畫的時候我們僅僅希望簡單的辦法實現這種移動或者變形縮放的效果。Egret引擎中的Tween緩動動畫類就為我們提供了相關的功能。本文將從Egret引擎的基本情況入手,對Tween緩動動畫功能進行分析,并將Tween緩動動畫的應用進行舉例分析。

關鍵詞 Egret;Tween;動畫

中圖分類號 G2 文獻標識碼 A 文章編號 1674-6708(2017)183-0027-02

H5游戲可用于移動端的web頁面,玩家無需下載就可以自由體驗游戲,有助于解放手機內存,與此同時,H5游戲還能在移動端做出Flash無法做出的許多動畫效果。喬布斯曾說“沒人愿意使用Flash,全球已經開始步入H5時代”,而如今隨著cocos2d-x、Egret等H5引擎的逐漸爆紅,有強大引擎支撐的H5游戲繼而取代技術落后、特效單一的Flash游戲便有跡可尋。而Egret引擎作為一款免費開源的國產引擎,對于它的使用與應用進行了解與探討具有一定的實際意義。

1 Egret的基本情況

1.1 Egret的發展背景

國內較成熟的H5游戲引擎包括cocos2d-x,還有今天的主題Egret。cocos2d-x最開始的時候主打跨平臺使用C++開發較多,然而C++門檻較高,使用cocos2d-x經常糾結于語言的同時還要跟引擎的BUG打交道;而Egret引擎跨平臺,入手容易,性能較好,輔助開發工具較多,團隊合作更加得心應手。以前的HTML5游戲,基本都是用JavaScript去編寫。這樣會面對兩個問題,首先JavaScript是弱類型的,所以HTML5給人的印象是只能做一些表現力很弱的、很卡的游戲;開發游戲維護起來非常困難,代碼越寫越亂、問題越寫越多。Egret引擎通過微軟的TypeScript語言來解決這個問題,用TypeScript寫然后再編譯成JavaScript。TypeScript是一個強類型的語言,而且是JavaScript的超集,也就是說可以JavaScript和TypeScript混著寫。其次它是一個強類型的語言,比較容易像C++那樣去維護。

1.2 Egret引擎的基本狀況

Egret引擎是一款開源免費的2D游戲引擎,大量的借鑒了Flash的一些設計思想,在底層使用了顯示對象、顯示列表和事件等技術。在圖形圖像渲染中,Egret引擎使用了HTML5標準中的canvas技術,保證了使用Egret引擎開發的游戲在各種瀏覽器上的兼容性。Egret引擎不僅提供了CPU渲染,還提供了性能更為強大的硬件加速渲染模式——WebGL渲染模式。Egret繼承了Flash的優點,同時也針對游戲開發,加入了一些新的功能。HTML5編寫的頁面容易使手機變熱,而變熱的原因主要是由于畫面需要經常刷新重新繪制導致的。Egret引擎采用自動臟矩形技術,來實現局部渲染。引擎底層會智能的計算屏幕中發生變化而需要重繪的舞臺局部區域,并僅對這個區域進行重繪,這樣將大大減少無用的渲染工作量,大幅降低繪制的開銷,提高游戲性能。

2 Tween的功能及應用

2.1 Tween緩動動畫的功能

Tween中封裝了最常用的緩動動畫功能,用簡單的代碼就能實現移動或者變形縮放等效果。比如讓精靈移動到點擊的位置,首先通過Tween. get()方法來獲取精靈對象,然后通過to()方法來給出需要設置緩動的具體參數,即精靈對象的坐標屬性及移動的終點坐標。在Tween緩動動畫執行的過程中,也許我們邏輯需要實時做一些變化,跟蹤這一過程,可以通過在Tween.get()方法的第二個參數中,加入變化事件的處理函數來實現;比如做一個射擊類游戲,敵人在做一個Tween緩動動畫運動過程中,我們的槍口要實時瞄準,那么就需要在Tween的變化過程中隨時計算,修正槍口的角度。

2.2 Tween緩動動畫的使用實例

正是由于Tween緩動動畫具有控制靈活、緩動過程多樣的特點,因此如何使用Tween緩動動畫從而得到多樣化、多元化的效果成了我們學習了解的核心內容。接下來我們將以制作槍口追隨獵物這種緩動動畫為例,講述Tween動畫的使用。

首先我們在游戲場景中添加一個獵物精靈obj,給這個獵物精靈添加一個緩動動畫,使其能夠在場景中移動;然后給它指定一個移動的目標坐標,to({x:1000}),也就是使獵物從舞臺的左側移動到x坐標為1000的位置;接下來設置to()方法的第二個參數,緩動的時間,指定這個緩動動畫執行的時間,to({x:1000},1000),這個參數的單位為毫秒;這兩個參數設置好以后,獵物精靈就能夠在舞臺上從左向右進行移動;接下來我們需要在獵物精靈移動的過程中去修正槍口的位置,使槍口能實時瞄準獵物;我們在get()方法中加入變化事件處理函數,Tween.get(obj,{onC hange:funcChange,onChangeObj:obj}),在變化事件處理函數中根據獵物的坐標實時修正槍口的坐標;

var funcChange = function():void{

gun.x = obj.x;

gun.y = obj.y;

}

在熟悉了這個方法后,我們就可以將它更加廣泛而深入的應用,比如塔防類游戲,當敵人進攻時,我們可以應用Tween緩動動畫,將炮口實時瞄準敵人并發射炮彈,敵人移動時,炮口也可以實時跟隨移動。

3 結論

誠如我們所見,隨著網絡游戲慢慢滲透我們的生活,網絡游戲已成為我們休閑生活中不可或缺的一部分,它對我們的影響力之大,從而奠定了Egret游戲引擎的重要位置,而Tween緩動動畫作為Egret引擎的一個功能模塊,它的重要性可見非同一般。本文從Egret引擎的基本情況入手,分析探討了Tween緩動動畫的功能,并列舉了Tween緩動動畫的實際使用例子,希望能夠對同領域從事Egret引擎游戲開發的人員有所幫助。

參考文獻

[1]張鑫磊.Egret HTML5游戲開發指南.北京.電子工業出版社,2016.

[2]白鷺開發者社區.教學示例[EB/OL].http://edn.egret. com/cn/example/page/index#070-tween-comp.

猜你喜歡
動畫
我們的“動畫偶像”
Clifford hits the big screen
做個動畫給你看
動畫發展史
Mg動畫在慕課中的應用及其制作
我的動畫夢
文苑(2019年22期)2019-12-07 05:28:56
好萊塢動畫與中國動畫對比
流行色(2019年7期)2019-09-27 09:33:28
動畫批評融入動畫教育的思考
新聞傳播(2018年3期)2018-05-30 07:01:39
暖心動畫:最好的禮物
我是動畫迷
學生天地(2016年9期)2016-05-17 05:45:06
主站蜘蛛池模板: 成人国产精品网站在线看| 久久网综合| 国产乱人伦AV在线A| 97se亚洲综合在线天天| 国产国产人成免费视频77777| 精品91在线| 色婷婷色丁香| 精品久久久久久成人AV| 日本三级精品| 麻豆a级片| 欧美成人亚洲综合精品欧美激情| 大陆精大陆国产国语精品1024| 午夜日本永久乱码免费播放片| 四虎综合网| 欧美一级色视频| 国产男人的天堂| 麻豆AV网站免费进入| 国产亚洲视频免费播放| 精品久久香蕉国产线看观看gif| 在线国产毛片| 亚洲国产欧美自拍| 五月婷婷综合在线视频| 无码中文字幕精品推荐| 天天做天天爱天天爽综合区| 国产青榴视频| 国产在线视频导航| av免费在线观看美女叉开腿| 97精品国产高清久久久久蜜芽| 2020久久国产综合精品swag| 免费无码AV片在线观看中文| 特级精品毛片免费观看| 99伊人精品| 欧美精品不卡| 久久久久亚洲精品成人网 | 欧美一级视频免费| 亚洲无码不卡网| 999精品免费视频| 国产成人精品第一区二区| 国产日韩欧美在线播放| 国产午夜福利亚洲第一| 亚州AV秘 一区二区三区| 亚洲无码免费黄色网址| 精品国产亚洲人成在线| 午夜精品久久久久久久无码软件| 国产aⅴ无码专区亚洲av综合网| 欧美精品在线观看视频| yjizz国产在线视频网| 五月激情综合网| 国产精品粉嫩| 婷婷99视频精品全部在线观看| 久久久久人妻一区精品| 91欧美在线| 日本一区二区三区精品AⅤ| 国产精品专区第1页| 久久久久亚洲精品成人网| 国产精品无码一区二区桃花视频| 玖玖精品在线| 国产丝袜啪啪| 日韩国产黄色网站| 午夜免费视频网站| 亚洲国产精品无码AV| 日韩精品少妇无码受不了| 精品无码一区二区三区在线视频| 国产v精品成人免费视频71pao| 免费在线a视频| 亚洲IV视频免费在线光看| 亚洲九九视频| 欧美a级在线| 国产特级毛片| 色婷婷久久| 久久婷婷国产综合尤物精品| 欧美激情二区三区| 亚洲成在线观看 | 伊人网址在线| 中文字幕av无码不卡免费| 91国内外精品自在线播放| 性色生活片在线观看| 夜夜操国产| 国产成人精品午夜视频'| 一级毛片在线播放| 国产小视频网站| 久久a级片|