[Bf-blender-cvs] [fdf24d8] KTX_support: Merge branch 'master' into KTX_support
Antony Riakiotakis
noreply at git.blender.org
Fri Aug 14 15:19:06 CEST 2015
Commit: fdf24d8899e1d8704cea97ce334c5c642681c4ec
Author: Antony Riakiotakis
Date: Fri Aug 14 15:18:46 2015 +0200
Branches: KTX_support
https://developer.blender.org/rBfdf24d8899e1d8704cea97ce334c5c642681c4ec
Merge branch 'master' into KTX_support
Conflicts:
source/blender/blenkernel/BKE_image.h
source/blender/blenkernel/intern/dynamicpaint.c
source/blender/blenkernel/intern/image.c
source/blender/blenkernel/intern/movieclip.c
source/blender/blenkernel/intern/sequencer.c
source/blender/editors/space_image/image_buttons.c
source/blender/editors/space_image/image_ops.c
source/blender/gpu/intern/gpu_draw.c
source/blender/imbuf/IMB_imbuf_types.h
source/blender/imbuf/intern/allocimbuf.c
source/blender/imbuf/intern/cineon/cineon_dpx.c
source/blender/imbuf/intern/jp2.c
source/blender/imbuf/intern/jpeg.c
source/blender/imbuf/intern/openexr/openexr_api.cpp
source/blender/imbuf/intern/png.c
source/blender/imbuf/intern/targa.c
source/blender/imbuf/intern/tiff.c
source/blender/makesrna/intern/rna_image.c
source/gameengine/Ketsji/BL_Texture.cpp
===================================================================
===================================================================
diff --cc source/blender/blenkernel/intern/image.c
index 87e1db6,ef760f2..7f9a35e
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@@ -1208,24 -1207,26 +1207,25 @@@ void BKE_image_all_free_anim_ibufs(int
/* *********** READ AND WRITE ************** */
--
- int BKE_image_imtype_to_ftype(const char imtype, int *r_options)
+ int BKE_image_imtype_to_ftype(const char imtype, ImbFormatOptions *r_options)
{
+ memset(r_options, 0, sizeof(*r_options));
+
if (imtype == R_IMF_IMTYPE_TARGA)
- return TGA;
+ return IMB_FTYPE_TGA;
else if (imtype == R_IMF_IMTYPE_RAWTGA) {
- *r_options = RAWTGA;
- return TGA;
+ r_options->flag = RAWTGA;
+ return IMB_FTYPE_TGA;
}
else if (imtype == R_IMF_IMTYPE_IRIS)
- return IMAGIC;
+ return IMB_FTYPE_IMAGIC;
#ifdef WITH_HDR
else if (imtype == R_IMF_IMTYPE_RADHDR)
- return RADHDR;
+ return IMB_FTYPE_RADHDR;
#endif
else if (imtype == R_IMF_IMTYPE_PNG) {
- *r_options = 15;
- return PNG;
+ r_options->quality = 15;
+ return IMB_FTYPE_PNG;
}
#ifdef WITH_DDS
else if (imtype == R_IMF_IMTYPE_DDS)
@@@ -1292,13 -1293,9 +1292,13 @@@ char BKE_image_ftype_to_imtype(const in
return R_IMF_IMTYPE_TARGA;
}
#ifdef WITH_OPENJPEG
- else if (ftype == JP2)
+ else if (ftype == IMB_FTYPE_JP2)
return R_IMF_IMTYPE_JP2;
#endif
+#ifdef WITH_KTX
- else if (ftype == KTX)
++ else if (ftype == IMB_FTYPE_KTX)
+ return R_IMF_IMTYPE_KTX;
+#endif
else
return R_IMF_IMTYPE_JPEG90;
}
@@@ -1701,14 -1694,9 +1704,14 @@@ void BKE_imbuf_to_image_format(struct I
}
#endif
+#ifdef WITH_KTX
- else if (ftype == KTX) {
++ else if (ftype == IMB_FTYPE_KTX) {
+ im_format->imtype = R_IMF_IMTYPE_KTX;
+ }
+#endif
else {
im_format->imtype = R_IMF_IMTYPE_JPEG90;
- im_format->quality = custom_flags & ~JPG_MSK;
+ im_format->quality = quality;
}
/* planes */
@@@ -2288,11 -2290,6 +2305,11 @@@ void BKE_imbuf_write_prepare(ImBuf *ibu
BLI_assert(!"Unsupported jp2 codec was specified in im_format->jp2_codec");
}
#endif
+#ifdef WITH_KTX
+ else if (imtype == R_IMF_IMTYPE_KTX) {
- ibuf->ftype = KTX;
++ ibuf->ftype = IMB_FTYPE_KTX;
+ }
+#endif
else {
/* R_IMF_IMTYPE_JPEG90, etc. default we save jpegs */
if (quality < 10) quality = 90;
diff --cc source/blender/imbuf/IMB_imbuf_types.h
index 1d5e315,08ce9c0..a1c628d
--- a/source/blender/imbuf/IMB_imbuf_types.h
+++ b/source/blender/imbuf/IMB_imbuf_types.h
@@@ -95,12 -92,8 +92,12 @@@ enum eImbTypes
#endif
#ifdef WITH_DDS
- DDS,
+ IMB_FTYPE_DDS,
#endif
+
+#ifdef WITH_KTX
- KTX,
++ IMB_FTYPE_KTX,
+#endif
};
/* ibuf->foptions flag, type specific options.
diff --cc source/blender/imbuf/intern/IMB_filetype.h
index df000c2,2bd7cbc..70e3b56
--- a/source/blender/imbuf/intern/IMB_filetype.h
+++ b/source/blender/imbuf/intern/IMB_filetype.h
@@@ -121,13 -118,5 +118,13 @@@ void imb_loadtiletiff(struct ImBuf *ibu
int tx, int ty, unsigned int *rect);
int imb_savetiff(struct ImBuf *ibuf, const char *name, int flags);
+/* ktx */
+void imb_initktx(void);
- int check_ktx(unsigned char *mem);
++int check_ktx(const unsigned char *mem);
+int imb_is_a_ktx(const char *filename);
- struct ImBuf *imb_loadktx(unsigned char *mem, size_t size, int flags, char colorspace[]);
++struct ImBuf *imb_loadktx(const unsigned char *mem, size_t size, int flags, char *colorspace);
+int imb_savektx(struct ImBuf *ibuf, const char *name, int flags);
+
+
#endif /* __IMB_FILETYPE_H__ */
diff --cc source/blender/imbuf/intern/filetype.c
index 9a48410,3d3e8a0..b9c05a2
--- a/source/blender/imbuf/intern/filetype.c
+++ b/source/blender/imbuf/intern/filetype.c
@@@ -62,36 -62,33 +62,36 @@@ static int imb_ftype_iris(const ImFileT
}
const ImFileType IMB_FILE_TYPES[] = {
- {NULL, NULL, imb_is_a_jpeg, NULL, imb_ftype_default, imb_load_jpeg, NULL, imb_savejpeg, NULL, 0, JPG, COLOR_ROLE_DEFAULT_BYTE},
- {NULL, NULL, imb_is_a_png, NULL, imb_ftype_default, imb_loadpng, NULL, imb_savepng, NULL, 0, PNG, COLOR_ROLE_DEFAULT_BYTE},
- {NULL, NULL, imb_is_a_bmp, NULL, imb_ftype_default, imb_bmp_decode, NULL, imb_savebmp, NULL, 0, BMP, COLOR_ROLE_DEFAULT_BYTE},
- {NULL, NULL, imb_is_a_targa, NULL, imb_ftype_default, imb_loadtarga, NULL, imb_savetarga, NULL, 0, TGA, COLOR_ROLE_DEFAULT_BYTE},
- {NULL, NULL, imb_is_a_iris, NULL, imb_ftype_iris, imb_loadiris, NULL, imb_saveiris, NULL, 0, IMAGIC, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_jpeg, NULL, imb_ftype_default, imb_load_jpeg, NULL, imb_savejpeg, NULL, 0, IMB_FTYPE_JPG, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_png, NULL, imb_ftype_default, imb_loadpng, NULL, imb_savepng, NULL, 0, IMB_FTYPE_PNG, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_bmp, NULL, imb_ftype_default, imb_bmp_decode, NULL, imb_savebmp, NULL, 0, IMB_FTYPE_BMP, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_targa, NULL, imb_ftype_default, imb_loadtarga, NULL, imb_savetarga, NULL, 0, IMB_FTYPE_TGA, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_iris, NULL, imb_ftype_iris, imb_loadiris, NULL, imb_saveiris, NULL, 0, IMB_FTYPE_IMAGIC, COLOR_ROLE_DEFAULT_BYTE},
#ifdef WITH_CINEON
- {NULL, NULL, imb_is_dpx, NULL, imb_ftype_default, imb_load_dpx, NULL, imb_save_dpx, NULL, IM_FTYPE_FLOAT, DPX, COLOR_ROLE_DEFAULT_FLOAT},
- {NULL, NULL, imb_is_cineon, NULL, imb_ftype_default, imb_load_cineon, NULL, imb_save_cineon, NULL, IM_FTYPE_FLOAT, CINEON, COLOR_ROLE_DEFAULT_FLOAT},
+ {NULL, NULL, imb_is_dpx, NULL, imb_ftype_default, imb_load_dpx, NULL, imb_save_dpx, NULL, IM_FTYPE_FLOAT, IMB_FTYPE_DPX, COLOR_ROLE_DEFAULT_FLOAT},
+ {NULL, NULL, imb_is_cineon, NULL, imb_ftype_default, imb_load_cineon, NULL, imb_save_cineon, NULL, IM_FTYPE_FLOAT, IMB_FTYPE_CINEON, COLOR_ROLE_DEFAULT_FLOAT},
#endif
#ifdef WITH_TIFF
- {imb_inittiff, NULL, imb_is_a_tiff, NULL, imb_ftype_default, imb_loadtiff, NULL, imb_savetiff, imb_loadtiletiff, 0, TIF, COLOR_ROLE_DEFAULT_BYTE},
+ {imb_inittiff, NULL, imb_is_a_tiff, NULL, imb_ftype_default, imb_loadtiff, NULL, imb_savetiff, imb_loadtiletiff, 0, IMB_FTYPE_TIF, COLOR_ROLE_DEFAULT_BYTE},
#endif
#ifdef WITH_HDR
- {NULL, NULL, imb_is_a_hdr, NULL, imb_ftype_default, imb_loadhdr, NULL, imb_savehdr, NULL, IM_FTYPE_FLOAT, RADHDR, COLOR_ROLE_DEFAULT_FLOAT},
+ {NULL, NULL, imb_is_a_hdr, NULL, imb_ftype_default, imb_loadhdr, NULL, imb_savehdr, NULL, IM_FTYPE_FLOAT, IMB_FTYPE_RADHDR, COLOR_ROLE_DEFAULT_FLOAT},
#endif
#ifdef WITH_OPENEXR
- {imb_initopenexr, NULL, imb_is_a_openexr, NULL, imb_ftype_default, imb_load_openexr, NULL, imb_save_openexr, NULL, IM_FTYPE_FLOAT, OPENEXR, COLOR_ROLE_DEFAULT_FLOAT},
+ {imb_initopenexr, NULL, imb_is_a_openexr, NULL, imb_ftype_default, imb_load_openexr, NULL, imb_save_openexr, NULL, IM_FTYPE_FLOAT, IMB_FTYPE_OPENEXR, COLOR_ROLE_DEFAULT_FLOAT},
#endif
#ifdef WITH_OPENJPEG
- {NULL, NULL, imb_is_a_jp2, NULL, imb_ftype_default, imb_jp2_decode, NULL, imb_savejp2, NULL, IM_FTYPE_FLOAT, JP2, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_jp2, NULL, imb_ftype_default, imb_jp2_decode, NULL, imb_savejp2, NULL, IM_FTYPE_FLOAT, IMB_FTYPE_JP2, COLOR_ROLE_DEFAULT_BYTE},
#endif
#ifdef WITH_DDS
- {NULL, NULL, imb_is_a_dds, NULL, imb_ftype_default, imb_load_dds, NULL, NULL, NULL, 0, DDS, COLOR_ROLE_DEFAULT_BYTE},
+ {NULL, NULL, imb_is_a_dds, NULL, imb_ftype_default, imb_load_dds, NULL, NULL, NULL, 0, IMB_FTYPE_DDS, COLOR_ROLE_DEFAULT_BYTE},
#endif
#ifdef WITH_OPENIMAGEIO
- {NULL, NULL, NULL, imb_is_a_photoshop, imb_ftype_default, NULL, imb_load_photoshop, NULL, NULL, IM_FTYPE_FLOAT, PSD, COLOR_ROLE_DEFAULT_FLOAT},
+ {NULL, NULL, NULL, imb_is_a_photoshop, imb_ftype_default, NULL, imb_load_photoshop, NULL, NULL, IM_FTYPE_FLOAT, IMB_FTYPE_PSD, COLOR_ROLE_DEFAULT_FLOAT},
#endif
+#ifdef WITH_KTX
- {imb_initktx, NULL, check_ktx, imb_is_a_ktx, imb_ftype_default, imb_loadktx, NULL, imb_savektx, NULL, 0, KTX, COLOR_ROLE_DEFAULT_BYTE},
++ {imb_initktx, NULL, check_ktx, imb_is_a_ktx, imb_ftype_default, imb_loadktx, NULL, imb_savektx, NULL, 0, IMB_FTYPE_KTX, COLOR_ROLE_DEFAULT_BYTE},
+#endif
{NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0}
};
diff --cc source/blender/imbuf/intern/jp2.c
index f3b5ade,570ca5b..00cc7ca
--- a/source/blender/imbuf/intern/jp2.c
+++ b/source/blender/imbuf/intern/jp2.c
@@@ -231,12 -237,12 +237,12 @@@ struct ImBuf *imb_jp2_decode(const unsi
return NULL;
}
- ibuf->ftype = JP2;
+ ibuf->ftype = IMB_FTYPE_JP2;
if (is_jp2)
- ibuf->foptions |= JP2_JP2;
+ ibuf->foptions.flag |= JP2_JP2;
else
- ibuf->foptions |= JP2_J2K;
-
+ ibuf->foptions.flag |= JP2_J2K;
-
++
if (use_float) {
float *rect_float = ibuf->rect_float;
@@@ -586,8 -597,8 +597,8 @@@ static opj_image_t *ibuftoimage(ImBuf *
chanel_colormanage_cb = linearrgb_to_srgb;
}
- if (ibuf->foptions & JP2_CINE) {
-
+ if (ibuf->foptions.flag & JP2_CINE) {
-
++
if (ibuf->x == 4096 || ibuf->y == 2160)
parameters->cp_cinema = CINEMA4K_24;
else {
diff --cc source/blender/imbuf/intern/ktx.c
index 7da9227,0000000..9976ec4
mode 100644,000000..100644
--- a/source/blender/imbuf/intern/ktx.c
+++ b/source/blender/imbuf/intern/ktx.c
@@@ -1,136 -1,0 +1,136 @@@
+/*
+ * ***** BEGIN GPL LICENSE BLOCK *****
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
+ * All rights reserved.
+ *
+ * The Original Code is: all of this file.
+ *
+ * Contributor(s): none y
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list