apply method
Implementation
@override
void apply(Buffer source, Buffer target, double dt) {
if (filters.isEmpty) {
_copyBuffer(source, target);
return;
}
_ensureScratch(source.width(), source.height());
var read = source;
var useFront = true;
for (var i = 0; i < filters.length; i++) {
final filter = filters[i];
final isLast = i == filters.length - 1;
final write = isLast ? target : (useFront ? _front! : _back!);
write.clear();
filter.apply(read, write, dt);
if (!isLast) {
read = write;
useFront = !useFront;
}
}
}