Convert colors to linear RGB in gradient pipelines
This commit is contained in:
parent
6246584209
commit
9a02d60ba5
2 changed files with 13 additions and 12 deletions
|
|
@ -86,10 +86,12 @@ impl Program {
|
|||
for (index, stop) in
|
||||
linear.color_stops.iter().enumerate().take(16)
|
||||
{
|
||||
stops[index * 8] = stop.color.r;
|
||||
stops[(index * 8) + 1] = stop.color.g;
|
||||
stops[(index * 8) + 2] = stop.color.b;
|
||||
stops[(index * 8) + 3] = stop.color.a;
|
||||
let [r, g, b, a] = stop.color.into_linear();
|
||||
|
||||
stops[index * 8] = r;
|
||||
stops[(index * 8) + 1] = g;
|
||||
stops[(index * 8) + 2] = b;
|
||||
stops[(index * 8) + 3] = a;
|
||||
stops[(index * 8) + 4] = stop.offset;
|
||||
stops[(index * 8) + 5] = 0.;
|
||||
stops[(index * 8) + 6] = 0.;
|
||||
|
|
|
|||
|
|
@ -168,14 +168,13 @@ impl Pipeline {
|
|||
let stops: Vec<ColorStop> = linear
|
||||
.color_stops
|
||||
.iter()
|
||||
.map(|stop| ColorStop {
|
||||
offset: stop.offset,
|
||||
color: Vec4::new(
|
||||
stop.color.r,
|
||||
stop.color.g,
|
||||
stop.color.b,
|
||||
stop.color.a,
|
||||
),
|
||||
.map(|stop| {
|
||||
let [r, g, b, a] = stop.color.into_linear();
|
||||
|
||||
ColorStop {
|
||||
offset: stop.offset,
|
||||
color: Vec4::new(r, g, b, a),
|
||||
}
|
||||
})
|
||||
.collect();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue