diff options
author | Mitchell Stokes <mogurijin@gmail.com> | 2012-12-25 10:20:50 +0400 |
---|---|---|
committer | Mitchell Stokes <mogurijin@gmail.com> | 2012-12-25 10:20:50 +0400 |
commit | 62b6303735a1bbdb0f978ecf6afc1829d13ebe7b (patch) | |
tree | a69e00d21893bb7c64ef0fcf124c94247b3dbace /source/gameengine/GamePlayer/common/GPC_Canvas.cpp | |
parent | f339c63584526a56e5053dc288ccf557a722a202 (diff) |
BGE: Fixing an assert with the canvas' GetViewPort(). bf_gpu was changing the viewport when handling shadow buffers. KX_LightObject::BindShadowBuffer() now updates the canvas with the new viewport information from bf_gpu.
Diffstat (limited to 'source/gameengine/GamePlayer/common/GPC_Canvas.cpp')
-rw-r--r-- | source/gameengine/GamePlayer/common/GPC_Canvas.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/source/gameengine/GamePlayer/common/GPC_Canvas.cpp b/source/gameengine/GamePlayer/common/GPC_Canvas.cpp index b5c1c29238a..058454ca352 100644 --- a/source/gameengine/GamePlayer/common/GPC_Canvas.cpp +++ b/source/gameengine/GamePlayer/common/GPC_Canvas.cpp @@ -131,7 +131,15 @@ void GPC_Canvas::SetViewPort(int x1, int y1, int x2, int y2) glViewport(x1,y1,x2-x1 + 1,y2-y1 + 1); glScissor(x1,y1,x2-x1 + 1,y2-y1 + 1); -}; +} + +void GPC_Canvas::UpdateViewPort(int x1, int y1, int x2, int y2) +{ + m_viewport[0] = x1; + m_viewport[1] = y1; + m_viewport[2] = x2; + m_viewport[3] = y2; +} const int *GPC_Canvas::GetViewPort() { |