comparison libvo/vo_gl.c @ 27168:166bd251be60

More stride alignment is needed to work reliably on ATI cards :-(
author reimar
date Fri, 04 Jul 2008 21:16:14 +0000
parents 2a7fb43a9976
children 78d837adc71e
comparison
equal deleted inserted replaced
27167:d9b61fc3c5b7 27168:166bd251be60
690 if (mpi->flags & MP_IMGFLAG_READABLE) return VO_FALSE; 690 if (mpi->flags & MP_IMGFLAG_READABLE) return VO_FALSE;
691 if (!gl_buffer) 691 if (!gl_buffer)
692 GenBuffers(1, &gl_buffer); 692 GenBuffers(1, &gl_buffer);
693 BindBuffer(GL_PIXEL_UNPACK_BUFFER, gl_buffer); 693 BindBuffer(GL_PIXEL_UNPACK_BUFFER, gl_buffer);
694 if (ati_hack) 694 if (ati_hack)
695 mpi->width = (mpi->width + 63) & ~63; 695 mpi->width = (mpi->width + 255) & ~255;
696 mpi->stride[0] = mpi->width * mpi->bpp / 8; 696 mpi->stride[0] = mpi->width * mpi->bpp / 8;
697 if (mpi->stride[0] * mpi->height > gl_buffersize) { 697 if (mpi->stride[0] * mpi->height > gl_buffersize) {
698 BufferData(GL_PIXEL_UNPACK_BUFFER, mpi->stride[0] * mpi->height, 698 BufferData(GL_PIXEL_UNPACK_BUFFER, mpi->stride[0] * mpi->height,
699 NULL, GL_DYNAMIC_DRAW); 699 NULL, GL_DYNAMIC_DRAW);
700 gl_buffersize = mpi->stride[0] * mpi->height; 700 gl_buffersize = mpi->stride[0] * mpi->height;