public void Run() { // Altseedを初期化する。 asd.Engine.Initialize("CustomPostEffect_Invert", 640, 480, new asd.EngineOption()); // シーン、レイヤー、画像を表示するオブジェクトを生成する。 var scene = new asd.Scene(); var layer = new asd.Layer2D(); var obj = new asd.TextureObject2D(); obj.Texture = asd.Engine.Graphics.CreateTexture2D("Data/Texture/Picture1.png"); // シーンを変更し、そのシーンにレイヤーを追加し、そのレイヤーにオブジェクトを追加する。 asd.Engine.ChangeScene(scene); scene.AddLayer(layer); layer.AddObject(obj); // レイヤーにポストエフェクトを適用する。 layer.AddPostEffect(new InvertPostEffect()); while (asd.Engine.DoEvents()) { asd.Engine.Update(); Recorder.TakeScreenShot("CustomPostEffect_Invert", 5); } asd.Engine.Terminate(); }
// レイヤーにライトブルームのポストエフェクトを適用する。 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(); }
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.PostEffectGrayScale(); layer.AddPostEffect(pe); }
private static void PostEffect() { // シーン、レイヤー、画像を表示するオブジェクトを生成する。 var scene = new asd.Scene(); var layer = new asd.Layer2D(); // シーンを変更し、そのシーンにレイヤーを追加し、そのレイヤーにオブジェクトを追加する。 asd.Engine.ChangeScene(scene); scene.AddLayer(layer); // レイヤーにポストエフェクトを適用する。 layer.AddPostEffect(new CustomPostEffect("ShaderCode/01/sample.glsl")); while (asd.Engine.DoEvents()) { asd.Engine.Update(); } }
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.PostEffectSepia(); layer.AddPostEffect(pe); }
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); }
// レイヤーにグレースケールのポストエフェクトを適用する。 public void Run() { // Altseedを初期化する asd.Engine.Initialize("PostEffect_GrayScale", 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); // レイヤーにグレースケールのポストエフェクトを適用する。 layer.AddPostEffect(new asd.PostEffectGrayScale()); // Altseedのウインドウが閉じられていないか確認する。 while (asd.Engine.DoEvents()) { // Altseedを更新する。 asd.Engine.Update(); } // Altseedを終了する。 asd.Engine.Terminate(); }
public void Run() { asd.Engine.Initialize("CustomPostEffect", 640, 480, new asd.EngineOption()); var scene = new asd.Scene(); var layer = new asd.Layer2D(); var obj = new asd.TextureObject2D() { Texture = asd.Engine.Graphics.CreateTexture2D("Data/Texture/Sample1.png"), }; layer.AddObject(obj); layer.AddPostEffect(new PostEffect(asd.Engine.Graphics)); scene.AddLayer(layer); asd.Engine.ChangeScene(scene); while (asd.Engine.DoEvents()) { asd.Engine.Update(); } asd.Engine.Terminate(); }
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(); }
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(); }