Rendering / Refresh Slows Down Significantly when Plugin is Active

3.0.3 (3086)
Edit: Originally I was testing only my plugin but I realised if I have even the original ShowCrosshair on, my rendering and refresh in the edit view gets extremely choppy. Is there some setting I can change? I’m using a 2017 MBP and do not experience these issues in G2.

Original Post: My plugin ShowCrosshairOnSelect which is based on ShowCrosshair by @mekkablue significantly slows down rendering when it’s active. Is there something I’m doing that’s inefficient? I’ve tested it with no other plugins active and only my plugin active – it’s most noticeable when I’m panning with the hand tool, the refresh gets quite choppy.

That is a problem with the python runtime. There is a significant overhead just calling a python method from ObjectiveC. I’m in contact with the pyobjc def. but it might take a while.

(Ronald is working on this right now: Optimise calling machinery · Issue #359 · ronaldoussoren/pyobjc · GitHub)

I just tried and for me, the ShowCrosshair plugin from Rainer doesn’t seem to have an impact on the performance. I get nice 60 fps with the tool active.

What version of python do you use?

Hmm I see… I’m on 3.9.1. Glyphs version. How can I check my FPS – this is much worse when I have a monitor plugged in – it’s not too bad on my laptop.

Do you have an apple developer account. Then you could download the Quartz Debug tool from developer.apple.com
Or use the Frames per second plugin.

1 Like

I installed Quartz Debug, my frame rate drops from 60fps to 30fps actually.

Can you try installing only that single plugin?
And what version of MacOS do you use?

Catalina 10.15.7 (19H1217)
[Correction]
I tried only having the one plugin which was causing the frame rate drop installed, I still experienced the very obvious drop in framerate.

If I only have one glyph in the text tab I don’t have this issue. If I have a text tab with ~250 characters, then I have the issue to an extreme degree. At that point I can’t work in the text tab if I have any plugins enabled.

I found some issues that I could fix. It still slows down a bit but it is still useable.

1 Like

Thank you Georg, I’ve noticed it’s improved