Yeah, we’ve seen this reported before - I remember a few weeks ago another JUCE developer had similar issues, but I’ve lost that thread in my consciousness stack - so here are some threads which might be related, and thus may have fixes (not yet pushed to develop) worth investigating:
Because I think this is still an issue, here a simple demo to reproduce the issue
The code will render differently on Mac and Windows (both with same physical pixel scales).
[Differences]
class BoxDemo : public juce::Component
{
public:
BoxDemo() { setTransform (juce::AffineTransform::scale (1.33)); }
void paint (juce::Graphics& g)
{
g.fillAll (juce::Colours::white);
g.setColour (juce::Colours::black);
g.fillRect (10, 2, 2, 2);
g.fillRect (20.f, 2.…
But it’s still clipped by the low-level context regardless of what rectangle you feed into the fillRect call. You can safely feed {-10000,-10000, 1000000, 1000000 } in there, and it will be correctly clipped. Or do you think that any fillRect automatically just does that, regardless of the clip rect and then overstomps memory like crazy?
Hey All,
I am having a few issues rendering alpha channels from JUCE into OpenGL textures. Specifically, the issue is with anti-aliasing.
Please look at these tests, where I am loading a PNG image with transparency into an OpenGL texture. You will see white text on a color background. The text is the texture image (white text on transparent background), the background color is made by OpenGL.
In this example, the PNG is loaded with JUCE’s ImageFileFormat::loadFrom, and then sent to OpenGL:
h…