[Cogl] Release Cogl 1.17.2 (snapshot)
Neil Roberts
neil at linux.intel.com
Mon Jan 20 09:04:34 PST 2014
Good news, everyone!
A new Cogl snapshot (1.17.2) is now available:
LATEST NEWS
-------------------------------------------------------------------------------
Cogl 1.17.2 2014-01-20
• List of changes since Cogl 1.16.0
» Textures are now allocated lazily. This means the textures can
optionally be configured with extra API before data is uploaded to
them.
» The internal format for textures has been replaced with a simpler
property to just set the number of components that will be
required when sampling.
» Depth writing can now be disabled per-framebuffer as well as on
the CoglPipeline.
» The interface typedefs such as CoglTexture, CoglFramebuffer and
CoglBitmap etc are now defined as void so that it is no longer
necessary to use type-cast macros when passing them to interface
methods.
» YV12/I420 support in cogl-gst is fixed.
» Added support for red-green 2-component textures.
» The cache of GLSL shaders is now garbage collected when it gets
too large.
» cogl_framebuffer_push_path_clip is fixed.
» cogl-path is now split out into a separate library.
» New function cogl_wayland_texture_set_region_from_shm_buffer to
update a texture from a Wayland SHM bufffer.
» The pkg-config files for cogl-gst and cogl-gles2 have new more
consistent names.
• Gnome Bugzilla bugs closed since 1.16.0:
#706808 - "Unable to locate required kms libraries" message is really
uninformative
#709827 - Add API to control per-FB depth writing
#710135 - Fix build on big endian
#710926 - Build fails without declaration of wl_resource
#712562 - Fixes for the journal
#712830 - Add COGL_PIXEL_FORMAT_U_V
#719546 - cogl-framebuffer: Fix a potential NULL pointer dereference
#719582 - cogl-framebuffer: Don't mark the clear clip dirty from the
journal
#720287 - cogl-path: Export cogl_clip_push_from_path
#721450 - Re-enable swap_region for mesa 10.1+ llvmpipe / swrast
Many thanks to:
Robert Bragg
Jasper St. Pierre
Adel Gadllah
Lionel Landwerlin
Chun-wei Fan
Colin Walters
Emilio Pozuelo Monfort
Hans Petter Jansson
FETCHING THE RELEASE
-------------------------------------------------------------------------------
Tarballs can be downloaded from:
http://download.gnome.org/sources/cogl/1.17/
SHA256 Checksum:
f1a271630527b893c6c2760aad34f04853aa047e5d17d601214d613bf4bc375d
cogl-1.17.2.tar.xz
Additionally, a git clone of the source tree:
git clone git://git.gnome.org/cogl
will include a signed 1.17.2 tag which points to a commit named:
ae14021cdfd0d7768fe5d748d652efbdf34ffbe4
which can be verified with:
git verify-tag 1.17.2
and can be checked out with a command such as:
git checkout -b build 1.17.2
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:
• 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:
• GLib ≥ 2.32.0
- for gtype integration
• 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
The optional Cogl GStreamer library requires:
• GStreamer 1.0
On X11, Cogl depends on the following extensions
• XComposite ≥ 0.4
• XDamage
• XExt
• XFixes ≥ 3
For the Wayland backend, Cogl requires:
• Wayland ≥ 1.0.0
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 stable API is documented here:
http://developer.gnome.org/cogl/stable/
The 1.x development API is documented here:
http://developer.gnome.org/cogl/1.17
The experimental 2.0 API is documented here:
http://cogl3d.org/cogl2-reference/
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
More information about the Cogl
mailing list