HaloMap.RawData.ParsedModel.DisplayedInfo.DrawMeshes C# (CSharp) Method

DrawMeshes() public static method

The draw meshes.
public static DrawMeshes ( Device &device, ParsedModel pm ) : void
device Device The device.
pm ParsedModel The pm.
return void
            public static void DrawMeshes(ref Device device, ParsedModel pm)
            {
                for (int x = 0; x < pm.Display.Chunk.Count; x++)
                {
                    int rawindex = pm.Display.Chunk[x];
                    VertexBuffer vb = pm.Display.meshes[x].VertexBuffer;
                    IndexBuffer ib = pm.Display.meshes[x].IndexBuffer;
                    device.SetStreamSource(0, vb, 0);
                    device.VertexFormat = HaloVertex.FVF;
                    device.Indices = ib;
                    for (int xx = 0; xx < pm.RawDataMetaChunks[rawindex].SubMeshInfo.Length; xx++)
                    {
                        int tempshade = pm.RawDataMetaChunks[rawindex].SubMeshInfo[xx].ShaderNumber;

                        Renderer.SetAlphaBlending(pm.Shaders.Shader[tempshade].Alpha, ref device);
                        device.SetTexture(0, pm.Shaders.Shader[tempshade].MainTexture);
                        device.TextureState[0].ColorOperation = TextureOperation.Modulate;
                        device.TextureState[0].ColorArgument1 = TextureArgument.TextureColor;
                        device.TextureState[0].ColorArgument2 = TextureArgument.Current;
                        device.RenderState.FillMode = FillMode.Solid;
                        pm.Display.meshes[x].DrawSubset(xx);
                    }
                }
            }