Xna游戏在wp 7.1设备和7.1模拟器中的渲染方式不同

时间:2013-10-27 17:51:14

标签: c# windows-phone-7 xna windows-phone-7-emulator

在wp 7.1设备和wp 7.1模拟器上渲染wp 7.1 xna游戏时,有没有人遇到过不一致的行为?游戏在设备上正确呈现,但在模拟器上结果显示其上有紫色色调。此外,使用RenderTarget2D.SaveAsJpeg在设备上截取游戏截图会产生与模拟器相同的错误结果。

代码冗长且杂乱但基本上我尝试使用简单的SpriteBatch.Draw和一些Texture2D&{39}和RenderTarget2D&#来渲染多纹理的二维地形39; s,如下:

foreach TerrainLayer layer
{
    GraphicsDevice.SetRenderTarget(layer.RenderTarget2D) (SurfaceFormat.Color)
    GraphicsDevice.Clear(Color.Black)

    spriteBatch.Begin(args1)
    spriteBatch.Draw(layer.Texture2D) (dxt1)
    spriteBatch.End()

    spriteBatch.Begin(args2)
    spriteBatch.Draw(layer.alphamap) (SurfaceFormat.Color)
    spriteBatch.End()
}

GraphicsDevice.SetRenderTarget(renderedTerrain) (SurfaceFormat.Bgr565)
spriteBatch.Begin(alphablend)
foreach TerrainLayer layer
{
    spriteBatch.Draw(layer.RenderTarget2D)
}
spriteBatch.End()

GraphicsDevice.SetRenderTarget(null);
GraphicsDevice.Clear(Color.Black);

//then draw to the final scene with
//graphics.PreferredBackBufferFormat = SurfaceFormat.Bgr565;
sb.Begin()
draw renderedTerrain, alphablend
sb.End();    

更新:为了澄清问题,这是在设备上看到的: Correct result

这就是模拟器中显示的内容以及设备上SaveAsJpeg的结果: Incorrect result

1 个答案:

答案 0 :(得分:0)

对于任何类型的仿真器都可以预期。最好在自然环境中测试应用程序 - 无论是在设备上还是在桌面版中,但屏幕分辨率与设备相同。

如果可以的话,发布一些错误的屏幕截图,以及预期的屏幕截图。此外,您正试图在一个问题中解决几个不同的问题。针对每个问题发布单独的问题。