Another map http://osu.ppy.sh/b/109644
I agree, as far as I know, a sprite is a graphic element.TheVileOne wrote:
Add this map.
I agree. It does not seem to be map related. The crashes are very random and always happen while spectating for me.
I think we should be exploring more possibilities at this point. A person's hardware or installed programs are the only facts that could make the bug react differently from system to system. Older graphics cards seem to crash while retrying, while newer cards (like mine) which are low end seem to crash occasionally while spectating or crash others. A better graphics card doesn't seem to crash at all or a lot more people would be reporting this.
Begin cannot be called again until End has been successfully called.
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin
So basically End is at fault here? If so what would cause End to become buggy? Or more likely, End not being called quickly enough.TheVileOne wrote:
I'm not a dev who would know exactly why. I'm going off what Millhiore said and it makes sense. There is a method called Begin starts a play and a method called End which ends a play. End is supposed to remove all the sprites before Begin is called. This leads to one of three possibilities.
1. End is not doing what it is supposed to be doing.
2. End is not being called or is not called quickly enough.
3. Something entirely unrelated to the sprite loading process is triggering this error message by mistake. This is unlikely.
System.InvalidOperationException: Begin cannot be called again until End has been successfully called.
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin(SpriteBlendMode blendMode, SpriteSortMode sortMode, SaveStateMode stateMode, Matrix transformMatrix)
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin(SpriteBlendMode blendMode, SpriteSortMode sortMode, SaveStateMode stateMode)
at #Lm.#sp.#8Fb(Boolean )
at #Lm.#sp.#Ms()
at #Vl.#Yo.#0tb()
at #5i.#4i.#Ms()
at #5i.#El.#Ms()
at #rb.#xb.#Ms()
at #1h.#0h.#Ms()
at #rb.#xb.#7s()
at #rb.#xb.#it(Object , EventArgs )
at #rb.#Bb.#Dt()
at #rb.#Rb.#Sv(Object , EventArgs )
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at #rb.#Rb.#ot()
at #rb.#xb.#ot()
at #1h.#np.#Iwb(String , Boolean )
System.InvalidOperationException: Begin cannot be called again until End has been successfully called.
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin(SpriteBlendMode blendMode, SpriteSortMode sortMode, SaveStateMode stateMode, Matrix transformMatrix)
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin(SpriteBlendMode blendMode, SpriteSortMode sortMode, SaveStateMode stateMode)
at #Lm.#sp.#8Fb(Boolean )
at #Lm.#sp.#Ms()
at #5i.#4i.#Ms()
at #5i.#Gl.#Ms()
at #rb.#xb.#Ms()
at #1h.#0h.#Ms()
at #rb.#xb.#7s()
at #rb.#xb.#it(Object , EventArgs )
at #rb.#Bb.#Dt()
at #rb.#Rb.#Sv(Object , EventArgs )
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at #rb.#Rb.#ot()
at #rb.#xb.#ot()
at #1h.#np.#Iwb(String , Boolean )
I've had the result panel's sprite become invisible before. Not sure what was going on.Niervaco wrote:
I'm thinking that this sprite issue is more than just songs.
t/202896
When MillhioreF mentioned sprite unloading problems. Oh boy. This is the background for the main menu.
And the results page. Hm. I sould ask if anyone has been having sprite issues with other areas. (Main menu background for one) if so, please post here what area. (Main menu, song selection, ect.) and what sprite. (Background, skin element)Franc[e]sco wrote:
I've had the result panel's sprite become invisible before. Not sure what was going on.Niervaco wrote:
I'm thinking that this sprite issue is more than just songs.
t/202896
When MillhioreF mentioned sprite unloading problems. Oh boy. This is the background for the main menu.
Considering I play with storyboard off in options I'm not sure how. I wish I could play in OpenGL, it's really laggy on this card for any game using OpenGL.Franc[e]sco wrote:
Since the crashes seem to be more frequent on specific maps, could it be related to storyboarding?
But yeah, I'm quite sure it originated from the recent alt-tab fix. Anyhow, I'm gonna keep playing on OpenGL until the crashes are fixed.
Well that's probably because OpenGL renders differently (Duh, but its a double edge sword, no unlimited) At least we know what is causing the crash.tsundoll wrote:
Considering I play with storyboard off in options I'm not sure how. I wish I could play in OpenGL, it's really laggy on this card for any game using OpenGL.Franc[e]sco wrote:
Since the crashes seem to be more frequent on specific maps, could it be related to storyboarding?
But yeah, I'm quite sure it originated from the recent alt-tab fix. Anyhow, I'm gonna keep playing on OpenGL until the crashes are fixed.
System.InvalidOperationException: Begin cannot be called again until End has been successfully called.
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin(SpriteBlendMode blendMode, SpriteSortMode sortMode, SaveStateMode stateMode, Matrix transformMatrix)
at Microsoft.Xna.Framework.Graphics.SpriteBatch.Begin(SpriteBlendMode blendMode, SpriteSortMode sortMode, SaveStateMode stateMode)
at #Lm.#sp.#8Fb(Boolean )
at #Lm.#sp.#Ms()
at #Vl.#Yo.#0tb()
at #5i.#4i.#Ms()
at #rb.#xb.#Ms()
at #1h.#0h.#Ms()
at #rb.#xb.#7s()
at #rb.#xb.#it(Object , EventArgs )
at #rb.#Bb.#Dt()
at #rb.#Rb.#Sv(Object , EventArgs )
at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FDoIdle(Int32 grfidlef)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.Run(Form mainForm)
at #rb.#Rb.#ot()
at #rb.#xb.#ot()
at #1h.#np.#Iwb(String , Boolean )
Thanks for the confirm I will try and crash on OpenGL for you, to see if it will or not.TheVileOne wrote:
It's about time to confirm this thread.
It might happen in only certain songs, but it doesn't happen consistently on any song. There's no guarantee it will happen under any controlled environment. I can only note that it affects every person differently and usually after several retries. If there are more than one spectator, then an event that crashes me might not crash someone else who is spectating.
I have seen no evidence that mod usage, skin usage, whether or not the user misses or not makes any difference. Gamemode doesn't seem to matter either.
I have checked whether it was related to the userlog and it didn't crash because of the userlog.
I used the default skin, an old cookiezi skin, and Aesthetic 1.2 and can crash in all of them.
Some people have reported that it happens only in DirectX. I have not confirmed this.
All of my testing has been in public builds.