JujuAdams / Clean-Shapes

Antialiased primitives library for GameMaker Studio 2023.1
MIT License
38 stars 6 forks source link

Rendering on iPhone SE 2nd Ed. broken (upstream) #35

Open caroparo opened 9 months ago

caroparo commented 9 months ago

Also tested on v2023.6; rendered results are broken for the test project. Using latest runtime, built with Xcode 15.1. Target device is iPhone SE 2nd generation, with iOS 16.1.2.

Attached is the result on iOS: image0

And the expected result rendered on PC: screenshot_1120 2024-01-12

JujuAdams commented 9 months ago

Upstream issue somewhere. I'm using a lot of varyings for the fragment shader which is likely part of the story.

However, Clean Shapes is not in active development and I will not be addressing this issue in the immediate future.

caroparo commented 9 months ago

Thanks a lot for the reply! There's indeed this error in XCode's Run/Console logs:

Error linking program:
ERROR: Implementation limit of 32 varying components exceeded. Unable to allocate 'v_vCircleInnerColour'.

I was able to remove varyings and distance functions for shapes I don't intend to use in my project, and render correctly.

JujuAdams commented 9 months ago

Great! Very likely possible to reduce the register count in the general case by reusing varyings but I leave that as an exercise to the reader.