// This completes initialization after the device has started or has been reset public void SetupSettings() { // Setup renderstates device.SetRenderState(RenderState.AlphaBlendEnable, false); device.SetRenderState(RenderState.AlphaBlendEnable, false); device.SetRenderState(RenderState.AlphaFunc, Compare.GreaterEqual); device.SetRenderState(RenderState.AlphaRef, 0x0000007E); device.SetRenderState(RenderState.AlphaTestEnable, false); device.SetRenderState(RenderState.Ambient, Color.White.ToArgb()); device.SetRenderState(RenderState.AmbientMaterialSource, ColorSource.Material); device.SetRenderState(RenderState.AntialiasedLineEnable, false); device.SetRenderState(RenderState.Clipping, true); device.SetRenderState(RenderState.ColorVertex, false); device.SetRenderState(RenderState.ColorWriteEnable, ColorWriteEnable.Red | ColorWriteEnable.Green | ColorWriteEnable.Blue | ColorWriteEnable.Alpha); device.SetRenderState(RenderState.CullMode, Cull.None); device.SetRenderState(RenderState.DestinationBlend, Blend.InverseSourceAlpha); device.SetRenderState(RenderState.DiffuseMaterialSource, ColorSource.Color1); //device.SetRenderState(RenderState.DitherEnable, true); device.SetRenderState(RenderState.FillMode, FillMode.Solid); device.SetRenderState(RenderState.FogEnable, false); device.SetRenderState(RenderState.FogTableMode, FogMode.Linear); device.SetRenderState(RenderState.Lighting, false); device.SetRenderState(RenderState.LocalViewer, false); device.SetRenderState(RenderState.MultisampleAntialias, (General.Settings.AntiAliasingSamples > 0)); //mxd device.SetRenderState(RenderState.NormalizeNormals, false); device.SetRenderState(RenderState.PointSpriteEnable, false); device.SetRenderState(RenderState.RangeFogEnable, false); device.SetRenderState(RenderState.ShadeMode, ShadeMode.Gouraud); device.SetRenderState(RenderState.SourceBlend, Blend.SourceAlpha); device.SetRenderState(RenderState.SpecularEnable, false); device.SetRenderState(RenderState.StencilEnable, false); device.SetRenderState(RenderState.TextureFactor, -1); device.SetRenderState(RenderState.ZEnable, false); device.SetRenderState(RenderState.ZWriteEnable, false); device.PixelShader = null; device.VertexShader = null; // Matrices device.SetTransform(TransformState.World, Matrix.Identity); device.SetTransform(TransformState.View, Matrix.Identity); device.SetTransform(TransformState.Projection, Matrix.Identity); // Texture addressing device.SetSamplerState(0, SamplerState.AddressU, TextureAddress.Wrap); device.SetSamplerState(0, SamplerState.AddressV, TextureAddress.Wrap); device.SetSamplerState(0, SamplerState.AddressW, TextureAddress.Wrap); // Setup material device.Material = new Material { Ambient = new Color4(Color.White), Diffuse = new Color4(Color.White), Specular = new Color4(Color.White) }; // Shader settings shaders.World3D.SetConstants(General.Settings.VisualBilinear, Math.Min(devicecaps.MaxAnisotropy, General.Settings.FilterAnisotropy)); // Texture filters postfilter = Filter.Point; mipgeneratefilter = Filter.Box; // Initialize presentations Presentation.Initialize(); }