mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 18:18:06 +02:00
mesa: implement generatemipmap for GL_FLOAT_32_UNSIGNED_INT_24_8_REV
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
b2f087cd87
commit
bde6a04458
1 changed files with 20 additions and 0 deletions
|
|
@ -706,6 +706,17 @@ do_row(GLenum datatype, GLuint comps, GLint srcWidth,
|
|||
}
|
||||
}
|
||||
|
||||
else if (datatype == GL_FLOAT_32_UNSIGNED_INT_24_8_REV && comps == 1) {
|
||||
GLuint i, j, k;
|
||||
const GLfloat *rowA = (const GLfloat *) srcRowA;
|
||||
const GLfloat *rowB = (const GLfloat *) srcRowB;
|
||||
GLfloat *dst = (GLfloat *) dstRow;
|
||||
for (i = j = 0, k = k0; i < (GLuint) dstWidth;
|
||||
i++, j += colStride, k += colStride) {
|
||||
dst[i*2] = (rowA[j*2] + rowA[k*2] + rowB[j*2] + rowB[k*2]) * 0.25F;
|
||||
}
|
||||
}
|
||||
|
||||
else {
|
||||
_mesa_problem(NULL, "bad format in do_row()");
|
||||
}
|
||||
|
|
@ -1341,6 +1352,15 @@ do_row_3D(GLenum datatype, GLuint comps, GLint srcWidth,
|
|||
}
|
||||
}
|
||||
|
||||
else if (datatype == GL_FLOAT_32_UNSIGNED_INT_24_8_REV && comps == 1) {
|
||||
DECLARE_ROW_POINTERS(GLfloat, 2);
|
||||
|
||||
for (i = j = 0, k = k0; i < (GLuint) dstWidth;
|
||||
i++, j += colStride, k += colStride) {
|
||||
FILTER_F_3D(0);
|
||||
}
|
||||
}
|
||||
|
||||
else {
|
||||
_mesa_problem(NULL, "bad format in do_row()");
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue