Gamua / Starling-Framework

The Cross Platform Game Engine
http://www.starling-framework.org
Other
2.85k stars 819 forks source link

AIR 23 fatal graphics glitches on Mac #904

Closed tconkling closed 6 years ago

tconkling commented 7 years ago

I just updated to AIR SDK 23, and now my game exhibits this awesomeness (see attached movie).

screen shot 2016-09-22 at 2 19 44 pm

I make use of FragmentFilters and MeshEffects in my game (a glow filter around the character, and a custom MeshEffect for coloring bits of characters). I think these are related to my woes: when filters are being updated frequently (for example, when I'm moving the character around), the flickering happens more frequently.

After a short while, some or all of the game's textures disappear. A short while after that there's generally some error thrown during a render pass:

ArgumentError: Error #3672
        at starling.rendering::VertexData/createVertexBuffer()
        at starling.rendering::Effect/uploadVertexData()
        at starling.display::MeshBatch/syncVertexBuffer()
        at starling.display::MeshBatch/render()
        at starling.rendering::Painter/drawBatch()
        at BatchProcessor/finishBatch()
        at starling.rendering::Painter/finishFrame()
        at starling.core::Starling/render()
        at starling.core::Starling/nextFrame()
        at starling.core::Starling/onEnterFrame()

or:

RangeError: Error #2006
        at starling.rendering::VertexData/copyTo()
        at starling.styles::MeshStyle/batchVertexData()
        at starling.display::MeshBatch/addMesh()
        at BatchProcessor/addMesh()
        at starling.rendering::Painter/drawFromCache()
        at starling.display::DisplayObjectContainer/render()
        at StatsDisplay/render()

air23_is_broken.mov.zip

This is happening on my Mac, which I just updated to macOS Sierra. Not sure if the OS update has anything to do with it. It doesn't seem to be an issue on Windows, iOS, or Android, though I need to do more testing.

Dropping back to AIR 22 fixes things.

Good lord, Adobe.

JohnBlackburne commented 7 years ago

There is a known problem with Flash Plugin 23 on the Mac in Safari. I don’t know if this is related. I posted a report here:

https://forums.adobe.com/thread/2210091

The main thread is this one

https://forums.adobe.com/thread/2208449

tconkling commented 7 years ago

Thanks @JohnBlackburne - this does seem to be related. Running the game in Safari using Flash Plugin 23 exhibits the same behavior. (Interestingly, running it in Safari with Flash Plugin Debug 23 does not.)

JohnBlackburne commented 7 years ago

Despite the skepticism on the Adobe forums it does look, visually, just like the issue I saw: flickering before the game freezes or exits, with both the flickering and the eventual lockup displaying what look like quads with missing or broken texture data. I only updated Flash Player, and kept AIR and Flash Projector at Flash 22 so as not to disrupt my own work – I saw this in Cookie Jam, a Facebook app.

b005t3r commented 7 years ago

And isn't a common problem with OpenGL on Macs? I had similar issues since... I don't even remember which version it was, but something around AIR 17 perhaps? I noticed what if I use 4K textures I run itno such issues much more often than with let's say 2K textures. Your problem seems similar, as you're using a log of different textures (for filters).

However my game never crashed because of that, it just kept on rendering GPU memory garbage.

PrimaryFeather commented 7 years ago

Thanks for the report! Hopefully, Adobe can fix this quickly. It doesn't sound like a Starling bug, but I'll still leave this issue open so that people having similar problems find it and can post their experiences.

On a side-note, I must say I'm positively surprised about how the Adobe staff is handling this in the forum. Those are very constructive answers, from several different people, and the response times were very low. That's the right way to treat such an issue!

JohnBlackburne commented 7 years ago

There’s a beta out now on the labs pages which seems to fix the problem, though I only had it installed for a short time before reverting to version 22.

tconkling commented 7 years ago

For anyone following along, I opened a bug against AIR here: https://bugbase.adobe.com/index.cfm?event=bug&id=4192126

PrimaryFeather commented 6 years ago

This issue seems to have been fixed by now, so I'm closing it here.