### 0.11.0.4 - GHC 8 support. ### 0.11.0.3 - Updated the documentation in Luminance crate module. ### 0.11.0.2 - Added support for `dlist-0.8`. ### 0.11.0.1 - Fixed documentation broken links. # 0.11 - Removed `Region`s. Now using commands (`FrameCmd`, `ShadingCmd`, `DrawCmd` and `RenderCmd`). Safer interface. ### 0.10.0.2 - Fixed `Buffer` documentation. ### 0.10.0.1 - Fixed *gl45* backend (didn’t compile). - Added documentation/tutorial for `Buffer`. # 0.10 #### Breaking changes - `Region` was removed in favor of `Buffer`; just a type renaming, don’t freak out. - Removed batches in favor of `Region`s. - Removed `Decidable` and `Divisible` instances for `U` as uniforms are not supposed to be used this way. #### Patch changes - Internal changes to make `createStage` errors more verbose about the type of the stage. ### 0.9.1.2 - Support for `contravariant-1.4`. - Support for GL_ARB_separate_shader_objects for `gl33` backend (shader pragma). ### 0.9.1.1 - Several minor changes (clean up mostly). ## 0.9.1 - Made `Program` an instance of `Eq` and `Show`. # 0.9 - Dropped `gl32` for `gl33`. ## 0.8.2.1 - Removed the `MonadIO` constraint on `createGeometry` as it’s already brought by `MonadResource`. - Clean some code about `createGeometry` conditional (gl32 / gl45). ## 0.8.2 - Exposed `SomeUniformName`. ## 0.8.1 - Exposed `UniformName` – forgotten in 0.8 release. # 0.8 #### Breaking changes - `createProgram` now has a new rank 2 type parameter to map uniform values. It uses the newly added first-class `UniformName` type to select which kind of uniform is wanted – up to now, simple uniforms or uniform block. That change is great because it unifies everything under the same type and future adds won’t break the existing code – the signature of `createProgram` for instance. ## 0.7.2 - Made `UniformInterface` visible (type only). ## 0.7.1 - Added `Graphics.Luminance.Pixel` in the export-list of `Graphics.Luminance.Texture`. # 0.7 #### Breaking changes - Shader creation can fail with the `UnsupportedStage` error, holding the stage (and not a `String`) as it used to. - Fixed cubemap size interface. - Shader interface now uses the type `StageType` and `createStage` to create new shader stages. #### Minor changes - Several internal architectural changes. - Added `gl45-bindless-textures` caps. - Added `gl32` and `gl45` backends. The default backend is `gl32` and backends can be selected via compilation flags. #### Patch changes - Simplified and fixed UBO implementation. - Added more debug symbols. - OpenGL debugging now shows the callstack in a fancy way. - Several internal architectural changes. ### 0.6.0.5 - semigroups-0.18 support. ### 0.6.0.4 - Extensions are now set per module. ### 0.6.0.3 - Updated .cabal documentation. - Support for `semigroups-0.17`. ### 0.6.0.2 - Fixed typo in the hackage documentation. ### 0.6.0.1 - Fixed `(:*:)` for `UniformBlock`. - Dumped the `Storable` constraint in the `uniBlock` function (rank2 function passed to build uniform interfaces to `createProgram`). - Added `(:.)`, `(,)`, `(,,)` and `(,,,)` into `UniformBlock`. # 0.6 #### Breaking changes - Added a new function to the `createProgram` and `createProgram_` uniform interface builder argument. That function can now be used to retrieve `U (Region rw (UB a))`, which is a *UBO*. - The uniform interface creation is not performed in a arbitrary, user-defined monad anymore. A dedicated type was introduced for that very purpose – `UniformInterface` – constraining the user to only use the uniformize functions to map semantics to `U` values. #### Non-breaking changes - Added `UB`, which can be used along with `Buffer` to create *UBO* buffers and pass them to shaders. ### 0.5.2.1 - Relaxed lower bound of `linear` to accept `linear-1.19.*`. That changes should enable `lumimance` to be included into stackage. - Changed internal representation of `Region`. ## 0.5.2 #### Non-breaking changes - Added texture arrays: + `Texture1DArray` + `Texture2DArray` + `CubemapArray` ## 0.5.1 #### Non-breaking changes - Added several `Uniform` instances for [linear](http://hackage.haskell.org/package/linear). #### Patch changes - Fixed the indexed render. - Fixed the vertex attributes being ignored. ### 0.5 #### Breaking changes - Changed the interface of texels transfer and filling. We dropped the `Foldable` instance and now require a `Data.Vector.Storable.Vector` for performance purposes. #### Non-breaking changes - Added `MirrorRepeat` constructor to `Wrap`. #### Patch changes - Fixed prerequisites in README. ## 0.4.1 - Fixed the `sizeOf` implementation of `a :. b`. - Added `nubDirect`, which can be used to turn *direct geometry* into *indirect geometry*. # 0.4 #### Non-breaking changes - Added .gitignore. #### Breaking changes - `V2`, `V3` and `V4` replaced by `vec2`, `vec3` and `vec4`. - `V` is not anymore luminance’s. We use linear’s one, because it already has all the instances we need and is more generic. The interface is then impacted. ## 0.3.2 - Added Core.Tuple into the export liste of Luminance for easier uses in client code space. ### 0.3.1.2 - Fixed Geometry haddock documentation. ### 0.3.1.1 - Fixed haddock escaping issues. ## 0.3.1 - Added `CubeFace` in the interface. ### 0.3.0.1 - Enhanced Texture documentation. # 0.3 - All textures can now be used in shaders. - Added support for more OpenGL textures – though, framebuffers are not impacted yet. - `Texture1D` - `Texture2D` - `Texture3D` - `Cubemap` - Changed the texture interface with type families so that we can add more in an easier way! # 0.2 #### Breaking changes - Automatically insert GLSL pragmas in shaders. #### Non-breaking changes - Added documentation for RenderCmd. - Added stdRenderCmd_. - Added shaderProgramBatch_. ### 0.1.1.1 - Fixed a typo in the Graphics.Luminance documentation. ## 0.1.1 - Added a tutoral in Graphics.Luminance. # 0.1 - Initial revision. Do not consider this revision as a stable release. It’s experimental. The first stable release will be **1.0**.