Blender Git Commit Log
Git Commits -> Revision e4ea5e5
Revision e4ea5e5 by Benoit Bolsee (ge_2df_textures) March 20, 2017, 23:26 (GMT) |
BGE: 2D filter additions. gpu_draw: skip color management for textures declared as 'non-color'. New reserved names in 2D filters: bgl_ObjectTextureX (X=0 to 4) to access texture channels 0 to 4 of the object on which the 2D filter is defined. Force U.use_16bit_textures to 1 in the blender player to give access to floating point textures in the 2D fitlers shaders. bge.logic.setOffScreen(True) to define and use a floating point offscreen render buffer of the same size than the framebuffer in the main BGE loop. Useful to get floating point results from 2D filters. The offscreen render buffer will automatically be used by bge.texture.ImageViewport if it's enabled. It is legal to call bge.logic.setOffScreen(True/False) to disable and reenable the framebuffer on a frame by frame basis. New refresh mode for bge.texture.ImageViewport and bge.texture.ImageRender objects: iv.refresh(buffer, mode) mode = "DEPTH" to retrieve floating point depth buffer = "RG32F" to retrieve red and green channels as floating point. = "RGB32F" to retrieve red, green and blue channels as floating point = "RGBA32F" to retrieve red, green, blue and alpha channels as floating point. For ImageViewport and ImageRender, refresh() bypasses all filters and object options and retrieve directly from the frame buffer or render buffer. |
Commit Details:
Full Hash: e4ea5e5810928ed3da2119a9a4a646bb6991436d
Parent Commit: 13d8661
Lines Changed: +310, -80
25 Modified Paths:
/source/blender/gpu/intern/gpu_draw.c (+1, -1) (Diff)
/source/gameengine/Converter/KX_ConvertActuators.cpp (+13, -1) (Diff)
/source/gameengine/GameLogic/SCA_2DFilterActuator.cpp (+4, -1) (Diff)
/source/gameengine/GameLogic/SCA_2DFilterActuator.h (+4, -0) (Diff)
/source/gameengine/GameLogic/SCA_IScene.h (+2, -1) (Diff)
/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp (+1, -0) (Diff)
/source/gameengine/Ketsji/KX_KetsjiEngine.cpp (+43, -3) (Diff)
/source/gameengine/Ketsji/KX_KetsjiEngine.h (+9, -1) (Diff)
/source/gameengine/Ketsji/KX_PythonInit.cpp (+19, -4) (Diff)
/source/gameengine/Ketsji/KX_Scene.cpp (+2, -2) (Diff)
/source/gameengine/Ketsji/KX_Scene.h (+2, -1) (Diff)
/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp (+61, -11) (Diff)
/source/gameengine/Rasterizer/RAS_2DFilterManager.h (+6, -1) (Diff)
/source/gameengine/Rasterizer/RAS_IOffScreen.h (+5, -1) (Diff)
/source/gameengine/Rasterizer/RAS_IRasterizer.h (+1, -1) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLOffScreen.cpp (+21, -6) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLOffScreen.h (+1, -1) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp (+2, -2) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h (+1, -1) (Diff)
/source/gameengine/VideoTexture/ImageBase.cpp (+28, -0) (Diff)
/source/gameengine/VideoTexture/ImageBase.h (+2, -1) (Diff)
/source/gameengine/VideoTexture/ImageRender.cpp (+24, -2) (Diff)
/source/gameengine/VideoTexture/ImageRender.h (+3, -4) (Diff)
/source/gameengine/VideoTexture/ImageViewport.cpp (+50, -32) (Diff)
/source/gameengine/VideoTexture/ImageViewport.h (+5, -2) (Diff)
/source/gameengine/Converter/KX_ConvertActuators.cpp (+13, -1) (Diff)
/source/gameengine/GameLogic/SCA_2DFilterActuator.cpp (+4, -1) (Diff)
/source/gameengine/GameLogic/SCA_2DFilterActuator.h (+4, -0) (Diff)
/source/gameengine/GameLogic/SCA_IScene.h (+2, -1) (Diff)
/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp (+1, -0) (Diff)
/source/gameengine/Ketsji/KX_KetsjiEngine.cpp (+43, -3) (Diff)
/source/gameengine/Ketsji/KX_KetsjiEngine.h (+9, -1) (Diff)
/source/gameengine/Ketsji/KX_PythonInit.cpp (+19, -4) (Diff)
/source/gameengine/Ketsji/KX_Scene.cpp (+2, -2) (Diff)
/source/gameengine/Ketsji/KX_Scene.h (+2, -1) (Diff)
/source/gameengine/Rasterizer/RAS_2DFilterManager.cpp (+61, -11) (Diff)
/source/gameengine/Rasterizer/RAS_2DFilterManager.h (+6, -1) (Diff)
/source/gameengine/Rasterizer/RAS_IOffScreen.h (+5, -1) (Diff)
/source/gameengine/Rasterizer/RAS_IRasterizer.h (+1, -1) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLOffScreen.cpp (+21, -6) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLOffScreen.h (+1, -1) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp (+2, -2) (Diff)
/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.h (+1, -1) (Diff)
/source/gameengine/VideoTexture/ImageBase.cpp (+28, -0) (Diff)
/source/gameengine/VideoTexture/ImageBase.h (+2, -1) (Diff)
/source/gameengine/VideoTexture/ImageRender.cpp (+24, -2) (Diff)
/source/gameengine/VideoTexture/ImageRender.h (+3, -4) (Diff)
/source/gameengine/VideoTexture/ImageViewport.cpp (+50, -32) (Diff)
/source/gameengine/VideoTexture/ImageViewport.h (+5, -2) (Diff)