Changelog
HexLayout
- (BREAKING)
HexLayout
Y axis is no longer inverted by default (#187) HexLayout
builder patter (#187)- (BREAKING)
HexLayout
removed theinvert_x
andinvert_y
fields (#190) - (BREAKING)
HexLayout
hex_size
field is nowscale
(#190) - Added the following
HexLayout
methods: (#190)transform_point
transform_vector
inverse_transform_point
inverse_transform_vector
invert_x
invert_y
- Added
HexLayout::with_rect_size
to construct hexagons matching sprite dimensions (#194) - Added
hex_edge_corners
utility method (#170)
Mesh generation (#170, #198)
- (BREAKING)
ColumnMeshBuilder
can now disable some side quads - (BREAKING)
ColumnMeshBuilder
andPlaneMeshBuilder
now use a centralized
FaceOptions
for UV and inset options - Added
PlaneMeshBuilder::with_face_options
builder method - Added
Face::apply_options
taking aFaceOptions
parameter - Renamed
Quad::from_bottom
toQuad::new
- Added a new
HeightMapMeshBuilder
with its associatedheightmap_builder
example
Storage
- Fixed
HexagonalMap
access returning values for indices out of bounds. - (BREAKING) Moved common methods of storage structs to a
HexStore
trait. std::collections::HashMap<Hex, T>
implementsHexStore
- All
HexStore
types now have the following methods:values()
which iterates on the stored valuesvalues_mut()
which iterates mutably on the stored values- (BREAKING)
iter()
which iterates on the key value pairs - (BREAKING)
iter_mut()
which iterates on the key value pairs with mutable reference to the value
- Added the followin
HexagonalMap
methods:len()
is_empty()
Misc
- (BREAKING)
HexOffsetMode
now has only 2 variantsEven
andOdd
- (BREAKING)
Hex::to_offset_coordinates
andHex::from_offset_coordinates
take a newHexOrientation
parameter (#189) - Added
world_unit_vector
methods toEdgeDirection
andVertexDirection
(#190) - Orientation matrices are now
glam::Mat2
(#191) - Added a
resolutions_grid
example (#199) HexOrientation
implementsstd::ops::Not
(#199)- Improve documentation on bevy mesh generation (#200)
What's Changed
- feat: Orientation based offset coordinates conversion methods by @ManevilleF in #189
- chore: HexLayout Y axis is no longer inverted by default by @ManevilleF in #187
- feat: HexLayout has a single scale field for axis management by @ManevilleF in #190
- chore: Clearer Matrix operations by @ManevilleF in #191
- feat: HeightMap mesh builder by @ManevilleF in #170
- feat: HexLayout rect size constructor by @ManevilleF in #194
- feat: HexStore trait by @ManevilleF in #196
- New example: Resolutions grid by @ManevilleF in #199
- HeightMapMeshBuilder custom face options by @ManevilleF in #198
- docs: Improve Bevy mesh render usage note by @ManevilleF in #200
- Chore/0.20 release by @ManevilleF in #201
Full Changelog: 0.19.1...0.20.0