Skip to content

minaLogi/minaLogi.RenderPipeLine

Repository files navigation

minaLogi.RenderPipeLine

Beutl用のレンダーパイプラインです。この拡張機能のほかに、レンダラの拡張機能を追加することでそのレンダラを使うことができるようになります。

使い方

image エディターの「ソース操作」タブ(画面右側)にRender pipelineを追加することで使用することができます。作者がまだレンダラを作ってないため、スクリーンショットでは緑画面を表示するTestRendererが表示されています。

プロパティ

名前 機能
Width レンダラの描画キャンバスの横幅
Height レンダラの描画キャンバスの高さ
Renderer 使用するレンダラ

Rendererをプルダウンリストで選択できるようになりました!

レンダラを書く

レンダラは、第三者がBeutlの拡張機能として追加することができます。

using Beutl.Graphics;
using Beutl.Media;
using Beutl.Media.Pixel;
using minaLogi.RenderPipeLine;

public class TestRenderer : Renderer
{
    // レンダラの名前
    public override string Name => "TestRenderer";
    // レンダラの説明
    public override string Description => "Test";

    public override Bitmap<Bgra8888>? Render(Drawables drawables)
    {
        // ここに描画時の処理を書きます。
        // ビットマップを作成
        var bitmap = new Bitmap<Bgra8888>(Width, Height);
        foreach (var drawable in drawables)
        {
            // 描画するオブジェクトごとの処理が書けます
        }
        return bitmap;
    }
}

既知の問題

  • Transform, FilterEffectに変更を加えた際、即座にプレビュー画面に反映されない

About

Render pipeline for Beutl(https://github.com/b-editor/beutl)

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages