_SIO2window->scl filled incorrectly
_SIO2window->scl filled incorrectly
Hi,
I think _SIO2window->scl is supposed to contain the width and height of the viewport. However, the way it is filled in sio2WindowUpdateViewport is only correct if the viewport is at 0,0:
This code assumes that mat_viewport[2] is the right x coordinate and mat_viewport[3] the upper y coordinate of the viewport, but it really is the width and height, respectively. I am trying to render a second, smaller viewport on top of my main full-screen one, and this bug leads to a messed up aspect.
I replaced the two lines with
The aspect looks okay now. However, seeing how _SIO2window->scl is used in sio2, it seems it is sometimes used as width and height (e.g. in sio2CameraSetPerspective) and sometimes as the upper right viewport coordinates (e.g. sio2WindowEnter2D, since glOrthof expects the upper right coordinates).
I saw that you have used a viewport in your pretty cool freestyle engine demo, so you must have come across these issues already. Did you solve them in 1.3.6? Do you have an up-to-date list of changes for 1.3.6? This would save time, as tracking down such things can be quite lengthy.
I think _SIO2window->scl is supposed to contain the width and height of the viewport. However, the way it is filled in sio2WindowUpdateViewport is only correct if the viewport is at 0,0:
- Code:
_SIO2window->scl->x = ( float )( _SIO2window->mat_viewport[ 2 ] - _SIO2window->mat_viewport[ 0 ] );
_SIO2window->scl->y = ( float )( _SIO2window->mat_viewport[ 3 ] - _SIO2window->mat_viewport[ 1 ] );
This code assumes that mat_viewport[2] is the right x coordinate and mat_viewport[3] the upper y coordinate of the viewport, but it really is the width and height, respectively. I am trying to render a second, smaller viewport on top of my main full-screen one, and this bug leads to a messed up aspect.
I replaced the two lines with
- Code:
_SIO2window->scl->x = ( float ) _SIO2window->mat_viewport[ 2 ];
_SIO2window->scl->y = ( float ) _SIO2window->mat_viewport[ 3 ];
- Code:
_SIO2window->scl->x = _w;
_SIO2window->scl->y = _h;
The aspect looks okay now. However, seeing how _SIO2window->scl is used in sio2, it seems it is sometimes used as width and height (e.g. in sio2CameraSetPerspective) and sometimes as the upper right viewport coordinates (e.g. sio2WindowEnter2D, since glOrthof expects the upper right coordinates).
I saw that you have used a viewport in your pretty cool freestyle engine demo, so you must have come across these issues already. Did you solve them in 1.3.6? Do you have an up-to-date list of changes for 1.3.6? This would save time, as tracking down such things can be quite lengthy.
Faikus- Posts : 23
Join date : 2009-05-26
Location : Berlin
Permissions in this forum:
You cannot reply to topics in this forum
|
|