[Bf-blender-cvs] [7f3c420] multiview: placeholders for all the stereo 3d image formats
Dalai Felinto
noreply at git.blender.org
Fri Aug 8 17:40:23 CEST 2014
Commit: 7f3c4200aa4003d3b683342a79fda7e0ad9691f9
Author: Dalai Felinto
Date: Fri Aug 8 15:50:55 2014 +0200
Branches: multiview
https://developer.blender.org/rB7f3c4200aa4003d3b683342a79fda7e0ad9691f9
placeholders for all the stereo 3d image formats
===================================================================
M source/blender/imbuf/intern/stereoimbuf.c
===================================================================
diff --git a/source/blender/imbuf/intern/stereoimbuf.c b/source/blender/imbuf/intern/stereoimbuf.c
index cad8bec..7bb2ebb 100644
--- a/source/blender/imbuf/intern/stereoimbuf.c
+++ b/source/blender/imbuf/intern/stereoimbuf.c
@@ -69,7 +69,7 @@ static void imb_stereo_anaglyph(enum eStereoAnaglyphType UNUSED(mode), ImBuf *le
const float *rect_right= right->rect_float;
float *rect_to = r_ibuf->rect_float;
- /* always RGBA input */
+ /* always RGBA input/output */
for (y = 0; y < height; y++) {
float *to = rect_to + stride_to * y * 4;
const float *from_left = rect_left + stride_from * y * 4;
@@ -88,7 +88,7 @@ static void imb_stereo_anaglyph(enum eStereoAnaglyphType UNUSED(mode), ImBuf *le
const uchar *rect_right= (uchar *)right->rect;
uchar *rect_to = (uchar *)r_ibuf->rect;
- /* always RGBA input */
+ /* always RGBA input/output */
for (y = 0; y < height; y++) {
uchar *to = rect_to + stride_to * y * 4;
uchar *from_left = rect_left + stride_from * y * 4;
@@ -104,6 +104,21 @@ static void imb_stereo_anaglyph(enum eStereoAnaglyphType UNUSED(mode), ImBuf *le
}
}
+static void imb_stereo_interlace(enum eStereoInterlaceType UNUSED(mode), const bool UNUSED(swap), ImBuf *UNUSED(left), ImBuf *UNUSED(right), bool UNUSED(is_float), ImBuf *UNUSED(r_ibuf))
+{
+ BLI_assert(false);
+}
+
+static void imb_stereo_sidebyside(const bool UNUSED(crosseyed), ImBuf *UNUSED(left), ImBuf *UNUSED(right), bool UNUSED(is_float), ImBuf *UNUSED(r_ibuf))
+{
+ BLI_assert(false);
+}
+
+static void imb_stereo_topbottom(ImBuf *UNUSED(left), ImBuf *UNUSED(right), bool UNUSED(is_float), ImBuf *UNUSED(r_ibuf))
+{
+ BLI_assert(false);
+}
+
static void imb_stereo_dimensions(enum eStereoDisplayMode mode, ImBuf *ibuf, size_t *width, size_t *height)
{
switch (mode) {
@@ -155,10 +170,13 @@ ImBuf *IMB_stereoImBuf(ImageFormatData *im_format, ImBuf *left, ImBuf *right)
case S3D_DISPLAY_BLURAY:
break;
case S3D_DISPLAY_INTERLACE:
+ imb_stereo_interlace(s3d->interlace_type, (s3d->flag & S3D_INTERLACE_SWAP), left, right, is_float, r_ibuf);
break;
case S3D_DISPLAY_SIDEBYSIDE:
+ imb_stereo_sidebyside((s3d->flag & S3D_SIDEBYSIDE_CROSSEYED), left, right, is_float, r_ibuf);
break;
case S3D_DISPLAY_TOPBOTTOM:
+ imb_stereo_topbottom(left, right, is_float, r_ibuf);
break;
default:
break;
More information about the Bf-blender-cvs
mailing list