[Cogl] Release Cogl 1.9.8 (snapshot)

Robert Bragg robert at sixbynine.org
Mon Mar 5 16:08:46 PST 2012


Good news, everyone!

A new Cogl snapshot (1.9.8) is now available:

LATEST NEWS
-------------------------------------------------------------------------------

Cogl 1.9.8
2012-03-05

  • List of changes since Cogl 1.9.6

  » Various Visual Studio build fixes
  » Correctly check for GL_EXT_packed_depth_stencil and support using
    GL_OES_packed_depth_stencil on GLES2
  » Correctly handle pre-multiplied alpha conversions when reading
    back texture data.
  » Added cogl_renderer_{get,set}_driver functions so the underlying
    driver can be chosen programmatically.
  » Revamped the conformance testing framework so that it
    automatically runs every test against GLES2 as well as GL and also
    against all of the pipeline backends and with npot textures
    disabled.
  » Add a conformance test for reading back an RGBA texture as
    alpha-only
  » Added support for converting between all of Cogl's supported pixel
    formats including pre-multiplied alpha conversions.
  » Added conformance tests for converting to and from all of the
    supported formats.
  » Added a public cogl_framebuffer_read_pixels_into_bitmap()
    function which will effective read into a CoglPixelBuffer.
  » CoglPixelBuffer was changed to no longer have associated width,
    height and format information and instead we will rely on
    CoglBitmap to track that informations. The relationship is
    analogous how CoglAttributes relate to CoglAttributeBuffers
    and means for example that a CoglPixelBuffer could now be used
    to hold multiple images.
  » Added public cogl_bitmap_get_{width,height,format,rowstride} api
  » Added a public accessor for the underlying pixel buffer of a
    CoglBitmap.
  » Added various missing cast macros for some buffer objects.
  » Ported the Clutter based test-pixel-buffer test to be standalone.

  • List of bugs fixed since Cogl 1.9.6

    https://bugzilla.gnome.org:

    #666184 - framebuffer: Enable a single depth and stencil buffer for GLES
    #670793 - Don't use cogl_get_draw_framebuffer when flushing pipeline
state
    #671016 - INVALID_ENUM errors in gnome-shell

Many thanks to:

  Neil Roberts
  Chun-wei Fan
  Daniel Korostil
  Martin Srebotnjak
  Matej Urbančič
  Matic Gradišer
  Мирослав Николић

FETCHING THE RELEASE
-------------------------------------------------------------------------------

Tarballs can be downloaded from:

  http://source.clutter-project.org/sources/cogl/1.9/
  http://download.gnome.org/sources/cogl/1.9/

SHA256 Checksum:

27377d2ebe4021d0dc8aad5ff3532c6386bd103ea2b8142152195e0223d1d815
 cogl-1.9.8.tar.bz2

Additionally, a git clone of the source tree:
  git clone git://git.gnome.org/cogl

will include a signed 1.9.8 tag which points to a commit named:
  9fb7b18d10875bb3b5328309ce327005656204cd

which can be verified with:
  git verify-tag 1.9.8

and can be checked out with a command such as:
  git checkout -b build 1.9.8

DESCRIPTION
-------------------------------------------------------------------------------

Cogl is a small open source library for using 3D graphics hardware for
rendering. The API departs from the flat state machine style of OpenGL and
is
designed to make it easy to write orthogonal components that can render
without
stepping on each others toes.

As well as aiming for a nice API, we think having a single library as
opposed
to an API specification like OpenGL has a few advantages too; like being
able to paper over the inconsistencies/bugs of different OpenGL
implementations in a centralized place, not to mention the myriad of OpenGL
extensions. It also means we are in a better position to provide utility
APIs that help software developers since they only need to be implemented
once and there is no risk of inconsistency between implementations.

Having other backends, besides OpenGL, such as drm, Gallium or D3D are
options we are interested in for the future.


REQUIREMENTS
-------------------------------------------------------------------------------

Cogl currently only requires:

  • GLib ≥ 2.28.0
  • OpenGL ≥ 1.3 (or 1.2 + multitexturing), or OpenGL ES 2.0 (or 1.1)
  • GLX, AGL, WGL or an EGL implementation

Cogl also has optional dependencies:

  • GDK-Pixbuf ≥ 2.0
     - for image loading
  • Cairo ≥ 1.10
     - for debugging texture atlasing (debug builds only)

The optional Cogl Pango library requires:
  • Cairo ≥ 1.10
  • PangoCairo ≥ 1.20

On X11, Cogl depends on the following extensions

  • XComposite ≥ 0.4
  • XDamage
  • XExt
  • XFixes ≥ 3

When running with OpenGL, Cogl requires at least version 1.3
or 1.2 with the multitexturing extension. However to build Cogl
you will need the latest GL headers which can be obtained from:

  http://www.khronos.org

If you are building the API reference you will also need:

  • GTK-Doc ≥ 1.13

If you are building the additional documentation you will also need:

  • xsltproc
  • jw (optional, for generating PDFs)

If you are building the Introspection data you will also need:

  • GObject-Introspection ≥ 0.9.5

GObject-Introspection is available from:

  git://git.gnome.org/gobject-introspection

If you want support for profiling Cogl you will also need:

  • UProf ≥ 0.3

UProf is available from:

  git://github.com/rib/UProf.git



DOCUMENTATION
-------------------------------------------------------------------------------

The 1.x API is documented here:
  http://docs.clutter-project.org/docs/cogl/1.9
The experimental 2.0 API is documented here:
  http://docs.clutter-project.org/docs/cogl-2.0-experimental/1.9


RELEASE NOTES
-------------------------------------------------------------------------------
  - This is a development snapshot release so there are not API or ABI
stability
    guarantees at this point for new APIs since the last stable release.

  - This Cogl release exports a 1.x API (For third-party Clutter
    developers to write custom actors) and an experimental 2.0 API which
    allows standalone application development.

  - Internally Clutter depends on the Cogl 2.0 experimental API so we
maintain
    runtime compatibility between the 1.x API and experimental 2.0 APIs,
which
    means developers can mix-and-match their use of the APIs in the same
    process.  API selection is done per-file by including a line like:
'#define
    COGL_ENABLE_EXPERIMENTAL_2_0_API' before including cogl.h or clutter.h.

  - We recommend using the 2.0 API if you don't mind updating your code
once in
    a while as this API evolves and stabilizes. We promise not to break the
2.0
    API during a 1.x stable cycle and hope that will encourage people to
    experiment with it and give critical feedback! For example after
releasing
    1.8, the 2.0 API will be stable for 1.8.1, 1.8.2, 1.8.3 etc, but may
update
    for 1.9/1.10.

  - Because we export the 1.x and 2.0 APIs from one libcogl.so the library
    versioning, and thus ABI, can only be considered as stable as our 2.0
API -
    i.e. during a stable release 1.x cycle.

  - Please report bugs using the Cogl Bugzilla product, at:
    http://bugzilla.gnome.org/enter_bug.cgi?product=cogl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/cogl/attachments/20120306/75c0c87e/attachment.htm>


More information about the Cogl mailing list