Silverlight制作逐帧动画 v2 - part2

简介: Silverlight制作逐帧动画 v2 - part2 接上一篇《Silverlight制作逐帧动画 v2 - part1》,在这里完善了一下算法,加入了fps的机制进去。         private string[] shippics = new string[] { "Ship1/1.
Silverlight制作逐帧动画 v2 - part2

接上一篇《 Silverlight制作逐帧动画 v2 - part1》,在这里完善了一下算法,加入了fps的机制进去。

         private   string [] shippics  =   new   string [] {  " Ship1/1.png " " Ship1/2.png " " Ship1/3.png " " Ship1/4.png "  };
        
protected  DateTime lastTick;
        
protected  TimeSpan elapsed;


        
private   double  lasrFrameTime  =   0 ;
        
private   int  currentFrame  =   0 ;

        
private   double  fps  =   15 ;

        
public  MainPage()
        {
            InitializeComponent();
            lastTick 
=  DateTime.Now;
            CompositionTarget.Rendering 
+=   new  EventHandler(CompositionTarget_Rendering);
        }

        
void  CompositionTarget_Rendering( object  sender, EventArgs e)
        {
            DateTime now 
=  DateTime.Now;
            elapsed 
=  now  -  lastTick;
            lastTick 
=  DateTime.Now;

            lasrFrameTime 
+=  elapsed.TotalSeconds;


            
if  (lasrFrameTime  > 1   /  fps))
            {
                lasrFrameTime 
=   0 ;

                currentFrame
++ ;
                currentFrame 
%=  shippics.Length;
                RenderShip();
            }
        }

        
private   void  RenderShip()
        {
            var imageBrush 
=   new  ImageBrush();
            imageBrush.Stretch 
=  Stretch.None;
            imageBrush.AlignmentX 
=  AlignmentX.Left;
            imageBrush.AlignmentY 
=  AlignmentY.Top;
            imageBrush.ImageSource 
=   new  BitmapImage( new  Uri( " /slShipAnimate;component/ "   +  shippics[currentFrame], UriKind.Relative));
            myShip.Fill 
=  imageBrush;
        }
相关文章
Silverlight中摄像头的运用—part2
Silverlight 4 中摄像头的运用—part1 将跟踪颜色视作输入  好了,我们能够跟踪到这个颜色了,那这么做的意义是什么呢?实际上,我们可以根据它的位置来移动东西。接下来的例子中,创建的一个球会跟随这个颜色一起移动。
540 0
|
前端开发
silverlight中"制作逐帧动画"/"播放gif"收集
“逐帧动画”与“播放GIF”貌似二个风马牛不相干的问题,其实不然! 因为silverlight中的image控件不支持直接把gif动画做为source,所以象做动画常用的"走路的小人","加载loading小动画"...这类经典gif素材,无法直接使用,只能转化为逐帧动画来处理。
924 0
|
内存技术
Silverlight制作逐帧动画 v2 - part1
Silverlight制作逐帧动画 v2 - part1   在silverlight 2的时候我写过一篇《Silverlight制作逐帧动画》,这个是采用storyboard的原理来做的。现在到了silverlight 3最近又想到一个动态将Rectangle的Fill属性设置为动画每一帧的图形。
834 0
Silverlight制作逐帧动画 v2 - part3
Silverlight制作逐帧动画 v2 - part3 总结之前写的两篇 Silverlight制作逐帧动画 v2 - part1 Silverlight制作逐帧动画 v2 - part2 这里把代码归纳整理,做了一些封装,动画全部的又代码进行创建,脱离了Blend这个工具。
706 0
基于Cairngorm的Silverlight开发 - part2
  搭建架构   由浅入深的来搭建架构。 从ModelLocator开始 ModelLocator只是Cairngorm中的一个部分,要使用它并不一定要把Cairngorm所有的架构都搭建起来,ModelLocator是可以单独来使用的。
819 0
|
前端开发 内存技术
Silverlight制作逐帧动画
打算用sl来制作一个游戏,我曾经有flash开发游戏的经验.现在想用sl来做.打算记录下我开发游戏探索的过程. 打开http://www.emu-zone.org/www3/host/emugif/  这个网站.
719 0

热门文章

最新文章