亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 辦公 > Flash > 正文

Flash Actionscript 優化指南

2020-07-17 13:18:12
字體:
來源:轉載
供稿:網友
第一章 AS3的一些優化計算方法
    用乘法來代替除法(當除數可轉化為有限數的時候)。比如var n:Number = value * 0.5;要比var n:Number = value / 2;快。但差別并不是很大。只有在需要大量計算情況下,比如3D引擎中差別才比較明顯。 用位運算代替除2或乘2。比如10>>1要比10*2快,而10<<1要比10*2快。從測試來看位運算幾乎比乘除快一倍,但是一般情況下,我們不能選擇位運算,比如我們就不能用13>>1來代替13/2,盡管前者比后者運算速度更快,但2者的運算結果卻不一樣。所以還是要看具體情況。 用unit()或int()代替取整運算Math.floor()和Math.ceil()。比如var test:uint = uint(1.5);要比var test:Number = Math.floor(1.5);快;而var test:uint = uint(1.5) 1;要比var test:Number = Math.ceil(1.5);也快。如果是Math.floor(),還可以用位運算(>>0)來代替。比如var test:uint =1.5>>0,比unit()或int()更快。 用乘-1來代替Math.abs()方法。比如var nn:Number = -23;var test:Number= nn < 0 ? nn * -1 : nn;要比var nn:Number = -23;var test:Number = Math.abs(nn);快。當然還有更多的優化計算的方法。一般來說,低級運算要比高級運算速度;內部方法比調用其他方法速度快。另外要注意的是,這些方法有的時候可能并一定適用。
第二章 Actionscript 優化指南
原著 Marco Lapi,alias Lapo, aw譯
在這篇文章中,我們將討論多種優化 Actionscript 代碼的方法.此外我們也針對一些典型的游戲代碼進行了系列測試,來最大限度的發掘、提高Flash播放器的性能。何時進行優化對現有程序進行優化的過程,有時十分的冗長與困難,這與原始代碼的非優化程度有關,所以在投入大量時間進行代碼優化之前,最重要的是要估計出要在什么地方對代碼做出修改或替換。
一個游戲代碼的最重要的部分就是主循環體,通常情況下該循環體要在flash的每一幀上執行,并控制游戲中的角色屬性和重要的數據參數。而對于主循環體以外的部分,也可能是次要循環部分,同樣要注意是給其否分配了過多的資源,而沒有分配給那些更需要資源的核心部分。
通過積累在各處節約出來的時間(可能每處僅僅是幾個毫秒),您會明顯發現自己的swf運行得更加穩定,并且游戲感也大大加強。
簡潔與高效的代碼
書寫出十分簡潔、可以再次調用的代碼(有時可能是面向對象的)是一項精細的工作,但這需要多年的編程經驗。對于OOP(object oriented programming,面向對象的程序設計),有些場合根本利用不到它的優勢,這使得它顯得十分奢侈。在有限的資源條件下(可能是flash播放器的原因),通過更先進的方法,像剛剛提到的OOP,就可能反而導致令人不滿意的結果。
我們并不是說OOP對游戲編程不好,只是在某些場合它顯得過于奢侈和多余。畢竟有時候“傳統的方法”卻能得到更好的結果。大體而言,用OOP是比較好的,因為它讓代碼維護更加簡單。但在后文中,你會看到有時為了充分發揮flashplayer性能,而不采用OOP技術。例如:處理快速滾動或者計算十分復雜的數學問題?;镜膬灮惶峒按a優化,我們馬上會聯想到執行速度的改進,而很少去考慮系統資源的分配。這是因為當今,即使是將被淘汰的計算機,都有足夠的內存來運行我們大部分的flash游戲(128M的內存足以滿足大多數情況的需要,況且,512M的內存是當今新電腦的基本配置)
變量
在各種重要的代碼優化手段中,有這么一條:在定義局部變量的時候,一定要用關鍵字var來定義,因為在Flash播放器中,局部變量的運行速度更快,而且在他們的作用域外是不耗占系統資源的。
aw附:var變量僅僅在花括號對中才有“生命”,個人認為沒有系統學過編程的人容易出錯的一個地方:

awMC.onLoad = function(){
var aw = 1;
}
awMC.onEnterFrame = function(){
//不存在aw這個變量
}
一段非優化代碼:
function doSomething()
{
mx = 100
my = 100
ar = new Array()
for (y=0; y < my; y )
{
for (x=0; x < mx; x )
{
i = (y * mx) x
arr[i] = i
}
}
return arr
}

這段代碼中,并未聲明函數體內的那些變量(那些僅僅在函數內使用的變量)為局部變量,這使得這些變量被播放器調用的速度更慢,并且在函數執行完畢的時候仍然耗占系統資源。
下面列出的是經過改進的同樣功能的代碼:

function doSomething()
{
var mx = 100
var my = 100
var ar = new Array()
for (var y=0; y < my; y )
{
for (var x=0; x < mx; x )
{
var i = (y * mx) x
arr[i] = i
}
}
return arr
}

