- Added correct support for bool-based types. (#39)
0.8.0 - 2021-10-26
- Added support for many math libraries directly: (#37)
- cgmath 0.18, behind the
cgmath
feature - nalgebra 0.29, behind the
nalgebra
feature - glam 0.19, behind the
glam
feature
- cgmath 0.18, behind the
- Added support for generating GLSL source from structs. (#33)
- Fixed many, many subtle alignment bugs. (#28, #35)
- Disabled bool-based types temporarily (#36)
- Renamed
AsStdN::StdNType
toOutput
. - Increased MSRV to 1.52.1.
0.7.1 - 2021-07-24
- Fixed broken crates.io release by publishing crevice-derive too.
0.7.0 - 2021-07-20 (Yanked)
This release was yanked due to an issue reported in #32.
- Added
ivec
,uvec
, andbvec
structs (#18) - Improved padding behavior for structs and matrices (#20)
- Implemented Crevice traits for more types (#23)
- Added conversions from Std* types to AsStd* types (#24)
- Added no_std support (#25)
0.6.0 - 2021-02-24
- Added
std430
support. Most APIs betweenstd140
andstd430
are the same! - Added the
WriteStd140
trait. This trait is more general thanAsStd140
and is automatically implemented for all existingAsStd140
implementers. - Added
Writer::write_std140
to write a type that implementsStd140
. - Added
AsStd140::std140_size_static
. This is similar to the old size method,std140_size
, but no longer requires a value to be passed. For size measurements that depend on a value, useWriteStd140::std140_size
instead. - Deprecated
Writer::write_slice
, asWriter::write
now accepts slices. - Changed bounds of some functions, like
Writer::write
to useWriteStd140
instead ofAsStd140
. This should affect no existing consumers. - Moved
std140_size
fromAsStd140
toWriteStd140
. Some existing consumers may need to import the other trait to access this m ethod.
0.5.0 - 2020-10-18
- Added f64-based std140 types:
DVec2
,DVec3
,DVec4
,DMat2
,DMat3
, andDMat4
. - Added support for std140 structs with alignment greater than 16.
- Fixed padding for std140 matrices; they were previously missing trailing padding.
0.4.0 - 2020-10-01
- Added
AsStd140::std140_size
for easily pre-sizing buffers. Writer::write
andSizer::add
now return the offset the value is or would be written to.- Added
std140::DynamicUniform
for aligning dynamic uniform members. - Added
Writer::write_slice
for writing multiple values in a row.
0.3.0 - 2020-09-22
- Added
Std140::as_bytes
, reducing the need to work with bytemuck directly. - Removed public re-export of bytemuck.
0.2.0 - 2020-09-22
- Added documentation for everything in the crate.
- Removed
type_layout
being exposed except for internal tests. - Fixed alignment offset not taking into account previously added alignment.
- Added
std140::Writer
, for writing dynamically laid out types to buffers. - Added
std140::Sizer
, for pre-calculating buffer sizes.
0.1.0 - 2020-09-18
- Initial MVP release