This page is not up to date for MonoGame.Extended 4.0.3
. If you would like to contribute to updating this document, please create a new PR
ContentManager extensions
ContentManager.OpenStream
System.IO.Stream ContentManager.OpenStream(string filename)
OpenStream allows easy access to TitleContainer.OpenStream
so you can use the Game.Content
object to load compiled resources and included resources.
// my-file.txt is in the RootDirectory
var stream = Content.OpenStream("my-file.txt");
// do something with file
stream.Close();
ContentManager.GetGraphicsDevice
GraphicsDevice ContentManager.GetGraphicsDevice()
GetGraphicsDevice returns the current GraphicsDevice
from the services.
var graphicsDevice = Content.GetGraphicsDevice();
var width = graphicsDevice.DisplayMode.Width;
ContentReader extensions
The ContentReader
extensions help when writing your own content pipeline readers.
ContentReader.GetGraphicsDevice
GraphicsDevice ContentManager.GetGraphicsDevice()
GetGraphicsDevice returns the current GraphicsDevice
to help when loading content for the current display.
public class MyTypeReader : ContentTypeReader<MyType>
{
protected override MyType Read(ContentReader reader, MyType existingInstance)
{
var graphicsDevice = reader.GetGraphicsDevice();
}
}
ContentReader.GetRelativeAssetName
string ContentReader.GetRelativeAssetName(string relativeName)
GetRelativeAssetName helps when your content type loads a different type, and you want to know the name to give ContentManager.Load
.
public class MyTypeReader : ContentTypeReader<MyType>
{
protected override MyType Read(ContentReader reader, MyType existingInstance)
{
var assetName = reader.GetRelativeAssetName(reader.ReadString());
var other = reader.ContentManager.Load<OtherType>(assetName);
}
}