正文

游戏数学(25)

精通C#游戏编程 作者:(英)斯库勒


 

8.4  补间

补间(tween)是指随时间将一个值改为另一个值。补间可以用来创建动画、改变位置、颜色、大小或其他你可能想到的值。补间在Adobe Flash中的应用最为广泛,Adobe Flash中也提供了许多内置的补间函数。

8.4.1  补间概述

通过一个示例了解补间的工作原理是最简单的,然后我们将深入探究其细节。可以在已有的代码库中使用这个状态,但是如果想要创建一个新项目,就要添加对Tao.DevIL的引用,以及添加Sprite、Texture和TextureManager类。

class TweenTestState: IGameObject

{

Tween _tween = new Tween(0, 256, 5);

Sprite _sprite = new Sprite();

public SpriteTweenState(TextureManager textureManager)

{

_sprite.Texture = textureManager.Get("face");

_sprite.SetHeight(0);

_sprite.SetWidth(0);

}

public void Render()

{

// Rendering code goes here.

}

public void Update(double elapsedTime)

{

if (_tween.IsFinished() != true)

{

_tween.Update(elapsedTime);

_sprite.SetWidth((float)_tween.Value());

_sprite.SetHeight((float)_tween.Value());

}

}

}

代码中使用Tween对象,在5s内使一个精灵从无变到大小为256。这里的Tween构造函数接受3个参数。第一个参数是初始值,第二个参数是目标值,最后一个参数是从初始值变化到目标值所需的时间。


上一章目录下一章

Copyright © 读书网 www.dushu.com 2005-2020, All Rights Reserved.
鄂ICP备15019699号 鄂公网安备 42010302001612号