GNOME Bugzilla – Bug 663628
Make the pipeline backface culling experimental public
Last modified: 2011-11-14 18:54:48 UTC
A few things are already using backface culling via the legacy API such as Mash and ClutterDeformTexture. We should make the internal pipeline API public so they don't have to use the legacy stuff.
Created attachment 200987 [details] [review] pipeline: Make the backface culling experimental public This adds two new experimental public functions to replace the old internal _cogl_pipeline_set_cull_face_state function: void cogl_pipeline_set_cull_face_mode (CoglPipeline *pipeline, CoglPipelineCullFaceMode cull_face_mode); void cogl_pipeline_set_front_winding (CoglPipeline *pipeline, CoglWinding front_winding); There are also the corresponding getters.
Created attachment 200988 [details] [review] test-backface-culling: Use the experimental pipeline API This tweaks the backface culling test to use the experimental pipeline API as well as the legacy API. All of the primitives are now rendered with all 16 combinations of front winding, cull face mode and legacy state. The test to 'draw a regular rectangle' has been removed. I think this initially existed because their were different functions to draw a rectangle with and without texturing. This is no longer the case so it is no longer useful and it's awkward to implement because it need a separate pipeline to disable the texturing.
Pushed as 5369b3c and 18b0ad652c.