diff --git a/editor/src/node_graph_executor.rs b/editor/src/node_graph_executor.rs
index 61487f8d..54ae7b5e 100644
--- a/editor/src/node_graph_executor.rs
+++ b/editor/src/node_graph_executor.rs
@@ -498,7 +498,7 @@ impl NodeGraphExecutor {
let render_config = RenderConfig {
viewport: Footprint {
- transform,
+ transform: transform * DAffine2::from_scale(DVec2::splat(export_config.scale_factor)),
resolution: (size * export_config.scale_factor).as_uvec2(),
..Default::default()
},
diff --git a/website/content/features.md b/website/content/features.md
index 8dcc366e..a5cfe009 100644
--- a/website/content/features.md
+++ b/website/content/features.md
@@ -117,46 +117,50 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
Stackable adjustment layers
-
-

-
Procedurally alterable vector data
+
+

+
Boolean operations for shapes
+
+
+

+
Editable nested node subgraphs
Imaginate (Stable Diffusion node/tool)
-

-
Editable nested node subgraphs
+

+
GPU-accelerated raster rendering
-

-
Native desktop app (with Tauri)
+

+
Timeline with animation channels
-
-

-
Boolean operations for shapes
-
-
-

-
WebGPU accelerated rendering
-
-
-

-
Adaptive resolution raster rendering
-
-
+
Interactive graph auto-layout
-
+
Imported RAW photo processing
-
+
+

+
Adaptive resolution system
+
+
AI nodes and tools (e.g. magic wand)
+
+

+
Procedurally alterable vector data
+
+
+

+
Native desktop app (with Tauri)
+
New vector 2D renderer (with Vello)
@@ -165,10 +169,6 @@ Always on the bleeding edge and built to last— Graphite is written on a robust
Fully-supported brush tool
-
-

-
Timeline with animation channels
-
Graph data attribute spreadsheet