J'étudie Pixel Bender. J'ai un filtre dont je veux tweeter le paramètre. Pour autant que je sache, pour tweeter un paramètre de Pixel Bender, je dois tweeter un objet numérique et assigner l'objet numérique tweening comme valeur de tableau pour les données du shader.
J'étais convaincu que ce qui suit fonctionnerait, mais il semble que la classe Number n'ait pas de propriété value, donc je ne sais pas quelle propriété utiliser lors de la création d'un nouveau tween pour l'objet number :
import fl.transitions.*;
import fl.transitions.easing.*
var shader:Shader;
var shaderFilter:ShaderFilter;
var motionTween:Tween;
var tweenNumber:Number = new Number(0.0);
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, dataLoaded);
loader.load(new URLRequest("PBFilter.pbj"));
function dataLoaded(e:Event):void
{
loader.removeEventListener(Event.COMPLETE, dataLoaded);
shader = new Shader(e.target.data);
shaderFilter = new ShaderFilter(shader);
flower.filters = [shaderFilter];
motionTween = new Tween(tweenNumber, "value", Bounce.easeOut, 0.0, 100.0, 5, true);
motionTween.addEventListener(TweenEvent.MOTION_CHANGE, updateFilter);
}
function updateFilter(e:TweenEvent):void
{
shader.data.amount.value = [tweenNumber];
myMovieClip.filters = [shaderFilter];
}