我正在使用MonoGame,我想使用XML爲我的一些紋理添加一些元數據。我創建了以下類:MonoGame使用XML中相同項目的類型
public class TextureData
{
public float FrameWidth;
public float FrameHeight;
}
現在我試圖在內容管道中創建一個XML並加載它。我試着寫了下面的XML:
<?xml version="1.0" encoding="utf-8"?>
<XnaContent xmlns:ns="Microsoft.Xna.Framework">
<Asset Type="TextureData">
<FrameWidth>0.2</FrameWidth>
<FrameHeight>0.2</FrameHeight>
</Asset>
</XnaContent>
而且得到了以下錯誤:
error : Importer 'XmlImporter' had unexpected failure!
1> Microsoft.Xna.Framework.Content.Pipeline.InvalidContentException: Could not resolve type 'TextureData'.
我讀了一些教程和所有的人,只要他們使用自定義類型,他們把它從外部DLL和參考它。所以我嘗試將該類移動到外部DLL並從那裏使用它,它的工作原理。然而,在我的原始項目中創建一個全部類庫只是爲了引用XML中的一個類而感到非常混亂..
所以我的問題是:是否可以使用MonoGame項目本身的自定義類型內容?例如沒有外部DLL的參考?
謝謝!
將一箇中心遊戲項目分成幾個並不是一團糟。我自己的遊戲有一個Engine.csproj,它建立在「這個遊戲不獨有的東西?另一個遊戲可以使用它?」的基礎上。 我也使用了大約6個內容管道擴展,一個Engine項目非常有用。 – Jarryd
@Jarryd我同意在你的情況下它不是混亂的,但我正在寫一個GUI作爲一個dll ..所以現在,而不是一個dll +內容它的2 dll +內容+需要添加引用其中之一dll。 –