Merge commit 'git-svn' into multiple-texture-rectangle

This commit is contained in:
Neil Roberts 2008-12-10 12:25:25 +00:00
commit e21fee39b4
6 changed files with 32 additions and 19 deletions

View File

@ -1,3 +1,23 @@
2008-12-10 Neil Roberts <neil@linux.intel.com>
* clutter/cogl/gl/cogl.c:
* clutter/cogl/gl/cogl-defines.h.in:
* clutter/cogl/gl/cogl-context.h:
* clutter/cogl/common/cogl-mesh.c: Rename the glBufferDataSub
function to glBufferSubData. When calling glXGetProcAddress with
the former Mesa returns a stub dispatch function which will
segfault if you try to use it. With NVIDIA it returns NULL so
_cogl_features_init decides the card doesn't have VBO support.
2008-12-10 Neil Roberts <neil@linux.intel.com>
Bug 1323 - ClutterBehaviorDepth conflicts with other behaviors
* clutter/clutter-behaviour-ellipse.c (actor_apply_knot_foreach):
Don't set the depth if there is no x or y tilt. That way it can
still be used in conjunction with ClutterBehaviourDepth. Thanks to
Tonny Tzeng.
2008-12-08 Emmanuele Bassi <ebassi@linux.intel.com> 2008-12-08 Emmanuele Bassi <ebassi@linux.intel.com>
* clutter/clutter-binding-pool.h: Fix the ActivateFunc * clutter/clutter-binding-pool.h: Fix the ActivateFunc

View File

@ -178,10 +178,13 @@ actor_apply_knot_foreach (ClutterBehaviour *behave,
ClutterActor *actor, ClutterActor *actor,
gpointer data) gpointer data)
{ {
ClutterBehaviourEllipsePrivate *priv
= ((ClutterBehaviourEllipse *) behave)->priv;
knot3d *knot = data; knot3d *knot = data;
clutter_actor_set_position (actor, knot->x, knot->y); clutter_actor_set_position (actor, knot->x, knot->y);
clutter_actor_set_depth (actor, knot->z); if (priv->angle_tilt_x != 0 || priv->angle_tilt_y != 0)
clutter_actor_set_depth (actor, knot->z);
} }
static inline ClutterAngle static inline ClutterAngle

View File

