-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
flutter/engine
#46597Labels
e: impellerImpeller rendering backend issues and features requestsImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.team-engineOwned by Engine teamOwned by Engine team
Description
description
I noticed this bug when trying to reproduce #126583, it may be the same issue.
reproduction code
TEST_P(AiksTest, MatrixImageFilterMagnifyPan) {
static uint64_t count = 0;
auto callback = [&](AiksContext& renderer) -> std::optional<Picture> {
Canvas canvas;
canvas.Scale(GetContentScale());
auto image = std::make_shared<Image>(CreateTextureForFixture("airplane.jpg"));
Scalar x = 600 * sin(0.5 * 2.0 * 3.1415 * count / 60.0);
Scalar y = 200 * sin(0.1 * 2.0 * 3.1415 * count++ / 60.0);
canvas.Translate({x, y});
canvas.SaveLayer({
.image_filter = std::make_shared<MatrixImageFilter>(
Matrix{
2, 0, 0, 0, //
0, 2, 0, 0, //
0, 0, 2, 0, //
0, 0, 0, 1 //
},
SamplerDescriptor{}),
});
canvas.DrawImage(image, {0, 0}, Paint{.color = Color(1.0, 1.0, 1.0, 0.5)});
canvas.Restore();
return canvas.EndRecordingAsPicture();
};
ASSERT_TRUE(OpenPlaygroundHere(callback));
}results
Notice that the plane image disappears when it gets to around x = -600.
cc @bdero
Metadata
Metadata
Assignees
Labels
e: impellerImpeller rendering backend issues and features requestsImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.team-engineOwned by Engine teamOwned by Engine team
