Пример #1
0
        /// <summary>
        /// /
        /// </summary>
        public override void Initialize()
        {
            averageLum = new RenderTarget2D(Game.GraphicsDevice, ColorFormat.Rgba16F, 256, 256, true, false);
            paramsCB   = new ConstantBuffer(Game.GraphicsDevice, typeof(Params));
            whiteTex   = new DynamicTexture(Game.RenderSystem, 4, 4, typeof(Color), false, false);
            whiteTex.SetData(Enumerable.Range(0, 16).Select(i => Color.White).ToArray());

            LoadContent();

            noiseTex = GenerateBayerMatrix(8);

            Game.Reloading += (s, e) => LoadContent();
        }
Пример #2
0
        /// <summary>
        /// Ctor
        /// </summary>
        /// <param name="rs"></param>
        /// <param name="capacity">Number of sprites</param>
        public SpriteLayer(RenderSystem rs, int capacity)
        {
            this.rs = rs;

            Order = 0;

            Visible    = true;
            Transform  = Matrix.Identity;
            Color      = Color.White;
            BlendMode  = SpriteBlendMode.AlphaBlend;
            FilterMode = SpriteFilterMode.LinearClamp;
            StereoMode = SpriteStereoMode.All;

            defaultTexture = new DynamicTexture(rs, 16, 16, typeof(Color), false, false);
            defaultTexture.SetData(Enumerable.Range(0, 16 * 16).Select(i => Color.White).ToArray());

            using (var ms = new MemoryStream(Properties.Resources.conchars)) {
                fontTexture = UserTexture.CreateFromTga(rs, ms, false);
            }

            ReallocGpuBuffers(capacity);

            framesBuffer = new ConstantBuffer(rs.Device, typeof(SpriteFrame), MaxSpriteFrames);
        }