這樣一來所有的變量均被定義為了局部變量,他們能夠更快地被播放器調用。這一點在函數大量(10,000次)循環運行時顯得尤為重要!當一個函數調用結束的時候,相應的局部變量都會被銷毀,并且釋放出他們占有的系統資源。
上一頁12 3 4 下一頁 閱讀全文
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩精品中文字幕视频在线| 色无极影院亚洲| 精品国产一区二区三区久久狼5月| xxxxx成人.com| 国产精品91在线观看| 国产精品白嫩美女在线观看| 亚洲国产日韩一区| 久久精品一偷一偷国产| 国内精品久久久久影院 日本资源| 国产日韩av在线播放| 亚洲国产精品电影在线观看| 精品国产乱码久久久久久天美| 国产在线久久久| 亚洲激情视频在线播放| 国产不卡av在线免费观看| 久久精品国产一区| 国产亚洲精品久久久优势| 午夜精品一区二区三区在线视频| 国产精品视频网址| 久久久91精品国产一区不卡| 亚洲精品美女久久久| 午夜精品一区二区三区在线视| 中文字幕亚洲无线码在线一区| 国产精品夜间视频香蕉| 亚洲欧美日韩在线一区| 久久精品一偷一偷国产| 欧美疯狂性受xxxxx另类| 国产一区深夜福利| 亚洲精品色婷婷福利天堂| 国产精品专区h在线观看| 成人激情视频网| 亚洲免费福利视频| 亚洲美女av黄| 久久久久成人网| 亚洲精品美女久久| 欧美性猛交xxxx乱大交3| 日韩免费av在线| 亚洲国产成人精品女人久久久| 国外视频精品毛片| 国产一区二区丝袜高跟鞋图片| 亚洲国产成人精品一区二区| 亚洲欧美制服另类日韩| 日韩小视频在线观看| 高清欧美性猛交xxxx| 亚洲成人av在线播放| 国产精品入口免费视| 激情av一区二区| 三级精品视频久久久久| 久久久精品一区二区| 97超碰蝌蚪网人人做人人爽| 国内精品国产三级国产在线专| 麻豆国产精品va在线观看不卡| 国产精品久久网| 久久久精品电影| 91tv亚洲精品香蕉国产一区7ujn| 国产精品爽黄69天堂a| 亚洲国产精品人人爽夜夜爽| 91精品国产91久久久久福利| 亚洲第一色在线| 国产精品中文字幕在线| 91爱爱小视频k| 亚洲午夜女主播在线直播| 两个人的视频www国产精品| 一本一道久久a久久精品逆3p| 米奇精品一区二区三区在线观看| 性欧美在线看片a免费观看| 国产一区私人高清影院| 97色在线视频| 久久99国产精品自在自在app| 在线看日韩欧美| 成人国产精品久久久久久亚洲| 国产情人节一区| 亚洲精品理论电影| 中文字幕亚洲欧美| 色婷婷av一区二区三区在线观看| 精品小视频在线| 日韩欧中文字幕| 欧美性资源免费| 欧美成人精品h版在线观看| 亚洲欧洲在线看| 国产91露脸中文字幕在线| 国产不卡一区二区在线播放| 亚洲网址你懂得| 97色在线视频观看| 国产视频欧美视频| 亚洲情综合五月天| 欧美精品福利视频| 亚洲新中文字幕| 成人av资源在线播放| 欧美另类交人妖| 国模gogo一区二区大胆私拍| 欧美一级bbbbb性bbbb喷潮片| 中文字幕欧美日韩在线| 亚洲欧美综合另类中字| 亚洲97在线观看| 91av在线视频观看| 5566成人精品视频免费| 欧美—级高清免费播放| 国产精品∨欧美精品v日韩精品| 成人美女av在线直播| 57pao国产成人免费| 久久久久国产精品一区| 国产美女直播视频一区| 亚洲free性xxxx护士hd| 国产精品久久久久久久一区探花| 中文字幕日韩欧美在线| 国产视频在线一区二区| 久久久女女女女999久久| 亚洲自拍偷拍视频| 日韩最新在线视频| 久久免费成人精品视频| 综合国产在线视频| 国产精品成人品| 国产精品免费看久久久香蕉| 麻豆乱码国产一区二区三区| 色噜噜国产精品视频一区二区| 欧美性猛交xxxx免费看| 4k岛国日韩精品**专区| 97精品久久久| 久久久久一本一区二区青青蜜月| 欧美日韩成人在线视频| 久久艹在线视频| 国产日韩精品在线播放| 欧美亚洲日本黄色| 亚洲精品999| 久久久久久综合网天天| 欧美高清自拍一区| 国产精品青草久久久久福利99| 精品人伦一区二区三区蜜桃网站| 午夜精品视频网站| 深夜福利日韩在线看| 日韩av一卡二卡| 一区二区日韩精品| 欧美午夜精品在线| 日韩h在线观看| 日韩电视剧免费观看网站| 97国产精品免费视频| 亚洲精品国产欧美| 亚洲国产另类 国产精品国产免费| 亚洲日本中文字幕| 亚洲女人天堂网| 在线亚洲男人天堂| 视频直播国产精品| 91色视频在线观看| 97精品欧美一区二区三区| 欧美日韩成人免费| 欧美大码xxxx| 国产精品久久久久久av福利| 亚洲精品一区av在线播放| 欧美做受高潮1| 欧美精品videos| 91免费高清视频| 国产精品十八以下禁看| 中文字幕亚洲情99在线| 国产精品久久久久久久久久久不卡| 欧美做受高潮电影o| 成人激情免费在线| 久久精品成人欧美大片| 亚洲一区二区三区成人在线视频精品| 亚洲电影成人av99爱色| 欧美影院久久久| 国产精品欧美日韩一区二区| 亚洲国产天堂久久综合网| 亚洲综合在线做性|