mesa: remove calls to _mesa_adjust_image_for_convolution(), use texImage fields
The texImage->Width/Height fields will have the post-convolution width/height.
This commit is contained in:
parent
95c04cccfe
commit
ea6ddcbe0e
|
@ -2988,10 +2988,13 @@ choose_texture_format(GLcontext *ctx, struct gl_texture_image *texImage,
|
|||
|
||||
|
||||
|
||||
/*
|
||||
/**
|
||||
* This is the software fallback for Driver.TexImage1D()
|
||||
* and Driver.CopyTexImage1D().
|
||||
* \sa _mesa_store_teximage2d()
|
||||
* Note that the width may not be the actual texture width since it may
|
||||
* be changed by convolution w/ GL_REDUCE. The texImage->Width field will
|
||||
* have the actual texture size.
|
||||
*/
|
||||
void
|
||||
_mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
|
||||
|
@ -3002,21 +3005,16 @@ _mesa_store_teximage1d(GLcontext *ctx, GLenum target, GLint level,
|
|||
struct gl_texture_object *texObj,
|
||||
struct gl_texture_image *texImage)
|
||||
{
|
||||
GLint postConvWidth = width;
|
||||
GLint sizeInBytes;
|
||||
(void) border;
|
||||
|
||||
if (_mesa_is_color_format(internalFormat)) {
|
||||
_mesa_adjust_image_for_convolution(ctx, 1, &postConvWidth, NULL);
|
||||
}
|
||||
|
||||
choose_texture_format(ctx, texImage, 1, format, type, internalFormat);
|
||||
|
||||
/* allocate memory */
|
||||
if (texImage->IsCompressed)
|
||||
sizeInBytes = texImage->CompressedSize;
|
||||
else
|
||||
sizeInBytes = postConvWidth * texImage->TexFormat->TexelBytes;
|
||||
sizeInBytes = texImage->Width * texImage->TexFormat->TexelBytes;
|
||||
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
|
||||
if (!texImage->Data) {
|
||||
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage1D");
|
||||
|
@ -3076,15 +3074,9 @@ _mesa_store_teximage2d(GLcontext *ctx, GLenum target, GLint level,
|
|||
struct gl_texture_object *texObj,
|
||||
struct gl_texture_image *texImage)
|
||||
{
|
||||
GLint postConvWidth = width, postConvHeight = height;
|
||||
GLint texelBytes, sizeInBytes;
|
||||
(void) border;
|
||||
|
||||
if (_mesa_is_color_format(internalFormat)) {
|
||||
_mesa_adjust_image_for_convolution(ctx, 2, &postConvWidth,
|
||||
&postConvHeight);
|
||||
}
|
||||
|
||||
choose_texture_format(ctx, texImage, 2, format, type, internalFormat);
|
||||
|
||||
texelBytes = texImage->TexFormat->TexelBytes;
|
||||
|
@ -3093,7 +3085,7 @@ _mesa_store_teximage2d(GLcontext *ctx, GLenum target, GLint level,
|
|||
if (texImage->IsCompressed)
|
||||
sizeInBytes = texImage->CompressedSize;
|
||||
else
|
||||
sizeInBytes = postConvWidth * postConvHeight * texelBytes;
|
||||
sizeInBytes = texImage->Width * texImage->Height * texelBytes;
|
||||
texImage->Data = _mesa_alloc_texmemory(sizeInBytes);
|
||||
if (!texImage->Data) {
|
||||
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glTexImage2D");
|
||||
|
|
Loading…
Reference in New Issue