experiment with types...

This commit is contained in:
Brandon Thomas
2021-01-14 01:04:43 -05:00
parent 201c0953ed
commit 4416b53c3f
2 changed files with 67 additions and 16 deletions
+35
View File
@@ -41,4 +41,39 @@ impl Color {
Color::Custom {r, g, b} => *b,
}
}
pub fn get_u32_r(&self) -> u32 {
match &self {
Color::Black => 0,
Color::White => 255,
Color::Red => 255,
Color::Green => 0,
Color::Blue => 0,
Color::Custom {r, g, b} => *r as u32,
}
}
pub fn get_u32_g(&self) -> u32 {
match &self {
Color::Black => 0,
Color::White => 255,
Color::Red => 0,
Color::Green => 255,
Color::Blue => 0,
Color::Custom {r, g, b} => *g as u32,
}
}
pub fn get_u32_b(&self) -> u32 {
match &self {
Color::Black => 0,
Color::White => 255,
Color::Red => 0,
Color::Green => 0,
Color::Blue => 255,
Color::Custom {r, g, b} => *b as u32,
}
}
}
+32 -16
View File
@@ -9,10 +9,14 @@ pub struct Point {
pub y: f32,
pub z: f32,
_unused: f32,
pub r: f32,
pub g: f32,
pub b: f32,
pub a: f32,
//pub r: f32,
//pub g: f32,
//pub b: f32,
//pub a: f32,
pub r: u32,
pub g: u32,
pub b: u32,
pub a: u32,
}
impl Point {
@@ -23,10 +27,14 @@ impl Point {
y,
z,
_unused: 0.0f32,
r: color.get_f32_r(),
g: color.get_f32_g(),
b: color.get_f32_b(),
a: 1.0f32,
//r: color.get_f32_r(),
//g: color.get_f32_g(),
//b: color.get_f32_b(),
//a: 1.0f32,
r: color.get_u32_r(),
g: color.get_u32_g(),
b: color.get_u32_b(),
a: 1,
}
}
@@ -43,10 +51,14 @@ impl Point {
y,
z,
_unused: 0.0f32,
r: color.get_f32_r(),
g: color.get_f32_g(),
b: color.get_f32_b(),
a: 1.0f32,
//r: color.get_f32_r(),
//g: color.get_f32_g(),
//b: color.get_f32_b(),
//a: 1.0f32,
r: color.get_u32_r(),
g: color.get_u32_g(),
b: color.get_u32_b(),
a: 1,
}
}
@@ -57,10 +69,14 @@ impl Point {
buf.put_f32(self.y);
buf.put_f32(self.z);
buf.put_f32(0.0f32); // Unused
buf.put_f32(self.r);
buf.put_f32(self.g);
buf.put_f32(self.b);
buf.put_f32(self.a);
//buf.put_f32(self.r);
//buf.put_f32(self.g);
//buf.put_f32(self.b);
//buf.put_f32(self.a);
buf.put_u32(self.r);
buf.put_u32(self.g);
buf.put_u32(self.b);
buf.put_u32(self.a);
buf.to_vec()
}