- GHC 8 support.
- Updated the documentation in Luminance crate module.
- Added support for
dlist-0.8
.
- Fixed documentation broken links.
- Removed
Region
s. Now using commands (FrameCmd
,ShadingCmd
,DrawCmd
andRenderCmd
). Safer interface.
- Fixed
Buffer
documentation.
- Fixed gl45 backend (didn’t compile).
- Added documentation/tutorial for
Buffer
.
Region
was removed in favor ofBuffer
; just a type renaming, don’t freak out.- Removed batches in favor of
Region
s. - Removed
Decidable
andDivisible
instances forU
as uniforms are not supposed to be used this way.
- Internal changes to make
createStage
errors more verbose about the type of the stage.
- Support for
contravariant-1.4
. - Support for GL_ARB_separate_shader_objects for
gl33
backend (shader pragma).
- Several minor changes (clean up mostly).
- Made
Program
an instance ofEq
andShow
.
- Dropped
gl32
forgl33
.
- Removed the
MonadIO
constraint oncreateGeometry
as it’s already brought byMonadResource
. - Clean some code about
createGeometry
conditional (gl32 / gl45).
- Exposed
SomeUniformName
.
- Exposed
UniformName
– forgotten in 0.8 release.
createProgram
now has a new rank 2 type parameter to map uniform values. It uses the newly added first-classUniformName
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 ofcreateProgram
for instance.
- Made
UniformInterface
visible (type only).
- Added
Graphics.Luminance.Pixel
in the export-list ofGraphics.Luminance.Texture
.
- Shader creation can fail with the
UnsupportedStage
error, holding the stage (and not aString
) as it used to. - Fixed cubemap size interface.
- Shader interface now uses the type
StageType
andcreateStage
to create new shader stages.
- Several internal architectural changes.
- Added
gl45-bindless-textures
caps. - Added
gl32
andgl45
backends. The default backend isgl32
and backends can be selected via compilation flags.
- Simplified and fixed UBO implementation.
- Added more debug symbols.
- OpenGL debugging now shows the callstack in a fancy way.
- Several internal architectural changes.
- semigroups-0.18 support.
- Extensions are now set per module.
- Updated .cabal documentation.
- Support for
semigroups-0.17
.
- Fixed typo in the hackage documentation.
- Fixed
(:*:)
forUniformBlock
. - Dumped the
Storable
constraint in theuniBlock
function (rank2 function passed to build uniform interfaces tocreateProgram
). - Added
(:.)
,(,)
,(,,)
and(,,,)
intoUniformBlock
.
- Added a new function to the
createProgram
andcreateProgram_
uniform interface builder argument. That function can now be used to retrieveU (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 toU
values.
- Added
UB
, which can be used along withBuffer
to create UBO buffers and pass them to shaders.
- Relaxed lower bound of
linear
to acceptlinear-1.19.*
. That changes should enablelumimance
to be included into stackage. - Changed internal representation of
Region
.
- Added texture arrays:
Texture1DArray
Texture2DArray
CubemapArray
- Added several
Uniform
instances for linear.
- Fixed the indexed render.
- Fixed the vertex attributes being ignored.
- Changed the interface of texels transfer and filling. We dropped the
Foldable
instance and now require aData.Vector.Storable.Vector
for performance purposes.
- Added
MirrorRepeat
constructor toWrap
.
- Fixed prerequisites in README.
- Fixed the
sizeOf
implementation ofa :. b
. - Added
nubDirect
, which can be used to turn direct geometry into indirect geometry.
- Added .gitignore.
V2
,V3
andV4
replaced byvec2
,vec3
andvec4
.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.
- Added Core.Tuple into the export liste of Luminance for easier uses in client code space.
- Fixed Geometry haddock documentation.
- Fixed haddock escaping issues.
- Added
CubeFace
in the interface.
- Enhanced Texture documentation.
- 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!
- Automatically insert GLSL pragmas in shaders.
- Added documentation for RenderCmd.
- Added stdRenderCmd_.
- Added shaderProgramBatch_.
- Fixed a typo in the Graphics.Luminance documentation.
- Added a tutoral in Graphics.Luminance.
- Initial revision. Do not consider this revision as a stable release. It’s experimental. The first stable release will be 1.0.