Also did some Refactoring for Classes that implement and use INativeBuffer. The memory usage reduction for rendertargets resulted in some refactoring of the directx texture classes. Also added DebugNames for some DirectX resources in case of a debug build.
43 lines
1.2 KiB
C#
43 lines
1.2 KiB
C#
using SharpDX;
|
|
using SharpDX.Direct3D10;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using Dx10 = SharpDX.Direct3D10;
|
|
|
|
namespace ANX.RenderSystem.Windows.DX10
|
|
{
|
|
static class Extensions
|
|
{
|
|
public static Dx10.CpuAccessFlags ToCpuAccessFlags(this ResourceMapping mapping)
|
|
{
|
|
Dx10.CpuAccessFlags flags = Dx10.CpuAccessFlags.None;
|
|
if ((mapping & ResourceMapping.Read) != 0)
|
|
flags |= Dx10.CpuAccessFlags.Read;
|
|
if ((mapping & ResourceMapping.Write) != 0)
|
|
flags |= Dx10.CpuAccessFlags.Write;
|
|
|
|
return flags;
|
|
}
|
|
|
|
public static Dx10.MapMode ToMapMode(this ResourceMapping mapping)
|
|
{
|
|
return (Dx10.MapMode)mapping;
|
|
}
|
|
|
|
public static ResourceRegion ToResourceRegion(this Framework.Rectangle rect)
|
|
{
|
|
return new ResourceRegion()
|
|
{
|
|
Back = 1,
|
|
Bottom = rect.Bottom,
|
|
Front = 0,
|
|
Left = rect.Left,
|
|
Right = rect.Right,
|
|
Top = rect.Top,
|
|
};
|
|
}
|
|
}
|
|
}
|