我正在嘗試在一個紋理上繪製很多紋理以創建RTS遊戲的地圖,同時我可以在屏幕上繪製個別紋理,並將它們全部繪製到渲染目標似乎沒有效果(調試時窗口保持AliceBlue)。我試圖確定是否有任何東西甚至被繪製到渲染目標,所以我試圖將它保存爲Jpeg到一個文件,然後從我的桌面查看該Jpeg。我如何從MemoryStream訪問Jpeg?如何將texture2D保存爲jpeg文件
保護覆蓋無效LoadContent(){
spriteBatch = new SpriteBatch(GraphicsDevice);
gridImage = new RenderTarget2D(GraphicsDevice, 1000, 1000);
GraphicsDevice.SetRenderTarget(gridImage);
GraphicsDevice.Clear(Color.AliceBlue);
spriteBatch.Begin();
foreach (tile t in grid.tiles)
{
Texture2D dirt = Content.Load<Texture2D>(t.texture);
spriteBatch.Draw(dirt, t.getVector2(), Color.White);
}
test = Content.Load<Texture2D>("dirt");
GraphicsDevice.SetRenderTarget(null);
MemoryStream memoryStream = new MemoryStream();
gridImage.SaveAsJpeg(memoryStream, gridImage.Width, gridImage.Height); //Or SaveAsPng(memoryStream, texture.Width, texture.Height)
// rt.Dispose();
spriteBatch.End();
}
@Skami你不應該[添加冗餘標籤的問題](http://meta.stackexchange.com/questions/99072/should-adding-redundant-but-related-tags-be-encouraged-或-泄氣)。您今天已經完成了[超過200個微小的修改](http://meta.stackexchange.com/questions/164503/gaming-the-edit-system-with-tiny-edits),其中大多數並沒有真正提高質量的網站。 – Lucius
@Lucius對不起,我會更徹底地閱讀規則,並確保我不會再搞亂。 – Skami
@Skami我相信你是用最好的意圖去做的。請記住,每次你進行這樣的編輯時,至少有3位版主必須處理它,並且問題會被碰撞。另外,XNA並不一定意味着C#。 XNA在理論上適用於任何.NET語言,並且至少在C#*和* VB中是實用的。 – Lucius