public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = (MyEffectModelsDNS)MyRender.GetEffect(MyEffects.ModelDNS); SetupBaseEffect(shader, setup, lodType); MyEffectModelsDNS dnsShader = shader as MyEffectModelsDNS; dnsShader.SetHalfPixel(MyRenderCamera.Viewport.Width, MyRenderCamera.Viewport.Height); dnsShader.SetScale(MyRender.GetScaleForViewport(MyRender.GetRenderTarget(MyRenderTargets.Depth))); bool useDepth = lodType != MyLodTypeEnum.LOD_NEAR; if (useDepth) { // DepthStencilState.DepthRead; MyStateObjects.DepthStencil_TestFarObject_DepthReadOnly.Apply(); } else { DepthStencilState.DepthRead.Apply(); } MyStateObjects.Holo_BlendState.Apply(); shader.ApplyHolo(!useDepth); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { MyEffectVoxelsDebris shader = (MyEffectVoxelsDebris)MyRender.GetEffect(MyEffects.VoxelDebrisMRT); SetupBaseEffect(shader, setup, lodType); shader.SetTechnique(MyRenderConstants.RenderQualityProfile.VoxelsRenderTechnique); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = (MyEffectAtmosphere)MyRender.GetEffect(MyEffects.Atmosphere); SetupBaseEffect(shader, setup, lodType); shader.SetSurfaceTechnique(); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = (MyEffectAtmosphere)MyRender.GetEffect(MyEffects.Atmosphere); SetupBaseEffect(shader, setup, lodType); shader.SetTechnique(MyRenderConstants.RenderQualityProfile.ModelsRenderTechnique); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = (MyEffectModelsDNS)MyRender.GetEffect(MyEffects.ModelDNS); SetupBaseEffect(shader, setup, lodType); shader.ApplyMasked(); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = (MyEffectModelsDNS)MyRender.GetEffect(MyEffects.ModelDNS); SetupBaseEffect(shader, setup, lodType); shader.SetTechnique(MyRenderConstants.RenderQualityProfile.ModelsInstancedTechnique); //shader.SetTechnique(MyEffectModelsDNS.MyEffectModelsDNSTechniqueEnum.HighInstanced); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = (MyEffectModelsDNS)MyRender.GetEffect(MyEffects.ModelDNS); SetupBaseEffect(shader, setup, lodType); MyStateObjects.Static_Decals_BlendState.Apply(); MyStateObjects.DepthStencil_TestFarObject_DepthReadOnly.Apply(); shader.BeginBlended(); shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = MyRender.GetEffect(MyEffects.VoxelsMRT) as MyEffectVoxels; SetupBaseEffect(shader, setup, lodType); { shader.ApplyMultimaterial(); } shader.Begin(0, SharpDX.Direct3D9.FX.None); m_currentLod = lodType; return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = MyRender.GetEffect(MyEffects.VoxelsMRT) as MyEffectVoxels; SetupBaseEffect(shader, setup, lodType); if (lodType == MyLodTypeEnum.LOD_BACKGROUND) { shader.ApplyFar(); } else { shader.Apply(); } m_currentLod = lodType; shader.Begin(0, SharpDX.Direct3D9.FX.None); return(shader); }
public override MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { var shader = MyRender.GetEffect(MyEffects.VoxelsMRT) as MyEffectVoxels; SetupBaseEffect(shader, setup, lodType); if (lodType == MyLodTypeEnum.LOD_BACKGROUND) { shader.ApplyMultimaterialFar(MyRenderConstants.RenderQualityProfile.VoxelsRenderTechnique); } else { shader.ApplyMultimaterial(); } shader.Begin(0, SharpDX.Direct3D9.FX.None); m_currentLod = lodType; return(shader); }
protected void SetupBaseEffect(MyEffectBase shader, MyRender.MyRenderSetup setup, MyLodTypeEnum lodType) { MyRenderCamera.SetupBaseEffect(shader, lodType, setup.FogMultiplierMult); if (lodType == MyLodTypeEnum.LOD_NEAR) { shader.SetProjectionMatrix(ref MyRenderCamera.ProjectionMatrixForNearObjects); } else { shader.SetProjectionMatrix(ref MyRenderCamera.ProjectionMatrix); } shader.SetViewMatrix(ref MyRenderCamera.ViewMatrixAtZero); var rasterizerState = MyRender.Settings.Wireframe ? WireframeRasterizerState : SolidRasterizerState; rasterizerState.Apply(); }
private void SetRenderSetup() { if (m_setup == null) m_setup = new MyRender.MyRenderSetup(); m_setup.CallerID = MyRenderCallerEnum.EnvironmentMap; if (m_setup.RenderTargets == null) m_setup.RenderTargets = new Texture[1]; m_setup.EnabledModules = new HashSet<MyRenderModuleEnum>(); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunGlow); m_setup.EnabledModules.Add(MyRenderModuleEnum.SectorBorder); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawSectorBBox); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawCoordSystem); m_setup.EnabledModules.Add(MyRenderModuleEnum.Explosions); m_setup.EnabledModules.Add(MyRenderModuleEnum.BackgroundCube); m_setup.EnabledModules.Add(MyRenderModuleEnum.GPS); m_setup.EnabledModules.Add(MyRenderModuleEnum.TestField); m_setup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticles); m_setup.EnabledModules.Add(MyRenderModuleEnum.Lights); m_setup.EnabledModules.Add(MyRenderModuleEnum.Projectiles); m_setup.EnabledModules.Add(MyRenderModuleEnum.DebrisField); m_setup.EnabledModules.Add(MyRenderModuleEnum.ThirdPerson); m_setup.EnabledModules.Add(MyRenderModuleEnum.Editor); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrunningStructure); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.IceStormWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrefabContainerManager); m_setup.EnabledModules.Add(MyRenderModuleEnum.PhysicsPrunningStructure); m_setup.EnabledRenderStages = new HashSet<MyRenderStage>(); m_setup.EnabledRenderStages.Add(MyRenderStage.PrepareForDraw); m_setup.EnabledRenderStages.Add(MyRenderStage.Background); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawStart); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawEnd); m_setup.EnabledPostprocesses = new HashSet<MyPostProcessEnum>(); m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.VolumetricFog); m_setup.FogMultiplierMult = 1.0f; //increases fog to imitate missing particle dust m_setup.EnableHDR = false; m_setup.EnableSun = false; m_setup.EnableSmallLights = false; m_setup.EnableDebugHelpers = false; m_setup.EnableEnvironmentMapping = false; m_setup.EnableOcclusionQueries = false; m_setup.EnableNear = false; }
private void SetRenderSetup() { m_setup = new MyRender.MyRenderSetup(); m_setup.CallerID = MyRenderCallerEnum.EnvironmentMap; m_setup.RenderTargets = new Texture[1]; //m_setup.EnabledModules.Remove(MyRenderModuleEnum.Cockpit); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.CockpitGlass); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.SunGlareAndLensFlare); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.UpdateOcclusions); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.AnimatedParticlesPrepare); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.TransparentGeometry); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.ParticlesDustField); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.VoxelHand); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.DistantImpostors); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.Decals); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.CockpitWeapons); m_setup.EnabledModules = new HashSet<MyRenderModuleEnum>(); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunGlow); m_setup.EnabledModules.Add(MyRenderModuleEnum.SectorBorder); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawSectorBBox); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawCoordSystem); m_setup.EnabledModules.Add(MyRenderModuleEnum.Explosions); m_setup.EnabledModules.Add(MyRenderModuleEnum.BackgroundCube); m_setup.EnabledModules.Add(MyRenderModuleEnum.GPS); m_setup.EnabledModules.Add(MyRenderModuleEnum.TestField); m_setup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticles); m_setup.EnabledModules.Add(MyRenderModuleEnum.Lights); m_setup.EnabledModules.Add(MyRenderModuleEnum.TransparentGeometryForward); m_setup.EnabledModules.Add(MyRenderModuleEnum.Projectiles); m_setup.EnabledModules.Add(MyRenderModuleEnum.DebrisField); m_setup.EnabledModules.Add(MyRenderModuleEnum.ThirdPerson); m_setup.EnabledModules.Add(MyRenderModuleEnum.Editor); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarObjects); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarMapGrid); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrunningStructure); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.IceStormWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrefabContainerManager); m_setup.EnabledModules.Add(MyRenderModuleEnum.PhysicsPrunningStructure); m_setup.EnabledRenderStages = new HashSet<MyRenderStage>(); m_setup.EnabledRenderStages.Add(MyRenderStage.PrepareForDraw); m_setup.EnabledRenderStages.Add(MyRenderStage.Background); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawStart); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawEnd); m_setup.EnabledPostprocesses = new HashSet<MyPostProcessEnum>(); // m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.VolumetricFog); m_setup.FogMultiplierMult = 1.0f; //increases fog to imitate missing particle dust m_setup.EnableHDR = false; m_setup.EnableSun = false; m_setup.EnableSmallLights = false; m_setup.EnableDebugHelpers = false; m_setup.EnableEnvironmentMapping = false; m_setup.EnableOcclusionQueries = false; m_setup.EnableNear = false; m_setup.LodTransitionNear = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistance; m_setup.LodTransitionFar = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistance; m_setup.LodTransitionBackgroundStart = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistanceBackground; m_setup.LodTransitionBackgroundEnd = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistanceBackground; }
private void SetRenderSetup() { m_setup = new MyRender.MyRenderSetup(); m_setup.CallerID = MyRenderCallerEnum.EnvironmentMap; m_setup.RenderTargets = new Texture[1]; //m_setup.EnabledModules.Remove(MyRenderModuleEnum.Cockpit); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.CockpitGlass); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.SunGlareAndLensFlare); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.UpdateOcclusions); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.AnimatedParticlesPrepare); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.TransparentGeometry); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.ParticlesDustField); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.VoxelHand); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.DistantImpostors); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.Decals); //m_setup.EnabledModules.Remove(MyRenderModuleEnum.CockpitWeapons); m_setup.EnabledModules = new HashSet <MyRenderModuleEnum>(); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunGlow); m_setup.EnabledModules.Add(MyRenderModuleEnum.SectorBorder); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawSectorBBox); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawCoordSystem); m_setup.EnabledModules.Add(MyRenderModuleEnum.Explosions); m_setup.EnabledModules.Add(MyRenderModuleEnum.BackgroundCube); m_setup.EnabledModules.Add(MyRenderModuleEnum.GPS); m_setup.EnabledModules.Add(MyRenderModuleEnum.TestField); m_setup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticles); m_setup.EnabledModules.Add(MyRenderModuleEnum.Lights); m_setup.EnabledModules.Add(MyRenderModuleEnum.TransparentGeometryForward); m_setup.EnabledModules.Add(MyRenderModuleEnum.Projectiles); m_setup.EnabledModules.Add(MyRenderModuleEnum.DebrisField); m_setup.EnabledModules.Add(MyRenderModuleEnum.ThirdPerson); m_setup.EnabledModules.Add(MyRenderModuleEnum.Editor); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarObjects); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarMapGrid); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrunningStructure); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.IceStormWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrefabContainerManager); m_setup.EnabledModules.Add(MyRenderModuleEnum.PhysicsPrunningStructure); m_setup.EnabledRenderStages = new HashSet <MyRenderStage>(); m_setup.EnabledRenderStages.Add(MyRenderStage.PrepareForDraw); m_setup.EnabledRenderStages.Add(MyRenderStage.Background); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawStart); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawEnd); m_setup.EnabledPostprocesses = new HashSet <MyPostProcessEnum>(); // m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.VolumetricFog); m_setup.FogMultiplierMult = 1.0f; //increases fog to imitate missing particle dust m_setup.EnableHDR = false; m_setup.EnableSun = false; m_setup.EnableSmallLights = false; m_setup.EnableDebugHelpers = false; m_setup.EnableEnvironmentMapping = false; m_setup.EnableOcclusionQueries = false; m_setup.EnableNear = false; m_setup.LodTransitionNear = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistance; m_setup.LodTransitionFar = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistance; m_setup.LodTransitionBackgroundStart = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistanceBackground; m_setup.LodTransitionBackgroundEnd = MyRenderConstants.RenderQualityProfile.EnvironmentLodTransitionDistanceBackground; }
private void SetRenderSetup() { return; m_setup = new MyRender.MyRenderSetup(); //m_setup.Fov = MathHelper.ToRadians(75); m_setup.CallerID = MyRenderCallerEnum.GUIPreview; m_setup.RenderTargets = new Texture[1]; m_setup.EnabledModules = new HashSet<MyRenderModuleEnum>(); m_setup.EnabledModules.Add(MyRenderModuleEnum.VoxelHand); m_setup.EnabledModules.Add(MyRenderModuleEnum.Decals); m_setup.EnabledModules.Add(MyRenderModuleEnum.CockpitWeapons); m_setup.EnabledModules.Add(MyRenderModuleEnum.SectorBorder); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawSectorBBox); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawCoordSystem); m_setup.EnabledModules.Add(MyRenderModuleEnum.Explosions); m_setup.EnabledModules.Add(MyRenderModuleEnum.BackgroundCube); m_setup.EnabledModules.Add(MyRenderModuleEnum.GPS); m_setup.EnabledModules.Add(MyRenderModuleEnum.TestField); m_setup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticles); m_setup.EnabledModules.Add(MyRenderModuleEnum.Lights); m_setup.EnabledModules.Add(MyRenderModuleEnum.TransparentGeometryForward); m_setup.EnabledModules.Add(MyRenderModuleEnum.Projectiles); m_setup.EnabledModules.Add(MyRenderModuleEnum.DebrisField); m_setup.EnabledModules.Add(MyRenderModuleEnum.ThirdPerson); m_setup.EnabledModules.Add(MyRenderModuleEnum.Editor); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarObjects); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarMapGrid); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrunningStructure); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.IceStormWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrefabContainerManager); m_setup.EnabledModules.Add(MyRenderModuleEnum.PhysicsPrunningStructure); m_setup.EnabledRenderStages = new HashSet<MyRenderStage>(); m_setup.EnabledRenderStages.Add(MyRenderStage.PrepareForDraw); m_setup.EnabledRenderStages.Add(MyRenderStage.Background); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawStart); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawEnd); m_setup.EnabledRenderStages.Add(MyRenderStage.AlphaBlendPreHDR); m_setup.EnabledRenderStages.Add(MyRenderStage.AlphaBlend); m_setup.EnabledPostprocesses = new HashSet<MyPostProcessEnum>(); m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.VolumetricSSAO2); m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.HDR); //m_setup.BackgroundColor = new Color(0.17f, 0.18f, .25f, 0.0f); m_setup.BackgroundColor = new Color(Vector4.Zero); m_setup.EnableHDR = false; m_setup.EnableSun = true; m_setup.ShadowRenderer = MyRender.GetShadowRenderer(); // Default shadow render m_setup.EnableSmallLights = true; m_setup.EnableDebugHelpers = false; m_setup.EnableEnvironmentMapping = false; m_setup.EnableOcclusionQueries = false; m_setup.LodTransitionNear = 20000; m_setup.LodTransitionFar = 21000; m_setup.LodTransitionBackgroundStart = 50000; m_setup.LodTransitionBackgroundStart = 51000; m_setup.RenderElementsToDraw = new List<MyRender.MyRenderElement>(); m_setup.TransparentRenderElementsToDraw = new List<MyRender.MyRenderElement>(); m_setup.LightsToUse = new List<MyLight>(); var fillLight = new MyLight(); fillLight.Start(MyLight.LightTypeEnum.PointLight, .5f * new Vector4(1, 0.95f, 0.8f, 1), 1, 119); // fill light m_setup.LightsToUse.Add(fillLight); var backLight = new MyLight(); backLight.Start(MyLight.LightTypeEnum.PointLight, .5f * new Vector4(1, 0.9f, 0.9f, 1), 1, 119); // back light m_setup.LightsToUse.Add(backLight); }
private void SetRenderSetup() { return; m_setup = new MyRender.MyRenderSetup(); //m_setup.Fov = MathHelper.ToRadians(75); m_setup.CallerID = MyRenderCallerEnum.GUIPreview; m_setup.RenderTargets = new Texture[1]; m_setup.EnabledModules = new HashSet <MyRenderModuleEnum>(); m_setup.EnabledModules.Add(MyRenderModuleEnum.VoxelHand); m_setup.EnabledModules.Add(MyRenderModuleEnum.Decals); m_setup.EnabledModules.Add(MyRenderModuleEnum.CockpitWeapons); m_setup.EnabledModules.Add(MyRenderModuleEnum.SectorBorder); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawSectorBBox); m_setup.EnabledModules.Add(MyRenderModuleEnum.DrawCoordSystem); m_setup.EnabledModules.Add(MyRenderModuleEnum.Explosions); m_setup.EnabledModules.Add(MyRenderModuleEnum.BackgroundCube); m_setup.EnabledModules.Add(MyRenderModuleEnum.GPS); m_setup.EnabledModules.Add(MyRenderModuleEnum.TestField); m_setup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticles); m_setup.EnabledModules.Add(MyRenderModuleEnum.Lights); m_setup.EnabledModules.Add(MyRenderModuleEnum.TransparentGeometryForward); m_setup.EnabledModules.Add(MyRenderModuleEnum.Projectiles); m_setup.EnabledModules.Add(MyRenderModuleEnum.DebrisField); m_setup.EnabledModules.Add(MyRenderModuleEnum.ThirdPerson); m_setup.EnabledModules.Add(MyRenderModuleEnum.Editor); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarObjects); m_setup.EnabledModules.Add(MyRenderModuleEnum.SolarMapGrid); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrunningStructure); m_setup.EnabledModules.Add(MyRenderModuleEnum.SunWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.IceStormWind); m_setup.EnabledModules.Add(MyRenderModuleEnum.PrefabContainerManager); m_setup.EnabledModules.Add(MyRenderModuleEnum.PhysicsPrunningStructure); m_setup.EnabledRenderStages = new HashSet <MyRenderStage>(); m_setup.EnabledRenderStages.Add(MyRenderStage.PrepareForDraw); m_setup.EnabledRenderStages.Add(MyRenderStage.Background); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawStart); m_setup.EnabledRenderStages.Add(MyRenderStage.LODDrawEnd); m_setup.EnabledRenderStages.Add(MyRenderStage.AlphaBlendPreHDR); m_setup.EnabledRenderStages.Add(MyRenderStage.AlphaBlend); m_setup.EnabledPostprocesses = new HashSet <MyPostProcessEnum>(); m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.VolumetricSSAO2); m_setup.EnabledPostprocesses.Add(MyPostProcessEnum.HDR); //m_setup.BackgroundColor = new Color(0.17f, 0.18f, .25f, 0.0f); m_setup.BackgroundColor = new Color(Vector4.Zero); m_setup.EnableHDR = false; m_setup.EnableSun = true; m_setup.ShadowRenderer = MyRender.GetShadowRenderer(); // Default shadow render m_setup.EnableSmallLights = true; m_setup.EnableDebugHelpers = false; m_setup.EnableEnvironmentMapping = false; m_setup.EnableOcclusionQueries = false; m_setup.LodTransitionNear = 20000; m_setup.LodTransitionFar = 21000; m_setup.LodTransitionBackgroundStart = 50000; m_setup.LodTransitionBackgroundStart = 51000; m_setup.RenderElementsToDraw = new List <MyRender.MyRenderElement>(); m_setup.TransparentRenderElementsToDraw = new List <MyRender.MyRenderElement>(); m_setup.LightsToUse = new List <MyLight>(); var fillLight = new MyLight(); fillLight.Start(MyLight.LightTypeEnum.PointLight, .5f * new Vector4(1, 0.95f, 0.8f, 1), 1, 119); // fill light m_setup.LightsToUse.Add(fillLight); var backLight = new MyLight(); backLight.Start(MyLight.LightTypeEnum.PointLight, .5f * new Vector4(1, 0.9f, 0.9f, 1), 1, 119); // back light m_setup.LightsToUse.Add(backLight); }
/// <summary> /// Caller is responsible to call End when done with shader. /// </summary> public abstract MyEffectBase PrepareAndBeginShader(MyRender.MyRenderSetup setup, MyLodTypeEnum lodType);
public MyGuiScreenGamePlay(MyGuiScreenGamePlayType type, MyGuiScreenGamePlayType? previousType, MyMwcSectorIdentifier sectorIdentifier, int sectorVersion, MyMwcStartSessionRequestTypeEnum? sessionType) : base(Vector2.Zero, null, null) { MySystemTimer.SetByType(type); m_sessionType = sessionType; m_sectorIdentifier = sectorIdentifier; SectorVersion = sectorVersion; m_directionToSunNormalized = -MyMwcUtils.Normalize(GetPositionInMillionsOfKm()); DrawMouseCursor = false; m_closeOnEsc = false; m_type = type; m_previousType = previousType; m_firstUpdateCall = true; m_firstDrawCall = FIRST_TOTAL_DELAY; m_drawEvenWithoutFocus = true; m_enableBackgroundFade = true; m_canShareInput = false; m_screenCanHide = false; m_isPreparedTextureForSectorLoadingScreen = false; m_prepareTextureForSectorLoadingScreen = false; MinerWars.AppCode.Networking.SectorService.MySectorServerCallback.ClearEvents(); MinerWars.AppCode.Networking.SectorService.MySectorServerCallback.ShutdownNotification += new MinerWars.AppCode.Networking.SectorService.MySectorServerCallback.ShutdownHandler(MySectorServerCallback_ShutdownNotification); m_secondarySetup = new MyRender.MyRenderSetup(); m_secondarySetup.EnabledModules = new HashSet<MyRenderModuleEnum>(); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.Cockpit); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.CockpitGlass); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.SunGlareAndLensFlare); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.UpdateOcclusions); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticlesPrepare); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.TransparentGeometry); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.ParticlesDustField); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.VoxelHand); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.DistantImpostors); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.Decals); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.CockpitWeapons); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.SunGlow); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.SectorBorder); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.DrawSectorBBox); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.DrawCoordSystem); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.Explosions); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.BackgroundCube); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.GPS); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.TestField); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.AnimatedParticles); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.Lights); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.TransparentGeometryForward); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.Projectiles); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.DebrisField); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.ThirdPerson); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.Editor); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.SolarObjects); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.SolarMapGrid); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.PrunningStructure); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.SunWind); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.IceStormWind); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.PrefabContainerManager); m_secondarySetup.EnabledModules.Add(MyRenderModuleEnum.PhysicsPrunningStructure); m_showGPSNotification = new MyHudNotification.MyNotification(MyTextsWrapperEnum.GPSReminder, MyHudConstants.MISSION_FONT, MyHudNotification.DONT_DISAPEAR, null, null); m_showGPSNotification.SetTextFormatArguments(new object[] { MyGuiManager.GetInput().GetGameControlTextEnum(MyGameControlEnums.GPS) }); }