Blender Git Loki
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)
/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)
/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)