change neighbors to a right handed system

This commit is contained in:
griffi-gh 2023-01-22 22:09:37 +01:00
parent f9a7953dd8
commit 5f06c85279

View file

@ -92,31 +92,31 @@ impl super::ChunkStorage {
bottom: self.chunks.get(&(coords + ivec3(0, 1, 0))), bottom: self.chunks.get(&(coords + ivec3(0, 1, 0))),
left: self.chunks.get(&(coords - ivec3(1, 0, 0))), left: self.chunks.get(&(coords - ivec3(1, 0, 0))),
right: self.chunks.get(&(coords + ivec3(1, 0, 0))), right: self.chunks.get(&(coords + ivec3(1, 0, 0))),
front: self.chunks.get(&(coords - ivec3(0, 0, 1))), front: self.chunks.get(&(coords + ivec3(0, 0, 1))),
back: self.chunks.get(&(coords + ivec3(0, 0, 1))), back: self.chunks.get(&(coords - ivec3(0, 0, 1))),
} }
} }
pub fn neighbors_all(&self, coords: IVec3) -> Option<AllChunkNeighbors> { pub fn neighbors_all(&self, coords: IVec3) -> Option<AllChunkNeighbors> {
self.neighbors(coords).all() self.neighbors(coords).all()
} }
pub fn neighbors_all_mut(&mut self, coords: IVec3) -> Option<AllChunkNeighborsMut> { pub fn neighbors_all_mut(&mut self, coords: IVec3) -> Option<AllChunkNeighborsMut> {
let mut refs = self.chunks.get_many_mut([ let [
center,
top,
bottom,
left,
right,
front,
back
] = self.chunks.get_many_mut([
&coords, &coords,
&(coords - ivec3(0, 1, 0)), &(coords - ivec3(0, 1, 0)),
&(coords + ivec3(0, 1, 0)), &(coords + ivec3(0, 1, 0)),
&(coords - ivec3(1, 0, 0)), &(coords - ivec3(1, 0, 0)),
&(coords + ivec3(1, 0, 0)), &(coords + ivec3(1, 0, 0)),
&(coords - ivec3(0, 0, 1)),
&(coords + ivec3(0, 0, 1)), &(coords + ivec3(0, 0, 1)),
])?.map(Some); &(coords - ivec3(0, 0, 1)),
Some(AllChunkNeighborsMut { ])?;
center: std::mem::take(&mut refs[0]).unwrap(), Some(AllChunkNeighborsMut { center, top, bottom, left, right, front, back })
top: std::mem::take(&mut refs[1]).unwrap(),
bottom: std::mem::take(&mut refs[2]).unwrap(),
left: std::mem::take(&mut refs[3]).unwrap(),
right: std::mem::take(&mut refs[4]).unwrap(),
front: std::mem::take(&mut refs[5]).unwrap(),
back: std::mem::take(&mut refs[6]).unwrap(),
})
} }
} }