From 4f9c33de640a748d020e63c7c85ccbbe341ab7a7 Mon Sep 17 00:00:00 2001 From: number Zero Date: Mon, 5 Nov 2018 15:22:13 +0300 Subject: [PATCH] Disable HW stereo for IrrLicht 1.9 (not supported anymore) --- src/client/render/factory.cpp | 2 ++ src/client/render/pageflip.cpp | 4 ++++ src/client/render/pageflip.h | 6 ++++++ 3 files changed, 12 insertions(+) diff --git a/src/client/render/factory.cpp b/src/client/render/factory.cpp index 3aabc5db..30f9480f 100644 --- a/src/client/render/factory.cpp +++ b/src/client/render/factory.cpp @@ -35,8 +35,10 @@ RenderingCore *createRenderingCore(const std::string &stereo_mode, IrrlichtDevic return new RenderingCoreAnaglyph(device, client, hud); if (stereo_mode == "interlaced") return new RenderingCoreInterlaced(device, client, hud); +#ifdef STEREO_PAGEFLIP_SUPPORTED if (stereo_mode == "pageflip") return new RenderingCorePageflip(device, client, hud); +#endif if (stereo_mode == "sidebyside") return new RenderingCoreSideBySide(device, client, hud); if (stereo_mode == "topbottom") diff --git a/src/client/render/pageflip.cpp b/src/client/render/pageflip.cpp index 5d81a257..f3a21905 100644 --- a/src/client/render/pageflip.cpp +++ b/src/client/render/pageflip.cpp @@ -20,6 +20,8 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "pageflip.h" +#ifdef STEREO_PAGEFLIP_SUPPORTED + void RenderingCorePageflip::initTextures() { hud = driver->addRenderTargetTexture( @@ -53,3 +55,5 @@ void RenderingCorePageflip::resetEye() driver->setRenderTarget(video::ERT_FRAME_BUFFER, false, false, skycolor); RenderingCoreStereo::resetEye(); } + +#endif // STEREO_PAGEFLIP_SUPPORTED diff --git a/src/client/render/pageflip.h b/src/client/render/pageflip.h index cc943705..17711b0f 100644 --- a/src/client/render/pageflip.h +++ b/src/client/render/pageflip.h @@ -21,6 +21,10 @@ with this program; if not, write to the Free Software Foundation, Inc., #pragma once #include "stereo.h" +// The support is absent in 1.9.0 (dropped in r5068) +#if (IRRLICHT_VERSION_MAJOR == 1) && (IRRLICHT_VERSION_MINOR <= 8) +#define STEREO_PAGEFLIP_SUPPORTED + class RenderingCorePageflip : public RenderingCoreStereo { protected: @@ -35,3 +39,5 @@ public: using RenderingCoreStereo::RenderingCoreStereo; void drawAll() override; }; + +#endif