This document is the changelog of luminance-webgl. You should consult it when upgrading to a new version, as it contains precious information on breaking changes, minor additions and patch notes.
If you’re experiencing weird type errors when upgrading to a new version, it might be due to
how cargo
resolves dependencies. cargo update
is not enough, because all luminance crate use
SemVer ranges to stay
compatible with as many crates as possible. In that case, you want cargo update --aggressive
.
Apr 12, 2022
- Support of
luminance-0.47
.
- ?
Dec 31, 2021
- Enable depth writing if we clear depth. It’s important to prevent getting invalidated state from a previous
RenderState
.
Nov 26, 2021
- Fix buffer kind not correctly being used (i.e. mixing vertex and index buffers is not possible, for instance). This fix was the premise of the full fix, as a redesign of luminance’s buffer interface was needed to fully fix the problem.
- Fix lifetime issue with slicing tessellation.
- Add support for
ShaderData
viaStd140
(luminance-std140
). - Implement the new
Uniformable
interface. - Support for uniform array and runtime-check them.
- Support the new color clearing.
- Implement the new
TexelUpload
interface.
Apr 25, 2021
- Support of
luminance-0.44
and its subsequent texture resizing and new texture creation interface. - Use arrays instead of tuples for pixel encoding wherever it was applicable.
- Support for the Query API.
- Fix WebGL
impl
for arrays to be able to use them as source of initial storage forBuffer
. - Fix WebGL cubemap storage creation. The bug was making them completely unusable and highly distorted / corrupted.
Oct 31st, 2020
- Fix a bug while getting the context’s initial value for the depth write property (that one can change with
RenderState::set_depth_write
).
Oct 31st, 2020
- Fix several uniform updates methods, that wouldn’t send data with the correct size, causing various random issues.
Oct 28, 2020
- Remove the limitation about creating contexts in WebGL: it is now possible to create as many as users want. WebGL doesn’t have the same requirements as OpenGL in terms of threading and contexts.
- Remove the
obtain_slice
andobtain_slice_mut
methods. If you were using them, please feel free to use theDeref
andDerefMut
interface instead. It prevents one extra layer of useless validation viaResult
, since backends will simply always returnOk(slice)
. The validation process is done when accessing the slice, e.g.Buffer::slice
andBuffer::slice_mut
.
Oct 26th, 2020
- Add a bunch of
Debug
annotations. - Add support for scissor test implementation.
Aug 30th, 2020
- Support of
luminance-0.42
. - Add support for
UniformWarning::UnsupportedType
, which is raised when a uniform type is used by the client code while not supported by the backend implementation.
Aug 18th, 2020
- Remove unnecessary type-erasure that was basically doing a no-op.
- Fix deinterleaved tessellation mapping that would map mutable slices with the wrong length.
Jul 24th, 2020
- Support of
luminance-0.41
.
Wed Jul, 15th 2020
- Initial revision.