internal static void InitRasterizerState(RasterizerId id) { if (RasterizerObjects[id.Index] == null) { RasterizerObjects[id.Index] = new RasterizerState(MyRender11.Device, RasterizerStates.Data[id.Index]); } }
internal static void Modify(RasterizerId id, RasterizerStateDescription desc) { RasterizerStates.Data[id.Index] = desc; RasterizerObjects[id.Index].Dispose(); RasterizerObjects[id.Index] = null; InitRasterizerState(id); }
static void InitializeRasterizerStates() { m_wireframeRasterizerState = MyPipelineStates.CreateRasterizerState(new RasterizerStateDescription { FillMode = FillMode.Wireframe, CullMode = CullMode.Back }); RasterizerStateDescription desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Wireframe; desc.CullMode = CullMode.Back; m_wireframeRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.Front; m_invTriRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.None; m_nocullRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Wireframe; desc.CullMode = CullMode.None; m_nocullWireframeRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.Back; m_linesRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.None; desc.IsFrontCounterClockwise = true; desc.DepthBias = 20; desc.DepthBiasClamp = 2; desc.SlopeScaledDepthBias = 4; m_cascadesRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.None; desc.IsFrontCounterClockwise = true; desc.DepthBias = 25000; desc.DepthBiasClamp = 2; desc.SlopeScaledDepthBias = 1; m_shadowRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.Back; desc.IsFrontCounterClockwise = false; desc.IsScissorEnabled = true; m_scissorTestRasterizerState = MyPipelineStates.CreateRasterizerState(desc); }
static void InitializeRasterizerStates() { m_wireframeRasterizerState = MyPipelineStates.CreateRasterizerState(new RasterizerStateDescription { FillMode = FillMode.Wireframe, CullMode = CullMode.Back }); RasterizerStateDescription desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Wireframe; desc.CullMode = CullMode.Back; m_wireframeRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.Front; m_invTriRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.None; m_nocullRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Wireframe; desc.CullMode = CullMode.None; m_nocullWireframeRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.Back; m_linesRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.None; desc.IsFrontCounterClockwise = true; desc.DepthBias = 20; desc.DepthBiasClamp = 2; desc.SlopeScaledDepthBias = 4; m_cascadesRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc = new RasterizerStateDescription(); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.None; desc.IsFrontCounterClockwise = true; desc.DepthBias = 2500; desc.DepthBiasClamp = 10000; desc.SlopeScaledDepthBias = 4; m_shadowRasterizerState = MyPipelineStates.CreateRasterizerState(desc); desc.FillMode = FillMode.Solid; desc.CullMode = CullMode.Back; desc.IsFrontCounterClockwise = false; desc.IsScissorEnabled = true; m_scissorTestRasterizerState = MyPipelineStates.CreateRasterizerState(desc); }
internal static RasterizerId CreateRasterizerState(RasterizerStateDescription description) { var id = new RasterizerId { Index = RasterizerStates.Allocate() }; MyArrayHelpers.Reserve(ref RasterizerObjects, id.Index + 1); RasterizerStates.Data[id.Index] = description; InitRasterizerState(id); RasterizerIndices.Add(id); return(id); }
internal static RasterizerState GetRasterizer(RasterizerId id) { return RasterizerObjects[id.Index]; }
internal static void Modify(RasterizerId id, RasterizerStateDescription desc) { RasterizerStates.Data[id.Index] = desc; InitRasterizerState(id); }
internal static void InitRasterizerState(RasterizerId id) { if (RasterizerObjects[id.Index] != null) { RasterizerObjects[id.Index].Dispose(); RasterizerObjects[id.Index] = null; } RasterizerObjects[id.Index] = new RasterizerState(MyRender11.Device, RasterizerStates.Data[id.Index]); }
internal static RasterizerId CreateRasterizerState(RasterizerStateDescription description) { var id = new RasterizerId { Index = RasterizerStates.Allocate() }; MyArrayHelpers.Reserve(ref RasterizerObjects, id.Index + 1); RasterizerStates.Data[id.Index] = description; InitRasterizerState(id); RasterizerIndices.Add(id); return id; }
internal static void InitRasterizerState(RasterizerId id) { if (RasterizerObjects[id.Index] == null) RasterizerObjects[id.Index] = new RasterizerState(MyRender11.Device, RasterizerStates.Data[id.Index]); }
internal static RasterizerState GetRasterizer(RasterizerId id) { return(RasterizerObjects[id.Index]); }