@ -145,7 +145,7 @@
#define glGenBuffers ctx->pf_glGenBuffersARB #define glGenBuffers ctx->pf_glGenBuffersARB
#define glBindBuffer ctx->pf_glBindBufferARB #define glBindBuffer ctx->pf_glBindBufferARB
#define glBufferData ctx->pf_glBufferDataARB #define glBufferData ctx->pf_glBufferDataARB
#define glBufferDataSub ctx->pf_glBufferDataSubARB #define glBufferSubData ctx->pf_glBufferSubDataARB
#define glDeleteBuffers ctx->pf_glDeleteBuffersARB #define glDeleteBuffers ctx->pf_glDeleteBuffersARB
#define glMapBuffer ctx->pf_glMapBufferARB #define glMapBuffer ctx->pf_glMapBufferARB
#define glUnmapBuffer ctx->pf_glUnmapBufferARB #define glUnmapBuffer ctx->pf_glUnmapBufferARB
@ -153,14 +153,6 @@
#define GL_ARRAY_BUFFER GL_ARRAY_BUFFER_ARB #define GL_ARRAY_BUFFER GL_ARRAY_BUFFER_ARB
#endif #endif
#elif defined (HAVE_COGL_GLES)
/* NB: GLES has had VBOs/GLSL since 1.1, so we don't need any defines in
* this case except for glBufferSubData which, just for the fun of it, has a
* different name:
*/
#define glBufferDataSub glBufferSubData
#elif defined (HAVE_COGL_GLES2) #elif defined (HAVE_COGL_GLES2)
#define glVertexPointer cogl_wrap_glVertexPointer #define glVertexPointer cogl_wrap_glVertexPointer
@ -172,8 +164,6 @@
#define glEnableClientState cogl_wrap_glEnableClientState #define glEnableClientState cogl_wrap_glEnableClientState
#define glDisableClientState cogl_wrap_glDisableClientState #define glDisableClientState cogl_wrap_glDisableClientState
#define glBufferDataSub glBufferSubData
#endif #endif
/* /*
@ -979,7 +969,7 @@ upload_multipack_vbo_via_buffer_sub_data (CoglMeshVBO *cogl_vbo)
PAD_FOR_ALIGNMENT (offset, gl_type_size); PAD_FOR_ALIGNMENT (offset, gl_type_size);
GE (glBufferDataSub (GL_ARRAY_BUFFER, GE (glBufferSubData (GL_ARRAY_BUFFER,
offset, offset,
attribute_size, attribute_size,
attribute->u.pointer)); attribute->u.pointer));

View File

@ -121,7 +121,7 @@ typedef struct
COGL_PFNGLGENBUFFERSARBPROC pf_glGenBuffersARB; COGL_PFNGLGENBUFFERSARBPROC pf_glGenBuffersARB;
COGL_PFNGLBINDBUFFERARBPROC pf_glBindBufferARB; COGL_PFNGLBINDBUFFERARBPROC pf_glBindBufferARB;
COGL_PFNGLBUFFERDATAARBPROC pf_glBufferDataARB; COGL_PFNGLBUFFERDATAARBPROC pf_glBufferDataARB;
COGL_PFNGLBUFFERDATASUBARBPROC pf_glBufferDataSubARB; COGL_PFNGLBUFFERSUBDATAARBPROC pf_glBufferSubDataARB;
COGL_PFNGLMAPBUFFERARBPROC pf_glMapBufferARB; COGL_PFNGLMAPBUFFERARBPROC pf_glMapBufferARB;
COGL_PFNGLUNMAPBUFFERARBPROC pf_glUnmapBufferARB; COGL_PFNGLUNMAPBUFFERARBPROC pf_glUnmapBufferARB;
COGL_PFNGLDELETEBUFFERSARBPROC pf_glDeleteBuffersARB; COGL_PFNGLDELETEBUFFERSARBPROC pf_glDeleteBuffersARB;

View File

@ -872,7 +872,7 @@ typedef void
GLenum usage); GLenum usage);
typedef void typedef void
(APIENTRYP COGL_PFNGLBUFFERDATASUBARBPROC) (APIENTRYP COGL_PFNGLBUFFERSUBDATAARBPROC)
(GLenum target, (GLenum target,
GLintptr offset, GLintptr offset,
GLsizeiptr size, GLsizeiptr size,

View File

@ -1107,9 +1107,9 @@ _cogl_features_init ()
ctx->pf_glBufferDataARB = ctx->pf_glBufferDataARB =
(COGL_PFNGLBUFFERDATAARBPROC) (COGL_PFNGLBUFFERDATAARBPROC)
cogl_get_proc_address ("glBufferDataARB"); cogl_get_proc_address ("glBufferDataARB");
ctx->pf_glBufferDataSubARB = ctx->pf_glBufferSubDataARB =
(COGL_PFNGLBUFFERDATASUBARBPROC) (COGL_PFNGLBUFFERSUBDATAARBPROC)
cogl_get_proc_address ("glBufferDataSubARB"); cogl_get_proc_address ("glBufferSubDataARB");
ctx->pf_glDeleteBuffersARB = ctx->pf_glDeleteBuffersARB =
(COGL_PFNGLDELETEBUFFERSARBPROC) (COGL_PFNGLDELETEBUFFERSARBPROC)
cogl_get_proc_address ("glDeleteBuffersARB"); cogl_get_proc_address ("glDeleteBuffersARB");
@ -1122,7 +1122,7 @@ _cogl_features_init ()
if (ctx->pf_glGenBuffersARB if (ctx->pf_glGenBuffersARB
&& ctx->pf_glBindBufferARB && ctx->pf_glBindBufferARB
&& ctx->pf_glBufferDataARB && ctx->pf_glBufferDataARB
&& ctx->pf_glBufferDataSubARB && ctx->pf_glBufferSubDataARB
&& ctx->pf_glDeleteBuffersARB && ctx->pf_glDeleteBuffersARB
&& ctx->pf_glMapBufferARB && ctx->pf_glMapBufferARB
&& ctx->pf_glUnmapBufferARB) && ctx->pf_glUnmapBufferARB)