游戏效率

来源:互联网 发布:人工智能三定律 编辑:程序博客网 时间:2024/05/29 16:36

     经过一些代码的测试,得出以下结论,希望能对大家有所帮助。
     首先cacheAs
Bitmap属性不能滥用,使用以后显示对象会按一个像素一个像素的移动,效果不好,但是对于没有缩放和旋转的平移的矢量图,会显著的提高效率,提高的幅度取决于原矢量图的复杂程度。
矢量图
动画的缩放平移动画的效率 会比 同样大小的位图的缩放平移动画 的效率低,同样,低多少取决于原矢量图的复杂程度。所以简单的矢量图并不需要替换成位图在做动画。
将镜头外的显示对象的visible属性设为false会节省不少渲染时间。所以建议这样做。

mask的显示对象 如果没有被显示,比如不再mask区域,它还是使用相同的时间来渲染。所以建议mask区域外的显示对象设visible属性为false。


我的测试代码:

  1. const WIDTH = 550;
  2. const HEIGHT = 400;

  3. addEventListener(Event.ENTER_FRAME,enterFrameHandle)

  4. var con = new Sprite();
  5. addChildAt(con,0)

  6. //test mask
  7. //con.mask = maskMc;


  8. var count=0;
  9. function enterFrameHandle(e:Event)
  10. {
  11.         //test bitmap
  12.         //var mc = new BallBitMap();
  13.         var mc = new Ball();
  14.        
  15.         con.addChild(mc);
  16.         mc.x=Math.random()*WIDTH;
  17.         mc.y=Math.random()*HEIGHT
  18.        
  19.         //mc.cacheAsBitmap = true;
  20.         //test visible
  21.         //if(count>=1)
  22.                 //mc.visible=false;
  23.                
  24.         count++;
  25.        
  26.         if(count==400)
  27.                 trace(getTimer())
  28.                
  29. }
原创粉丝点击