mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-09 08:20:12 +01:00
mesa: add _mesa_unpack_bptc-function
Acked-by: Marek Olšák <marek.olsak@amd.com> Acked-by: Soroush Kashani <soroush.kashani@imgtec.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18012>
This commit is contained in:
parent
529e70271f
commit
2b7dfd8de1
2 changed files with 43 additions and 0 deletions
|
|
@ -26,6 +26,8 @@
|
|||
* GL_ARB_texture_compression_bptc support.
|
||||
*/
|
||||
|
||||
#define BPTC_BLOCK_DECODE
|
||||
|
||||
#include <stdbool.h>
|
||||
#include "texcompress.h"
|
||||
#include "texcompress_bptc.h"
|
||||
|
|
@ -241,3 +243,35 @@ _mesa_texstore_bptc_rgb_unsigned_float(TEXSTORE_PARAMS)
|
|||
srcAddr, srcPacking,
|
||||
false /* unsigned */);
|
||||
}
|
||||
|
||||
void
|
||||
_mesa_unpack_bptc(uint8_t *dst_row,
|
||||
unsigned dst_stride,
|
||||
const uint8_t *src_row,
|
||||
unsigned src_stride,
|
||||
unsigned src_width,
|
||||
unsigned src_height,
|
||||
mesa_format format)
|
||||
{
|
||||
switch (format) {
|
||||
case MESA_FORMAT_BPTC_RGB_SIGNED_FLOAT:
|
||||
decompress_rgb_float(src_width, src_height,
|
||||
src_row, src_stride,
|
||||
(float *)dst_row, dst_stride,
|
||||
true);
|
||||
break;
|
||||
|
||||
case MESA_FORMAT_BPTC_RGB_UNSIGNED_FLOAT:
|
||||
decompress_rgb_float(src_width, src_height,
|
||||
src_row, src_stride,
|
||||
(float *)dst_row, dst_stride,
|
||||
false);
|
||||
break;
|
||||
|
||||
default:
|
||||
decompress_rgba_unorm(src_width, src_height,
|
||||
src_row, src_stride,
|
||||
dst_row, dst_stride);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -41,4 +41,13 @@ _mesa_texstore_bptc_rgb_unsigned_float(TEXSTORE_PARAMS);
|
|||
compressed_fetch_func
|
||||
_mesa_get_bptc_fetch_func(mesa_format format);
|
||||
|
||||
void
|
||||
_mesa_unpack_bptc(uint8_t *dst_row,
|
||||
unsigned dst_stride,
|
||||
const uint8_t *src_row,
|
||||
unsigned src_stride,
|
||||
unsigned src_width,
|
||||
unsigned src_height,
|
||||
mesa_format format);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue