blob: 67842251ea0190b9878135f5f14b0c9290d1068a [file]
/*
* Copyright 2026 Rive
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#include "gm.hpp"
#include "gmutils.hpp"
#include "rive/shapes/paint/color.hpp"
#include "rive/math/mat2d.hpp"
#include "rive/renderer.hpp"
using namespace rivegm;
using namespace rive;
// Causes gamma correction to get used by un
class GammaCorrectionGM : public GM
{
public:
GammaCorrectionGM() : GM(500, 500) {}
private:
void onDraw(Renderer* canvas) override
{
{
Paint paint(0xFFB000B0);
Path path;
path->addRect(50, 50, 400, 400);
canvas->drawPath(path, paint);
}
canvas->clipPath(PathBuilder::Rect({240, 240, 260, 260}));
{
Paint paint(0xFFF0B000);
Path path;
path->addRect(200, 200, 100, 100);
canvas->drawPath(path, paint);
}
}
};
GMREGISTER(gamma_correction_clip, return new GammaCorrectionGM)