Ejemplo n.º 1
0
        internal static void Modify(RasterizerId id, RasterizerStateDescription desc)
        {
            RasterizerStates.Data[id.Index] = desc;
            RasterizerObjects[id.Index].Dispose();
            RasterizerObjects[id.Index] = null;

            InitRasterizerState(id);
        }
Ejemplo n.º 2
0
 internal static RasterizerState GetRasterizer(RasterizerId id)
 {
     return RasterizerObjects[id.Index];
 }
Ejemplo n.º 3
0
 internal static void InitRasterizerState(RasterizerId id)
 {
     if (RasterizerObjects[id.Index] == null)
         RasterizerObjects[id.Index] = new RasterizerState(MyRender11.Device, RasterizerStates.Data[id.Index]);
 }
Ejemplo n.º 4
0
        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;
        }