From 4adbea1887177acd0c84b6cfc9aa99f986ca4cc6 Mon Sep 17 00:00:00 2001 From: Glatzemann Date: Fri, 28 Sep 2012 10:06:37 +0000 Subject: [PATCH] Basic texture importer of our own ContentPipeline implementation is now working. Current issue: Wrong default processor is selected (FontProcessor instead of TextureProcessor)... --- ANX.Framework.Content.Pipeline/Graphics/MipmapChain.cs | 2 +- .../Graphics/MipmapChainCollection.cs | 7 +++++++ .../Graphics/PixelBitmapContent.cs | 8 +++++--- .../Graphics/Texture2DContent.cs | 2 +- 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/ANX.Framework.Content.Pipeline/Graphics/MipmapChain.cs b/ANX.Framework.Content.Pipeline/Graphics/MipmapChain.cs index b4ffcf19..95bd7dd4 100644 --- a/ANX.Framework.Content.Pipeline/Graphics/MipmapChain.cs +++ b/ANX.Framework.Content.Pipeline/Graphics/MipmapChain.cs @@ -21,7 +21,7 @@ namespace ANX.Framework.Content.Pipeline.Graphics public MipmapChain(BitmapContent bitmap) { - throw new NotImplementedException(); + base.Add(bitmap); } public static MipmapChain op_Implicit(BitmapContent bitmap) diff --git a/ANX.Framework.Content.Pipeline/Graphics/MipmapChainCollection.cs b/ANX.Framework.Content.Pipeline/Graphics/MipmapChainCollection.cs index 7421927a..e515d1b5 100644 --- a/ANX.Framework.Content.Pipeline/Graphics/MipmapChainCollection.cs +++ b/ANX.Framework.Content.Pipeline/Graphics/MipmapChainCollection.cs @@ -15,5 +15,12 @@ namespace ANX.Framework.Content.Pipeline.Graphics { public sealed class MipmapChainCollection : Collection { + public MipmapChainCollection(int levels) + { + for (int i = 0; i < levels; i++) + { + base.Add(new MipmapChain()); + } + } } } diff --git a/ANX.Framework.Content.Pipeline/Graphics/PixelBitmapContent.cs b/ANX.Framework.Content.Pipeline/Graphics/PixelBitmapContent.cs index f57e8ddf..4a817517 100644 --- a/ANX.Framework.Content.Pipeline/Graphics/PixelBitmapContent.cs +++ b/ANX.Framework.Content.Pipeline/Graphics/PixelBitmapContent.cs @@ -14,6 +14,8 @@ namespace ANX.Framework.Content.Pipeline.Graphics { public class PixelBitmapContent : BitmapContent where T : struct, IEquatable { + private T[,] pixels; + protected PixelBitmapContent() { @@ -22,12 +24,12 @@ namespace ANX.Framework.Content.Pipeline.Graphics public PixelBitmapContent(int width, int height) : base(width, height) { - + pixels = new T[width, height]; } public T GetPixel(int x, int y) { - throw new NotImplementedException(); + return pixels[x, y]; } public override byte[] GetPixelData() @@ -42,7 +44,7 @@ namespace ANX.Framework.Content.Pipeline.Graphics public void SetPixel(int x, int y, T value) { - throw new NotImplementedException(); + pixels[x, y] = value; } public override void SetPixelData(byte[] sourceData) diff --git a/ANX.Framework.Content.Pipeline/Graphics/Texture2DContent.cs b/ANX.Framework.Content.Pipeline/Graphics/Texture2DContent.cs index ef81d33d..2d050d6f 100644 --- a/ANX.Framework.Content.Pipeline/Graphics/Texture2DContent.cs +++ b/ANX.Framework.Content.Pipeline/Graphics/Texture2DContent.cs @@ -15,7 +15,7 @@ namespace ANX.Framework.Content.Pipeline.Graphics public class Texture2DContent : TextureContent { public Texture2DContent() - : base(null) //TODO: implement + : base(new MipmapChainCollection(1)) { }