[fusion-commits] 3D plugin: Changes to 'master' (1c983928e1ea547861d7997ba797afde065fc6f7)
maniac at server.beryl-project.org
maniac at server.beryl-project.org
Fri Jul 6 07:57:48 CEST 2007
New commits:
commit 1c983928e1ea547861d7997ba797afde065fc6f7
Author: Danny Baumann <dannybaumann at web.de>
Date: Fri Jul 6 07:57:09 2007 +0200
Fix usage of wrong constants.
commit f67aaee2380855e08e7a975884b0bcd5cc3d8721
Author: Danny Baumann <dannybaumann at web.de>
Date: Fri Jul 6 07:19:44 2007 +0200
Re-add multiple output mode handling.
3d.c | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
Modified: fusion/plugins/3d/3d.c
===================================================================
--- fusion/plugins/3d/3d.c
+++ fusion/plugins/3d/3d.c
@@ -92,12 +92,13 @@ typedef struct _tdScreen
float maxZ;
- int currentViewportNum;
float xMove;
Bool currentDifferentResolutions;
int currentScreenNum;
+ int currentViewportNum;
+ int currentMoMode;
tdWindow **lastInViewportList;
int lastInViewportListSize;
@@ -219,16 +220,18 @@ static void tdPreparePaintScreen(CompScreen * screen, int msSinceLastPaint)
!(tdGetManualOnly(screen) &&
(cs->rotationState != RotationManual));
- if (tds->currentViewportNum != screen->hsize
+ if (tds->currentMoMode != cs->moMode
+ || tds->currentViewportNum != screen->hsize
|| tds->currentScreenNum != screen->nOutputDev
|| tds->currentDifferentResolutions != differentResolutions(screen))
{
+ tds->currentMoMode = cs->moMode;
tds->currentViewportNum = screen->hsize;
tds->currentScreenNum = screen->nOutputDev;
tds->currentDifferentResolutions = differentResolutions(screen);
if (tds->currentViewportNum > 2
- && (screen->nOutputDev == 1))
+ && (cs->moMode != CUBE_MOMODE_MULTI || screen->nOutputDev == 1))
tds->xMove =
1.0f / (tan (PI * (tds->currentViewportNum - 2.0f) / (2.0f * tds->currentViewportNum)));
else
@@ -993,6 +996,7 @@ static Bool tdInitScreen(CompPlugin * p, CompScreen * s)
tds->tdWindowExists = FALSE;
+ tds->currentMoMode = CUBE_MOMODE_AUTO;
tds->currentViewportNum = s->hsize;
tds->currentScreenNum = s->nOutputDev;
tds->currentDifferentResolutions = differentResolutions(s);
More information about the commits
mailing list