From 3fcd4d472b8785d389b31cb248e67b42dc38588d Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Thu, 10 Aug 2017 17:47:46 -0700 Subject: [PATCH] Shuffle `BQuad` fields around for better alignment in GLSL --- partitioner/src/lib.rs | 10 ++++++---- partitioner/src/partitioner.h | 7 ++++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/partitioner/src/lib.rs b/partitioner/src/lib.rs index 14f22a74..63e83055 100644 --- a/partitioner/src/lib.rs +++ b/partitioner/src/lib.rs @@ -26,12 +26,13 @@ pub mod partitioner; #[derive(Debug, Clone, Copy, Serialize, Deserialize)] pub struct BQuad { pub upper_left_vertex_index: u32, - pub upper_control_point_vertex_index: u32, pub upper_right_vertex_index: u32, + pub upper_control_point_vertex_index: u32, + pad0: u32, pub lower_left_vertex_index: u32, - pub lower_control_point_vertex_index: u32, pub lower_right_vertex_index: u32, - pad: [u32; 2], + pub lower_control_point_vertex_index: u32, + pad1: u32, } impl BQuad { @@ -50,7 +51,8 @@ impl BQuad { lower_left_vertex_index: lower_left_vertex_index, lower_control_point_vertex_index: lower_control_point_vertex_index, lower_right_vertex_index: lower_right_vertex_index, - pad: [0; 2], + pad0: 0, + pad1: 0, } } } diff --git a/partitioner/src/partitioner.h b/partitioner/src/partitioner.h index c61cc8b4..426fb5c4 100644 --- a/partitioner/src/partitioner.h +++ b/partitioner/src/partitioner.h @@ -87,12 +87,13 @@ typedef struct pf_edge_indices pf_edge_indices_t; struct pf_b_quad { uint32_t upper_left_vertex_index; - uint32_t upper_control_point_vertex_index; uint32_t upper_right_vertex_index; + uint32_t upper_control_point_vertex_index; + uint32_t pad0; uint32_t lower_left_vertex_index; - uint32_t lower_control_point_vertex_index; uint32_t lower_right_vertex_index; - uint32_t pad[2]; + uint32_t lower_control_point_vertex_index; + uint32_t pad1; }; typedef struct pf_b_quad pf_b_quad_t;