Exemplo n.º 1
0
        // レイヤーにライトブルームのポストエフェクトを適用する。
        public void Run()
        {
            // Altseedを初期化する。
            asd.Engine.Initialize("PostEffect_LightBloom", 640, 480, new asd.EngineOption());

            var texture = asd.Engine.Graphics.CreateTexture2D("Data/Texture/Picture1.png");

            // シーンクラスのインスタンスを生成する。
            var scene = new asd.Scene();

            // レイヤーのコンストラクタを呼び出す。
            var layer = new asd.Layer2D();

            // レイヤークラスのインスタンスを生成する。
            var obj = new asd.TextureObject2D();

            // 画像描画オブジェクトのインスタンスを生成する。
            obj.Position = new asd.Vector2DF(50, 50);
            obj.Texture  = texture;

            // シーンを変更し、そのシーンにレイヤーを追加し、そのレイヤーにオブジェクトを追加する。
            asd.Engine.ChangeScene(scene);
            scene.AddLayer(layer);
            layer.AddObject(obj);

            // ライトブルームクラスのインスタンスを生成する。
            var posteffect = new asd.PostEffectLightBloom();

            // ライトブルームのぼかしの強さを設定する。
            posteffect.Intensity = 10.0f;

            // ライトブルームの露光の強さを設定する。
            posteffect.Exposure = 1.0f;

            // ライトブルームで光らせる明るさのしきい値を設定する。
            posteffect.Threshold = 0.3f;

            // レイヤーにライトブルームのポストエフェクトを適用。
            layer.AddPostEffect(posteffect);

            // Altseedのウインドウが閉じられていないか確認する。
            while (asd.Engine.DoEvents())
            {
                // Altseedを更新する。
                asd.Engine.Update();
            }

            // Altseedを終了する。
            asd.Engine.Terminate();
        }
Exemplo n.º 2
0
        // レイヤーにライトブルームのポストエフェクトを適用する。
        public void Run()
        {
            // Altseedを初期化する。
            asd.Engine.Initialize("PostEffect_LightBloom", 640, 480, new asd.EngineOption());

            var texture = asd.Engine.Graphics.CreateTexture2D("Data/Texture/Picture1.png");

            // シーンクラスのインスタンスを生成する。
            var scene = new asd.Scene();

            // レイヤーのコンストラクタを呼び出す。
            var layer = new asd.Layer2D();

            // レイヤークラスのインスタンスを生成する。
            var obj = new asd.TextureObject2D();

            // 画像描画オブジェクトのインスタンスを生成する。
            obj.Position = new asd.Vector2DF(50, 50);
            obj.Texture = texture;

            // シーンを変更し、そのシーンにレイヤーを追加し、そのレイヤーにオブジェクトを追加する。
            asd.Engine.ChangeScene(scene);
            scene.AddLayer(layer);
            layer.AddObject(obj);

            // ライトブルームクラスのインスタンスを生成する。
            var posteffect = new asd.PostEffectLightBloom();

            // ライトブルームのぼかしの強さを設定する。
            posteffect.Intensity = 10.0f;

            // ライトブルームの露光の強さを設定する。
            posteffect.Exposure = 1.0f;

            // ライトブルームで光らせる明るさのしきい値を設定する。
            posteffect.Threshold = 0.3f;

            // レイヤーにライトブルームのポストエフェクトを適用。
            layer.AddPostEffect(posteffect);

            // Altseedのウインドウが閉じられていないか確認する。
            while (asd.Engine.DoEvents())
            {
                // Altseedを更新する。
                asd.Engine.Update();
            }

            // Altseedを終了する。
            asd.Engine.Terminate();
        }
Exemplo n.º 3
0
        protected override void OnStart()
        {
            var scene = new asd.Scene();
            var layer = new asd.Layer2D();
            var obj = new asd.TextureObject2D();
            scene.AddLayer(layer);
            layer.AddObject(obj);
            asd.Engine.ChangeScene(scene);

            var g = asd.Engine.Graphics;
            var texture = g.CreateTexture2D("Data/Texture/Sample1.png");
            obj.Texture = texture;
            obj.Scale = new asd.Vector2DF(1, 1);

            var pe = new asd.PostEffectLightBloom();
            pe.Intensity = 5.0f;
            pe.Threshold = 0.3f;
            pe.Exposure = 2.0f;
            layer.AddPostEffect(pe);
        }
Exemplo n.º 4
0
        protected override void OnStart()
        {
            var scene = new asd.Scene();
            var layer = new asd.Layer2D();
            var obj   = new asd.TextureObject2D();

            scene.AddLayer(layer);
            layer.AddObject(obj);
            asd.Engine.ChangeScene(scene);

            var g       = asd.Engine.Graphics;
            var texture = g.CreateTexture2D("Data/Texture/Sample1.png");

            obj.Texture = texture;
            obj.Scale   = new asd.Vector2DF(1, 1);

            var pe = new asd.PostEffectLightBloom();

            pe.Intensity = 5.0f;
            pe.Threshold = 0.3f;
            pe.Exposure  = 2.0f;
            layer.AddPostEffect(pe);
        }
