From: Carsten N. <car...@gm...> - 2014-06-06 08:41:44
|
Hello Victor, On 06/05/2014 04:52 PM, Victor Haefner wrote: > Here a fix that works for me: > > @@ -436,10 +436,11 @@ void > MultiDisplayWindow::serverRender(Window *window, > updateViewport(serverPort, clientPort); > > // set viewport size > - serverPort->setSize(Real32(l),Real32(b),Real32(r),Real32(t)); > + //serverPort->setSize(Real32(l),Real32(b),Real32(r),Real32(t)); > + > serverPort->setSize(Real32(l)/width,Real32(b)/height,Real32(r+1)/width,Real32(t+1)/height); > > // use pixel even if pixel = 1 > - if(serverPort->getLeft() == 1.0) > + /*if(serverPort->getLeft() == 1.0) > serverPort->setLeft(1.0001f); > > if(serverPort->getRight() == 1.0) > @@ -449,7 +450,7 @@ void > MultiDisplayWindow::serverRender(Window *window, > serverPort->setTop(1.0001f); > > if(serverPort->getBottom() == 1.0) > - serverPort->setBottom(1.0001f); > + serverPort->setBottom(1.0001f);*/ > > // calculate tile parameters > deco->setFullWidth ( cright-cleft ); > > Does it look right? The part I commented made the whole viewport black, > I don't know why.. sorry about the mixup earlier regarding the use of ShadowStage vs. ShadowEngine. Viewports are supposed to allow the user to specify the size either in pixels or relative coordinates (values > 1 are considered pixels, values in [0,1] are relative) - that's the reason for the lines you commented, the code wants to use pixels. However, by the time the ShadowEngine is reached, the viewport coordinates should have been normalized, which oddly is not happening in your case on the render servers. I believe that is the real problem here and will see if I find where things go wrong. Thanks for tracking things down to viewport sizes being off! Cheers, Carsten |