Every so often on Windows PCs, two different 2D projects from different Unity versions have the graphics go haywire. Sprites skewing, glitching and… well, doing what the title says. It’s difficult to describe precisely, so here’s a video demonstrating the general effect:
This comes from a project built in Unity 5.x, and now it’s happening again in 2017.2 with an entirely different project. Some facts:
- Games are developed on OS X, where it doesn’t appear to happen. It’s worst on our Windows 7 PC (in builds and the Editor), but it’s also happened mildly in 8.1. Specs:
Windows 7: Intel Pentium CPU G630 @ 2.70GHz, Dual Core, 64-bit System, 6GB RAM
Windows 8.1: Intel Celeron CPU N2830 @ 2.16GHz, 64-bit System, 4GB RAM
-
It varies in extremity from not really happening to practically unplayable. No constant that I can find, no conditions regarding performance, the PC’s workload or anything like that.
-
In the 2017.2 project it’s most likely to happen in scenes with lots of sprite tiling, but in the video there isn’t a single tiled sprite.
Anyone ever seen anything like this, or have any ideas as to what might be causing it?
Update 1:
It behaves about the same regardless of whether VSync
is set to Don't Sync
or Every V Blank
, but interestingly, setting it to Every Second V Blank
makes it extra bad–and on both Windows 7 and 8.1.
Gif from the 2017.2 project:
Screen resolution/full screen doesn’t seem to matter, and even with the Every Second V Blank
madness it only really seems to happen when sprite tiling is involved (again, in the newer project)–and in fact, possibly only when there is more than one tiled sprite on screen.
Update 2:
Been digging and trying things out here and there, but still no real headway on this. Couple of new notes:
-
Witnessed it happening bad on the
Every Second V Blank
setting on a gaming powerhouse Windows 10 PC. Specs seem unrelated at this point. -
It doesn’t seem to happen if I remove the animations from the tiled zones (cycling through an array of sprites via
SpriteRenderer.sprite
, not Unity’s animation system). Not sure that this makes sense with the older Unity 5 project, but then, nothing here really does… -
Attempts to replicate the issues from a ground-up small project haven’t panned out so far. Same settings and setup, but something’s apparently missing…
I’ll keep digging, but I’m really surprised that this issue has happened to us on two completely different projects across two different versions of Unity while no one else seems to have ever seen it before. As it stands we can’t release a game that does this, but if this was just a general Unity bug it seems like someone would have encountered it by now…
Update 3:
Found a correlation between the animation speed and the intensity of the effect, and were able to reproduce it consistently in a bare-bones project. Sent it as a bug report to Unity, and will keep this updated with any new developments.
Update 4:
Unity’s response: “We have been able to reproduce this bug and have sent it for resolution with our developers.”
Guess that answers the question. Thanks to all who assisted via the comments!