[Haskell-cafe] ANNOUNCE: New OpenGL packages

Ivan Perez ivanperezdominguez at gmail.com
Sat Sep 21 13:36:29 CEST 2013


Thank you very much for the work. It is deeply appreciated.

I'll test all of Keera's programs with these new versions and let you know
if something comes up.

Best regards

Ivan


On 15 September 2013 18:23, Sven Panne <svenpanne at gmail.com> wrote:

> New versions of the OpenGL packages are available on Hackage:
>
>    * OpenGLRaw 1.4.0.0
>    * GLURaw 1.4.0.0
>    * OpenGL 2.9.0.0
>    * GLUT 2.5.0.0
>
> The mid-term goal is to make all these packages conform to the latest
> OpenGL 4.4 specification, and while we're not yet there, this release
> is nevertheless an important stepping stone towards that goal. The
> packages contain a few non-backwards compatible changes, something
> which is never nice for a public API, but it has been necessary:
> OpenGL has come a long way from its initial fixed function pipeline to
> its current form flexible form centered around shaders and buffers.
> Because of this, a few design decisions on the Haskell side were not a
> good fit anymore and simply had to change. Nevertheless, almost all
> changes needed in the applications and libraries using the OpenGL
> packages should be mechanical and straightforward. If not:
> hopengl at haskell.org is the place to get help if needed.
>
> Hopefully the new packages will make it into the next Haskell Platform
> release (2013.4.0.0), at least if I find out how to make it through
> the proposal process... ;-)
>
> Cheers,
>    S.
>
> P.S.: Here a list of the changes for each package:
>
> ======================================================================
> Changes in the OpenGLRaw package
> ======================================================================
>
> * Added support for the following extensions:
>
>      GL_ARB_occlusion_query2
>      GL_ARB_timer_query
>      GL_ARB_draw_indirect
>      GL_ARB_gpu_shader5
>      GL_ARB_tesselllation_shader
>      GL_ARB_transform_feedback3
>      GL_ARB_ES2_compatibility
>      GL_ARB_get_program_binary
>      GL_ARB_separate_shader_objects
>      GL_ARB_shader_atomic_counters
>      GL_ARB_compute_shader
>      GL_ARB_ES3_compatibility
>      GL_ARB_framebuffer_no_attachments
>      GL_ARB_shader_storage_buffer_object
>      GL_ARB_query_buffer_object
>
> * Added GLfixed type from OpenGL 4.1.
>
> * Moved GLhandle type to
> Graphics.Rendering.OpenGL.Raw.ARB.ShaderObjects where it belongs and
> fixed its representation on Mac OS X.
>
> * Added new Graphics.Rendering.OpenGL.Raw.Type module which exports
> all GL types. Core31 and Core32 export only their respective subset
> now.
>
> * Correctly typed bitfield tokens as, well, GLbitfield instead of GLenum.
>
> * Consistently use ‘Ptr a’ for ‘void*’ which are not opaque.
>
> * Use ccall instead of stdcall on x86_64-windows.
>
> * Use the OpenGLES framework on iOS.
>
> ======================================================================
> Changes in the GLURaw package
> ======================================================================
>
> * Use ccall instead of stdcall on x86_64-windows.
>
> * Use the OpenGLES framework on iOS.
>
> ======================================================================
> Changes in the OpenGL package
> ======================================================================
>
> * Added sync object support.
>
> * Added full support for OpenGL 4.4 query objects, extending and
> changing the previous query object API a bit.
>
> * Split ObjectName class into ObjectName + GeneratableObjectName
> classes. Added single-name variants deleteObjectName and
> genObjectName, they are a very common use case.
>
> * Made BufferObject and TextureObject abstract. Now all GL objects
> names are abstract and have to be explicitly generated. The only
> exception is DisplayList, which is required to be non-abstract by the
> spec.
>
> * Shader is not a class anymore, but a data type with an ObjectName
> instance and a creation action. Added ShaderType and shaderType.
>
> * Added partial support for tessellation/geometry/compute shaders.
>
> * Program is not a GeneratableObjectName, but has a createProgram
> action now. Added attachShader and detachShader for incremental
> changes.
>
> * Deprecated shaderSource and added shaderSourceBS instead. Using
> ByteString is more efficient and forces the caller to think about
> encodings, e.g. via Data.Text.Encoding.
>
> * Added support for shader/program binaries and shader precision queries.
>
> * Revamped texture targets, adding partial support for texture buffer
> objects and texture arrays.
>
> * OpenGL 3.1 deprecated separate polygon draw modes, so use
> GL_FRONT_AND_BACK internally in polygonMode whenever possible.
>
> * Added missing Eq/Ord/Show instances for lots of data types.
>
> * Simplified TransformFeedbackVaryings API, making it a bit more
> similar to the one for activeAttribs and activeUniforms.
>
> * Exported ContextProfile’.
>
> * Renamed BlitFramebufferMask (to BlitBuffer) and its constructors.
>
> * Renamed BufferRangeAccessBit (to MapBufferUsage) and its constructors
>
> * Removed currentMatrix, genLists, deleteLists and isList, they have
> been deprecated for ages.
>
> * Full internal support for UTF-8.
>
> * Do not expose internal #hidden modules.
>
> * Lots of Haddock fixes and improvements.
>
> * Renamed IndexedTransformFeedbackBuffer to IndexedTransformFeedbackBuffer.
>
> * Fixed clip plane query.
>
> ======================================================================
> Changes in the GLUT package
> ======================================================================
>
> * Deprecated the misspelled ContinueExectuion constructor and added a
> new one correctly called ContinueExecution instead.
>
> * Use ccall instead of stdcall on x86_64-windows.
>
> * Do not expose internal #hidden modules.
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130921/eb094aad/attachment.htm>


More information about the Haskell-Cafe mailing list