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에서 클래스를 참조하기 위해 내 원래 프로젝트 내에서 전체 클래스 라이브러리를 작성하는 것이 매우 성가시다.
내 질문은 다음과 같습니다. XML 내에서 MonoGame 프로젝트 자체의 사용자 정의 유형을 사용할 수 있습니까? 함유량? 예를 들어 외부 dll없이 참조 할 수 있습니까?
감사!
하나의 중앙 게임 프로젝트를 몇 개로 분리하는 것은 지저분하지 않습니다. 내 게임에는 "이 게임에 고유하지 않은 것은 무엇이며 다른 게임에서 사용할 수 있습니까?"라는 아이디어를 바탕으로 만들어진 Engine.csproj가 있습니다. 약 6 개의 콘텐츠 파이프 라인 확장을 사용하며 Engine 프로젝트는 매우 유용합니다. – Jarryd
@ Jarryd 나는 당신의 경우에는 전혀 지저분하지 않다고 동의하지만, 나는 DLL로 제공되는 GUI 라이브러리를 작성하고있다. 그래서 이제 하나의 dll + content 대신에 2 dlls + content + 중 하나에 대한 참조를 추가해야한다. DLL. –