FLASH8新技术实现横向卷轴

2008-04-02 10:42:04来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  7以前,FLASH游戏,碰到大位图的背景移动明显会显的比较吃力,会占用比较多的CPU资源。而且在控制移动速度方面也很的困难。好一点的解决办法是把位图分割成小块,然后分块移动,但也是很的麻烦。

  好在8里提供了BitmapData对象,利用这个对象,为这一问题提供了很好的解决方案。当熟练使用该对象以后,无论多么大的位图都能够流畅的显示出来。当然现在的版本很的简单,只有一个方向的移动方式,且不支持动态控制速度。(类似双截龙相同的卷轴背景),但一旦您对这些代码理解以后,相信做起来并不难。

  这个组件的代码很简单。

  
importflash.display.BitmapData;

  importflash.geom.Rectangle;

  importflash.geom.Point;

  logo=flash.display.BitmapData.loadBitmap(pic);

  w1=logo.width;

  h1=logo.height;

  th=h1-h;//th就是要显示的区域的最左上角纵坐标,灵活的控制他的大小能够实现对背景的控制

  this.createEmptyMovieClip("holder_mc",1);

  varbitmap_1=newBitmapData(w,h,false,0xFFFFFFFF);

  holder_mc.attachBitmap(bitmap_1,1);

  this.onEnterFrame=function()

  {

  th-=sco;

  if(th<0){

  sco=0;

  th=0;

  }

  bitmap_1.copyPixels(logo,newRectangle(0,th,w,h),newPoint(0,0));

  //最主要的就是该句的作用,他的作用是在bitmap_1内填充一个矩形,而矩形区域的颜色来自logo的一个矩形区域,该矩形区域的横坐标为0,高坐标为th,宽为w,高为h.

  }


  提醒,该组件同样支持拉伸和旋转。希望这个技巧能够帮到大家 以上文档请使用FLASH8.0打开。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 常用ActionScript速查表

下一篇: 用AS让MC做随机运动的具体解析