Пример #1
0
        private void InitRendering()
        {
            //Render Targets
            worldObjectsRender       = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, true);
            worldShadowsRender       = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, true);
            worldLightingRender      = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            lightingMaskRender       = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            shadowMaskInvertedRender = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            shadowMaskRender         = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            blurRender          = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            blurRenderTwo       = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            burntLayerRender    = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);
            burntToSoftenRender = DisplayController.AddRenderTarget(camera.viewport.Width, camera.viewport.Height, false);

            //Effects
            Effectshadow = GraphicsManager.GetEffect(Engine.ContentStorage.EffectType.Shadow);
            Effectshadow.Parameters["shadowMask"].SetValue(DisplayController.GetRenderTarget(shadowMaskRender));
            Effectlighting = GraphicsManager.GetEffect(Engine.ContentStorage.EffectType.Lighting);
            Effectlighting.Parameters["lightMask"].SetValue(DisplayController.GetRenderTarget(lightingMaskRender));

            EffectshadowInverter = GraphicsManager.GetEffect(Engine.ContentStorage.EffectType.ShadowInverter);
            EffectshadowInverter.Parameters["shadowMask"].SetValue(DisplayController.GetRenderTarget(shadowMaskInvertedRender));
            EffectshadowInverter.Parameters["shadowMask"].SetValue(DisplayController.GetRenderTarget(shadowMaskInvertedRender));

            Effectsoften = GraphicsManager.GetEffect(Engine.ContentStorage.EffectType.Soften);
            Effectsoften.Parameters["Texture"].SetValue(DisplayController.GetRenderTarget(burntLayerRender));

            Effectblur = GraphicsManager.GetEffect(Engine.ContentStorage.EffectType.Blur);
        }
Пример #2
0
        private void InitCreateCell()
        {
            //Preparing
            renderTargetTextureId = DisplayController.AddRenderTarget(cellPixelSize - 1, cellPixelSize - 1, true);

            ScreenController.graphicsDevice.SetRenderTarget(DisplayController.GetRenderTarget(renderTargetTextureId));

            DisplayController.spriteBatch1.Begin(SpriteSortMode.Deferred);
            HashSet <MapObject> mapObjectList = new HashSet <MapObject>();

            //Adding
            InitAddTiles(mapObjectList, xMajor, yMajor);

            //Output
            sprite = new Sprite(new Rectangle(0, 0, cellPixelSize, cellPixelSize), DisplayController.GetRenderTarget(renderTargetTextureId));
            DisplayController.spriteBatch1.End();
            ScreenController.graphicsDevice.SetRenderTarget(null);
            //Debug.WriteLine(next);
        }