Blender Git Commit Log

Git Commits -> Revision c563849

Revision c563849 by Benoit Bolsee (decklink)
October 6, 2015, 12:46 (GMT)
BGE: new rasterizer method to create FBO for custom render in VideoTexture.

New raterizer method:

fbo = bge.render.offScreenCreate(width,height)
width, height: size of the FBO, need not be power of two
Returns a PyRASOffScreen object that encapsulates the FBO.
It has just 2 attributes: width and height to return the size of the FBO.
Currently, this object can only be used in the ImageRender constructor.

New optional argument on ImageRender constructor:

ir = bge.texture.ImageRender(scene, camera, fbo)
If present, fbo is an object of type PyRASOffScreen.
The returned ImageRender object holds a reference to it, which ensures
that the FBO livespan is at least as long as the ImageRender object.
One PyRASOffScreen object can be shared by multiple ImageRender objects.
The FBO is automatically destroyed when all refences to the PyRASOffScreen
object are released.
Note: the whole and capSize attributes of the ImageRender object have no
effect when an FBO is used: the render and the capture is automatically
done on the full size of the FBO.

Commit Details:

Full Hash: c56384944d070ef8f144d4814e2d6fe0eb8a600d
Parent Commit: c750ef6
Lines Changed: +439, -22

3 Added Paths:

/source/gameengine/Rasterizer/RAS_IOffScreen.h (+72, -0) (View)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLOffScreen.cpp (+97, -0) (View)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLOffScreen.h (+47, -0) (View)

10 Modified Paths:

/source/gameengine/Ketsji/KX_PythonInit.cpp (+135, -2) (Diff)
/source/gameengine/Rasterizer/CMakeLists.txt (+1, -0) (Diff)
/source/gameengine/Rasterizer/RAS_IRasterizer.h (+7, -0) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/CMakeLists.txt (+2, -0) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp (+14, -0) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h (+1, -1) (Diff)
/source/gameengine/VideoTexture/ImageRender.cpp (+38, -8) (Diff)
/source/gameengine/VideoTexture/ImageRender.h (+4, -1) (Diff)
/source/gameengine/VideoTexture/ImageViewport.cpp (+19, -9) (Diff)
/source/gameengine/VideoTexture/ImageViewport.h (+2, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021