Exemple #1
0
            internal static void Init()
            {
                _constants = new PrecomputeConstants();
                var atmosphere = Shaders.Get("Atmosphere");

                TransmittancePass = atmosphere.GetPass("PrecomputeTransmittance");
                InscatterPass     = atmosphere.GetPass("PrecomputeInscatter");
                NeedsRecompute    = true;
                IsInitialized     = true;
            }
Exemple #2
0
        internal void Draw(ref DeviceContext context)
        {
            PixHelper.BeginEvent(Color.Zero, "Terrain");
            if (_terrainPass == null)
            {
                _terrainShader = Shaders.Get("Terrain");
                _terrainPass   = _terrainShader.GetPass("Main");
            }

            lock (Renderer.Context)
            {
                _terrainPass.Use(ref context);

                foreach (var chunk in _chunks)
                {
                    chunk.Value.Draw(ref context);
                }
            }
            PixHelper.EndEvent();
        }