The entire view is erased whatever rect is passed to self.needsDisplayInRect thus making this call totally useless.
If the view is set top non opaque, then its the windows that erases everything.
This is a VERY SERIOUS BUG and makes Appkit almost UNUSABLE for efficient graphics/ redraws.
Already starting 10.14 the OS was erasing all View behind our back. But at least one could make a cleaver use of needsDisplayInRect to still be able to do partial redraws.
Now on Big Sur even that doesn’t work, forcing us to either redraw everything all the time or to use an extra buffer which is obviously a huge waste of CPU and memory. Plus my experience with that solution is performances gets catastrophic on huge screens…
If anybody knows a work around...
Eric Wenger,
Bryce,Metasynth,ArtMatic father
If the view is set top non opaque, then its the windows that erases everything.
This is a VERY SERIOUS BUG and makes Appkit almost UNUSABLE for efficient graphics/ redraws.
Already starting 10.14 the OS was erasing all View behind our back. But at least one could make a cleaver use of needsDisplayInRect to still be able to do partial redraws.
Now on Big Sur even that doesn’t work, forcing us to either redraw everything all the time or to use an extra buffer which is obviously a huge waste of CPU and memory. Plus my experience with that solution is performances gets catastrophic on huge screens…
If anybody knows a work around...
Eric Wenger,
Bryce,Metasynth,ArtMatic father