Skip to content

Commit e7b8b5a

Browse files
authored
Shaders: graster-nodes no-std prep (#2924)
* raster-nodes: remove commented out index node * raster-nodes: move `CubicSplines` to separate mod * raster-nodes: create `mod blending_nodes` and move assoc nodes * raster-nodes: move node `gradient_map` to its own mod
1 parent 59f3835 commit e7b8b5a

File tree

9 files changed

+426
-421
lines changed

9 files changed

+426
-421
lines changed

editor/src/messages/portfolio/document_migration.rs

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,28 @@ const NODE_REPLACEMENTS: &[NodeReplacement<'static>] = &[
251251
node: graphene_std::vector::auto_tangents::IDENTIFIER,
252252
aliases: &["graphene_core::vector::GenerateHandlesNode", "graphene_core::vector::RemoveHandlesNode"],
253253
},
254-
// raster::adjustments
254+
// graphene_raster_nodes::blending_nodes
255+
NodeReplacement {
256+
node: graphene_std::raster_nodes::blending_nodes::blend::IDENTIFIER,
257+
aliases: &[
258+
"graphene_raster_nodes::adjustments::BlendNode",
259+
"graphene_core::raster::adjustments::BlendNode",
260+
"graphene_core::raster::BlendNode",
261+
],
262+
},
263+
NodeReplacement {
264+
node: graphene_std::raster_nodes::blending_nodes::blend_color_pair::IDENTIFIER,
265+
aliases: &["graphene_raster_nodes::adjustments::BlendColorPairNode", "graphene_core::raster::BlendColorPairNode"],
266+
},
267+
NodeReplacement {
268+
node: graphene_std::raster_nodes::blending_nodes::color_overlay::IDENTIFIER,
269+
aliases: &[
270+
"graphene_raster_nodes::adjustments::ColorOverlayNode",
271+
"graphene_core::raster::adjustments::ColorOverlayNode",
272+
"graphene_raster_nodes::generate_curves::ColorOverlayNode",
273+
],
274+
},
275+
// graphene_raster_nodes::adjustments
255276
NodeReplacement {
256277
node: graphene_std::raster_nodes::adjustments::luminance::IDENTIFIER,
257278
aliases: &["graphene_core::raster::adjustments::LuminanceNode", "graphene_core::raster::LuminanceNode"],
@@ -292,20 +313,6 @@ const NODE_REPLACEMENTS: &[NodeReplacement<'static>] = &[
292313
node: graphene_std::raster_nodes::adjustments::threshold::IDENTIFIER,
293314
aliases: &["graphene_core::raster::adjustments::ThresholdNode", "graphene_core::raster::ThresholdNode"],
294315
},
295-
NodeReplacement {
296-
node: graphene_std::raster_nodes::adjustments::blend::IDENTIFIER,
297-
aliases: &["graphene_core::raster::adjustments::BlendNode", "graphene_core::raster::BlendNode"],
298-
},
299-
NodeReplacement {
300-
node: graphene_std::raster_nodes::adjustments::blend_color_pair::IDENTIFIER,
301-
aliases: &["graphene_core::raster::BlendColorPairNode"],
302-
},
303-
// this node doesn't seem to exist?
304-
// (graphene_std::raster_nodes::adjustments::blend_color::IDENTIFIER, &["graphene_core::raster::adjustments::BlendColorsNode","graphene_core::raster::BlendColorsNode"]),
305-
NodeReplacement {
306-
node: graphene_std::raster_nodes::adjustments::gradient_map::IDENTIFIER,
307-
aliases: &["graphene_core::raster::adjustments::GradientMapNode", "graphene_core::raster::GradientMapNode"],
308-
},
309316
NodeReplacement {
310317
node: graphene_std::raster_nodes::adjustments::vibrance::IDENTIFIER,
311318
aliases: &["graphene_core::raster::adjustments::VibranceNode", "graphene_core::raster::VibranceNode"],
@@ -326,11 +333,15 @@ const NODE_REPLACEMENTS: &[NodeReplacement<'static>] = &[
326333
node: graphene_std::raster_nodes::adjustments::exposure::IDENTIFIER,
327334
aliases: &["graphene_core::raster::adjustments::ExposureNode", "graphene_core::raster::ExposureNode"],
328335
},
336+
// graphene_raster_nodes::*
329337
NodeReplacement {
330-
node: graphene_std::raster_nodes::adjustments::color_overlay::IDENTIFIER,
331-
aliases: &["graphene_core::raster::adjustments::ColorOverlayNode", "graphene_raster_nodes::generate_curves::ColorOverlayNode"],
338+
node: graphene_std::raster_nodes::gradient_map::gradient_map::IDENTIFIER,
339+
aliases: &[
340+
"graphene_raster_nodes::gradient_map::GradientMapNode",
341+
"graphene_core::raster::adjustments::GradientMapNode",
342+
"graphene_core::raster::GradientMapNode",
343+
],
332344
},
333-
// raster
334345
NodeReplacement {
335346
node: graphene_std::raster_nodes::generate_curves::generate_curves::IDENTIFIER,
336347
aliases: &["graphene_core::raster::adjustments::GenerateCurvesNode"],

node-graph/gbrush/src/brush.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ use graphene_core::registry::FutureWrapperNode;
1414
use graphene_core::transform::Transform;
1515
use graphene_core::value::ClonedNode;
1616
use graphene_core::{Ctx, Node};
17-
use graphene_raster_nodes::adjustments::blend_colors;
17+
use graphene_raster_nodes::blending_nodes::blend_colors;
1818
use graphene_raster_nodes::std_nodes::{empty_image, extend_image_to_bounds};
1919

2020
#[derive(Clone, Copy, Debug, PartialEq)]
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
use graphene_core::Color;
2+
use graphene_core::gradient::GradientStops;
3+
use graphene_core::raster_types::{CPU, RasterDataTable};
4+
5+
pub trait Adjust<P> {
6+
fn adjust(&mut self, map_fn: impl Fn(&P) -> P);
7+
}
8+
impl Adjust<Color> for Color {
9+
fn adjust(&mut self, map_fn: impl Fn(&Color) -> Color) {
10+
*self = map_fn(self);
11+
}
12+
}
13+
impl Adjust<Color> for Option<Color> {
14+
fn adjust(&mut self, map_fn: impl Fn(&Color) -> Color) {
15+
if let Some(v) = self {
16+
*v = map_fn(v)
17+
}
18+
}
19+
}
20+
impl Adjust<Color> for GradientStops {
21+
fn adjust(&mut self, map_fn: impl Fn(&Color) -> Color) {
22+
for (_pos, c) in self.iter_mut() {
23+
*c = map_fn(c);
24+
}
25+
}
26+
}
27+
impl Adjust<Color> for RasterDataTable<CPU> {
28+
fn adjust(&mut self, map_fn: impl Fn(&Color) -> Color) {
29+
for instance in self.instance_mut_iter() {
30+
for c in instance.instance.data_mut().data.iter_mut() {
31+
*c = map_fn(c);
32+
}
33+
}
34+
}
35+
}

0 commit comments

Comments
 (0)