So I have my game fully ported over. Thanks to those that have helped with various questions I’ve had recently… Now it’s down to performance. The game is up and running fairly fine on my PC (usually 60fps), but there is a noticeable different in frame rate when testing on various hardware. The XNA version can maintain 60fps with no issues whereas the MG version can drop to as low as 5fps. Any graphicsDevice tuning or settings that needs to be done in MG as part of the conversion? I’m on 3.7.1
Which platform are you using? I think Windows will use integrated graphics for OpenGL by default, which could cause that.
Are you creating new states or other objects on each frame?
I’m using Windows DX. I’m not creating states or objects on a per-frame basis. That was always a gotcha even in XNA.
On MG new states are more expensive than it was on XNA.
When people report massive drop in performance from xna it’s usually due to new states.
It’s hard to explain the 5fps.
Are those ‘real’ FPS? sampled once per seconds ?
Yes the fps are accurate. Good to know about states with MG. I will review. I do have Save and Restore of states taking place in a few spots on Draws, but I’m using static state object to store previous values to prevent constant object creation.
So good call on double checking the states. I found ONE spot in my particle system that was creating a state inside a Draw call and cleaned that up and BAM… 60fps on even old i3 hardware with a 512 video card. It’s always something small that bites you in the ass… That’s for the input gang!