Exemplo n.º 5
0
        public void Run()
        {
            // 説明
            Console.WriteLine("Z : グレースケール追加");
            Console.WriteLine("X : セピア調追加");
            Console.WriteLine("C : ガウスぼかし追加");
            Console.WriteLine("V : ライトブルーム追加");
            Console.WriteLine("A : 全てのポストエフェクト消去");

            // aceを初期化する
            asd.Engine.Initialize("PostEffect", 640, 480, new asd.EngineOption());

            // シーン等を初期化する
            var scene = new asd.Scene();
            var layer = new asd.Layer2D();
            var effectObj = new asd.EffectObject2D();
            var effect = asd.Engine.Graphics.CreateEffect("Data/Effect/magic.efk");

            scene.HDRMode = true; ;
            scene.AddLayer(layer);
            layer.AddObject(effectObj);
            asd.Engine.ChangeScene(scene);

            effectObj.Scale = new asd.Vector2DF(50, 50);
            effectObj.Position = new asd.Vector2DF(320, 240);
            effectObj.Effect = effect;
            effectObj.Play();

            // aceが進行可能かチェックする。
            while (asd.Engine.DoEvents())
            {
                // aceを更新する。
                asd.Engine.Update();

                // Aを押したらポストエフェクトを全て破棄する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.A) == asd.KeyState.Push)
                {
                    layer.ClearPostEffects();
                }

                // Zを押したらグレースケールを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.Z) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectGrayScale();
                    layer.AddPostEffect(posteffect);
                }

                // Xを押したらセピアを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.X) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectSepia();
                    layer.AddPostEffect(posteffect);
                }

                // Cを押したらガウスぼかしを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.C) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectGaussianBlur();
                    posteffect.Intensity = 5.0f;
                    layer.AddPostEffect(posteffect);
                }

                // Vを押したらライトブルームを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.V) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectLightBloom();
                    posteffect.Intensity = 10.0f;
                    posteffect.Exposure = 1.0f;
                    posteffect.Threshold = 0.3f;
                    layer.AddPostEffect(posteffect);
                }
            }

            // aceを終了する。
            asd.Engine.Terminate();
        }
Exemplo n.º 6
0
        public void Run()
        {
            // 説明
            Console.WriteLine("Z : グレースケール追加");
            Console.WriteLine("X : セピア調追加");
            Console.WriteLine("C : ガウスぼかし追加");
            Console.WriteLine("V : ライトブルーム追加");
            Console.WriteLine("A : 全てのポストエフェクト消去");

            // aceを初期化する
            asd.Engine.Initialize("PostEffect", 640, 480, new asd.EngineOption());

            // シーン等を初期化する
            var scene     = new asd.Scene();
            var layer     = new asd.Layer2D();
            var effectObj = new asd.EffectObject2D();
            var effect    = asd.Engine.Graphics.CreateEffect("Data/Effect/magic.efk");

            scene.HDRMode = true;;
            scene.AddLayer(layer);
            layer.AddObject(effectObj);
            asd.Engine.ChangeScene(scene);

            effectObj.Scale    = new asd.Vector2DF(50, 50);
            effectObj.Position = new asd.Vector2DF(320, 240);
            effectObj.Effect   = effect;
            effectObj.Play();

            // aceが進行可能かチェックする。
            while (asd.Engine.DoEvents())
            {
                // aceを更新する。
                asd.Engine.Update();

                // Aを押したらポストエフェクトを全て破棄する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.A) == asd.KeyState.Push)
                {
                    layer.ClearPostEffects();
                }

                // Zを押したらグレースケールを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.Z) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectGrayScale();
                    layer.AddPostEffect(posteffect);
                }

                // Xを押したらセピアを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.X) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectSepia();
                    layer.AddPostEffect(posteffect);
                }

                // Cを押したらガウスぼかしを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.C) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectGaussianBlur();
                    posteffect.Intensity = 5.0f;
                    layer.AddPostEffect(posteffect);
                }

                // Vを押したらライトブルームを追加する。
                if (asd.Engine.Keyboard.GetKeyState(asd.Keys.V) == asd.KeyState.Push)
                {
                    var posteffect = new asd.PostEffectLightBloom();
                    posteffect.Intensity = 10.0f;
                    posteffect.Exposure  = 1.0f;
                    posteffect.Threshold = 0.3f;
                    layer.AddPostEffect(posteffect);
                }
            }

            // aceを終了する。
            asd.Engine.Terminate();
        }