GraphiteEditor / GraphiteEditor/Graphite
Destructive node collapse
- 主要言語
- Rust
- スター
- 27.2k
- フォーク
- 1.3k
- 平均マージ
- 20時間 5分
- マージ済み PR(30日)
- 57
説明
It should be possible to right click a node and collapse its effect into its upstream nodes, whenever that's possible. For example, a Transform node should be able to update the nodes upstream of it to produce the same result without its continued presence. This should work for all nodes that could support something of the sort. For example, if a Round Corners node (which we don't have yet) is applied downstream of a Rectangle node, it could be collapsed by setting the original Rectangle node's corner rounding parameter to an equivalent value after factoring in any transformations that have altered its scale along the data flow. We may need some kind of system to encode and calculate equivalence relations. (This full system could be a GSoC project.)
For some background reading related to the subject:
- https://en.wikipedia.org/wiki/E-graph
- https://egraphs-good.github.io/
- https://www.youtube.com/watch?v=ap29SzDAzP0
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
この issue にはファイル、テスト、エントリーポイントが記載されていません。まずノードグラフとプロシージャルグラフィックスのサブシステムを調査し、次にリンクされている e-graph リソースを確認してください。完了とするには、同値性へのアプローチを決定し、結果を維持したまま該当するノードを安全に折りたたむ機能をサポートする必要があります。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- rust
- 領域
- computer-graphics
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 15/100