Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-06-01Decklink: fix output on some DeckLink cards.Benoit Bolsee
Opening a DeckLink card for output with the DeckLink object sometimes failed because some types of card report no support for BGRA pixel format, yet it works. The test is maintained but a warning is printed instead of throwing an exception. Optional cache size suffix added in Decklink output format string: may be needed for some card that needs more than the default 8 frames.
2016-06-01Decklink: Fix bug: Decklink.right attribute was not unitialized.Benoit Bolsee
2016-05-23Decklink: support display mode/pixel format combination that use padding.Benoit Bolsee
Previously, the VideoDeckLink module was rejecting combinations of video modes and pixel formats that cause padding. For example HD720 (1280 pixels per line) and 10BitYUV (encodes by blocks of 48 pixels) => 16 padding pixels at the end of each line. This format is now accepted and the padding pixels are sent to the BGE. It is sufficient to edit the UV map so that these pixels are not displayed.
2016-05-23Optimize ImageRender->Decklink outputBenoit Bolsee
Use loadImage() method whenever possible to transfer video frame directly from GL driver to Decklink frame. This is possible when alpha is true on ImageRender and render size matches exactly video size. Best results with offscreen render.
2016-05-19Fix MSVC compilation error after mergeBenoit Bolsee
2016-05-19Try to fix atomic_ops on buildbot by moving include to topBenoit Bolsee
2016-05-18VideoDeclink: change default cache size to 4 frames.Benoit Bolsee
Previously, cache size was only 3 frames, which caused problems with older types of Decklink cards (was working with the 4K Extreme). The default is now 4 frames and it is possible to specify a different cache size when opening the card: VideoDecklink("<mode>/<pixel>[/3D][:<cachesize>]", cardIdx) Ex with 8 frames in cache: VideoDecklink("pal/2vuy:8", 0)
2016-02-21Merge remote-tracking branch 'origin/master' into decklinkBenoit Bolsee
Conflicts: source/gameengine/Ketsji/KX_KetsjiEngine.cpp
2016-02-20Decklink: patch cleanup before merge.Benoit Bolsee
2016-02-20Make Blender ready for C++11Sergey Sharybin
Did a full compile of debug build with C++11 enabled, it all passed compilation apart from some deprecated type used in GE's Video Texture. Solved it inside of ifdef block now. In the future we should uncomment the MSVC part of it, it should all be safe and correct (MSVC2013 does not define new C++ version but supports C++11). The reason it is commented is to have absolutely no effect on the upcoming release.
2016-02-16Make game engine ready for FFmpeg-3.0 as wellSergey Sharybin
2016-01-28cleanup: spelling, comments, alignmentMike Erwin
fixed pet peeve “frustrum” and other non-functional changes.
2016-01-27World textures displaying for viewport in BI.Alexander Romanov
This patch supports "Image or Movie" and "Environment map" types of world texture for the viewport. It supports: - "View", "AngMap" and "Equirectangular" types of mapping. - Different types of texture blending (according to BI world render). - Same color blending as when it lacked textures (but render via glsl). {F207734} {F207735} Example: {F275180} Original author: @valentin_b4w Regards, Alexander (Blend4Web Team). Reviewers: sergey, valentin_b4w, brecht, merwin Reviewed By: merwin Subscribers: campbellbarton, merwin, blueprintrandom, youle, a.romanov, yurikovelenov, AlexKowel, Evgeny_Rodygin Projects: #rendering, #opengl_gfx, #bf_blender:_next Differential Revision: https://developer.blender.org/D1414
2016-01-11VideoDecklink: fix compilation warning in Windows.Benoit Bolsee
2016-01-11VideoDecklink: accept mode index, test dvp.dll presence, enable audio just ↵Benoit Bolsee
in case. mode index instead of mode name can be used when opening the card: VideoDecklink("1/2vuy",0) The list of video mode is specific to each board and this method is therefore not generic. Only use it for debugging purposes. VideoDecklink will not throw if dvp.dll is not found when opening a Decklink card on Windows with a nVideo Quadro GPU; instead it will fallback on standard OpenGL transfer. It is preferable to use dvp.dll when possible as it provides faster image transfer to Quadro GPU. Audio Input is now enable by default with 48KHz sampling, 16bit samples and 2 channels. This is normally not necessary because audio is not used in VideoTexture; it is just in case it is necessary on certain Decklink card.
2016-01-09Merge remote-tracking branch 'origin/master' into decklinkBenoit Bolsee
2016-01-04Remove SCons building systemSergey Sharybin
While SCons building system was serving us really good for ages it's no longer having much attention by the developers and started to become quite a difficult task to maintain. What's even worse -- there started to be quite serious divergence between SCons and CMake which was only accumulating over the releases now. The fact that none of the active developers are really using SCons and that our main studio is also using CMake spotting bugs in the SCons builds became quite a difficult task and we aren't always spotting them in time. Meanwhile CMake became really mature building system which is available on every platform we support and arguably it's also easier and more robust to use. This commit includes: - Removal of actual SCons building system - Removal of SCons git submodule - Removal of documentation which is stored in the sources and covers SCons - Tweaks to the buildbot master to stop using SCons submodule (this change requires deploying to the server) - Tweaks to the install dependencies script to skip installing or mentioning SCons building system - Tweaks to various helper scripts to avoid mention of SCons folders/files as well Reviewers: mont29, dingto, dfelinto, lukastoenne, lukasstockner97, brecht, Severin, merwin, aligorith, psy-fi, campbellbarton, juicyfruit Reviewed By: campbellbarton, juicyfruit Differential Revision: https://developer.blender.org/D1680
2015-12-20Decklink: fix framerate calculation.Benoit Bolsee
For some reason the framerate attribute of the VideoDeclink object was was wrong by 1. framerate now returns the correct value.
2015-12-20Decklink: use floating point texture format when possible.Benoit Bolsee
Previous implementation was using GL_RED_INTEGER texture format for all non-RGBA pixel format. This isn't supported by intel GPU (although the GL_texture_rg extension is declared supported). Floating RGBA texture are now used for the following pixel formats: 8BitYUV: Cb->B, Y0->G, Cr->R, Y1->A 10BitYUV: no fixed mapping between CbCrY and RGB, a shader is required 8BitARGB: direct mapping 8BitBGRA: direct mapping 10BitRGBXLE: direct mapping (A is undefined) Other pixel formats are mapped to GL_RED_INTEGER (GL_R32UI internal format, usampler2D must be used in the shader). Note: the 10BitYUV, 10BitRGBXLE and 8BitARGB mapping only works on little- endian host CPU. For big endian CPU, other formats must be used (not yet implemented). The texture MIN/MAX_FILTER is now set to NEAREST. Previously it was set to LINEAR, which was detremental on multibytes pixel format. The sample shader in the documentation for the above formats will be changed to reflect the new mapping.
2015-12-17Cleanup: quiet warningCampbell Barton
2015-12-08BGE code cleanup: Removing RAS_GLExtensionManager.Mitchell Stokes
This class did nothing but print out extensions if they were found. Instead, the code from bge.logic.PrintGLInfo() is now printed as the Rasterizer is initialized. This gives better information, and it removes some GL code from KX_PythonInit.cpp (the PrintGLInfo method now calls the Rasterizer to print the information). Differential Revision: https://developer.blender.org/D438
2015-12-06BGE: Add GL synchronization on ImageRender.refresh() without buffer.Benoit Bolsee
Calling ImageRender.refresh() without passing a buffer object will now perform the render (if not already started earlier with ImageRender.render()) and wait for the render to complete. This is done internally with a GLSync object to synchronize with the GPU. This is only useful when doing offscreen render on texture target: when refresh() returns, you are guaranteed that the texture is ready for use. fbo = bge.render.offScreenCreate(width,height,samples,bge.render.RAS_OFS_RENDER_TEXTURE) tex = fbo.color ir = bge.texture.ImageRender(scene,camera,fbo) ir.refresh() --> tex is now ready for use
2015-12-05BGE: Display shadow when default render is off.Benoit Bolsee
There was a bug with logic.setRender(False): the shadow buffers were not computed, which was visible in the bge.texture.ImageRender() custom renders. This is now fixed: the shadow buffers will be computed at most once per frame by the first ImageRender() or by the default render.
2015-11-28Fix a regression introduced by https://developer.blender.org/D1396 on video ↵Ulysse Martin
playing Fix a regression introduced by https://developer.blender.org/D1396 on video playing Look at @mariomey example file. Reviewers: panzergame Subscribers: mariomey Projects: #game_engine Differential Revision: https://developer.blender.org/D1623
2015-11-21DeckLink: clean GPL statement in new files.Benoit Bolsee
2015-11-03BGE: asynchronous render with ImageRender new render() methodBenoit Bolsee
usage: ir = bge.texture.ImageRender(..) ir.render() ir.refresh(buffer)
2015-11-02Fix warnings when compiling WITH_DECKLINK=OFF and WITH_X11_ALPHA=OFFBenoit Bolsee
2015-11-02BGE: multisample FBO supported in bge.render.offscreenCreate()Benoit Bolsee
3rd optional argument to offScreenCreate() to specify the number of multi-sample. If the GPU does not support MSAA on FBO, this is ignored. No other change in the API.
2015-10-20Merge remote-tracking branch 'origin/master' into decklinkBenoit Bolsee
2015-10-20BGE: Image source refresh() accepts pixel format argument.Benoit Bolsee
All image source objects now accept a pixel format argument in addition to the buffer argument in the refresh() method. This can be used to change the format of the image copied in the buffer. The only allowed values are "RGBA" and "BGRA". This is useful when transferring images to external application that do not support the RGBA format. Ex: im = bge.texture.ImageRender(...) im.refresh(buffer, "BGRA") Note: the transfer is optimal (i.e. no intermediate copy) for ImageRender and ImageViewport objects when no processing of the image is needed in VideoTexture. This is the case if no filter is set and the attributes are set as follow: flip=False, alpha=True, scale=False, depth=False, zbuff=False.
2015-10-13BGE: fix a bug in ImageRender.refresh(buffer): the scene was rendered twice.Benoit Bolsee
This bug had no visible effect other than consuming CPU time because of the double render.
2015-10-13BGE: support camera scale, can be negative.Benoit Bolsee
Camera scale was previously ignored in the BGE. It is now injected in the modelview matrix as a scale of the scene coordinates in the camera local reference. This is equivalent to a zoom: A scale of 2 multiplies the coordinates by 2 => only the points with coordinates less then 0.5 before the scale will fall in the frustrum => equivalent to a zoom. Anisotropic scale is supported (different scale in x, y, z) Negative scale is also supported. As an odd number of negative scale flips the normals of the objects, the OGL front face setting is also flipped to compensate. A Y negative scale of -1 produces a vertical flip at OGL level.
2015-10-10Fix various compiler warnings.Brecht Van Lommel
2015-10-06BGE: new rasterizer method to create FBO for custom render in VideoTexture.Benoit Bolsee
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.
2015-09-29Merge remote-tracking branch 'origin/master' into decklinkBenoit Bolsee
ce/blender/python/generic/bgl.c Conflicts: build_files/cmake/macros.cmake intern/atomic/atomic_ops.h intern/ghost/GHOST_ISystem.h intern/ghost/GHOST_Types.h intern/ghost/intern/GHOST_ContextGLX.cpp intern/ghost/intern/GHOST_ContextWGL.cpp intern/ghost/intern/GHOST_ContextWGL.h intern/ghost/intern/GHOST_SystemX11.cpp intern/ghost/intern/GHOST_WindowX11.cpp intern/ghost/intern/GHOST_WindowX11.h source/blenderplayer/CMakeLists.txt
2015-09-13Fix T43033: VideoTexture module repeated loading of images causes memory leakPorteries Tristan
Fix proposal for memory leak caused by png decoding in videoFFmpeg.cpp T43033 Author: Ulysse MARTIN (youle) Reviewers: dfelinto, ben2610, moguri, lordloki, panzergame Reviewed By: lordloki, panzergame Subscribers: panzergame, lordloki Projects: #game_engine Differential Revision: https://developer.blender.org/D1396
2015-09-08Use C++ guarded alloc for FilterBaseCampbell Barton
2015-08-31Remove duplicate call to glColorMask() in ImageRender::Render().Benoit Bolsee
2015-08-30VideoTexture: Add an optional parameter to the refresh method of image sources.Benoit Bolsee
If provided, the parameter must be an object that supports the buffer protocol (bytearray, memoryview, etc) otherwise a runtime error is generated. If the buffer is sufficiently large, the image is copied in the buffer before being refreshed (i.e. invalidated). If the image was not already available, it will be updated first. In the later case, it is possible that the image is loaded directly in the user's buffer wihtout an intermediate copy in the internal image buffer. This is currently the case for ImageViewport and ImageRender sources when the OGL format matches the buffer format (alpha, no filter, no flip, no scaling). Note that the image format in the buffer is always RGBA. If no parameter is provided, the method works as before: the image is invalidated without any attempt to updated it first. The function returns False if a buffer was provided but could not be updated for any reason (source not ready, buffer too small). It returns True in all other situations. The purpose of this function is to efficiently retrieve the OGL frame buffer directly into a user buffer by skiping an extra copy to the internal image buffer if it's not needed.
2015-08-06Cleanup: whitespaceCampbell Barton
2015-08-04SCons: Fix for really nasty bug with polluting configuration environmentSergey Sharybin
The issue was caused by the following construction: def = env['SOMETHING'] defs.append('SOMETHING_MORE') Since first assignment was actually referencing environment option it was totally polluted hawing weird and wonderful side effects on all other areas of Blender.
2015-07-13BGE: ImageRender for other types of stereo.Benoit Bolsee
Stereo mode disturbs ImageRender by changing some OGL state. It was already fixed for Quadbuffer mode, but not yet for anaglyph and interlaced mode. This fix simply clears the color mask and stipple mode that are specific to these stereo mode. In any case, the correct state is restored prior the render of each eye.
2015-07-12BGE Clean-up: New EXP prefix for the BGE Expression moduleJorge Bernal
The expression module now uses an EXP prefix and it follows a distribution similar to blender. Additionally the hash function in EXP_HashedPtr.h was simplified and the files EXP_C-Api.h &.EXP_C-Api.cpp were deleted because were unused. Reviewers: campbellbarton, moguri, sybren, hg1 Projects: #game_engine Differential Revision: https://developer.blender.org/D1221
2015-07-06BGE: bge.texture API documentation enhancementQuentin Wenger
This patch attempts to improve and review the documentation of bge.texture, as requested in the [[ http://wiki.blender.org/index.php/Dev:2.5/Source/Development/Todo/GameEngine#Video_Texture | TODO list ]]. More specifically, it - fixes the rst syntax, including titles of the examples bge.texture.py and bge.texture.1.py; - adds, standardizes and reviews description of the API elements, particularly signatures, types, etc. - adds SOURCE_* constants to the doc - splits the doc into thematical parts (Video, Image, Texture, and Filter Classes, Functions, Constants). Notes: - The parameter "mode" of ImageBuff.plot has to be described better. Actually, the whole set of IMB_BLEND_* constants (from IMB_imbuf.h) should be exposed to Python. I'll do that in a future diff, and complete the doc at the same moment (adding those IMB_BLEND_* constants to the Constants part of this doc). - The option of using webcams in VideoFFmpeg is still particularly not well documented. I am planning to make a proposal about fixing T18634 (and its corresponding TODO in the list) by integrating OpenCV in the BGE (and Blender?). The idea would then probably be to add a new class, f.ex. ImageWebcam, making this functionnality more specialized. So for now I don't think it is worth to document that part much. This patch fixes T44284 too. Reviewers: moguri, kupoman, campbellbarton, panzergame, lordloki Reviewed By: panzergame, lordloki Subscribers: hg1 Projects: #game_engine, #game_python, #documentation Maniphest Tasks: T44284 Differential Revision: https://developer.blender.org/D1352
2015-06-29Fix 73841 : Game Engine - Camera Lens ShiftDalai Felinto
This is essential for video projection, and the alternative until now was to manually change the projection matrix via Python. ( http://www.blender.org/manual/game_engine/camera/introduction.html#camera-lens-shift - this page will be removed as soon as I commit this) Also this is working for perspective and orto cameras BUT if the sensor is not AUTO it will only look correct in blenderplayer (this is an unrelated bug, but just in case someone runs into it while testing this, now you know why you got the issue). Kudos for the BlenderVR project for supporting this feature development. Differential Revision: https://developer.blender.org/D1379
2015-06-24BGE: Fix color used as background in VideoTexture.Quentin Wenger
Now we use color converted (if we do a color management) by the setter for background color in VideoTexture (ImageRender & ImageMirror). Reviewers:panzergame
2015-06-23Merge remote-tracking branch 'origin/master' into decklinkBenoit Bolsee
2015-06-22BGE: Fix T45110, T44174, armature animations update and mirror render.Porteries Tristan
Reveiwers:Moguri, Matpi, youle
2015-06-16BGE: Fix for precision lost in setBackground/getBackground at Video TextureJorge Bernal
Now internally the variables are processed as floats avoiding int->float->char conversions that are causing precision lost. A check for int numbers is maintained to keep compatibility with old behaviour. Reviewers: ben2610, campbellbarton, moguri, hg1 Reviewed By: moguri, hg1 Subscribers: campbellbarton Projects: #game_engine Differential Revision: https://developer.blender.org/D1301
2015-05-10BGE: Fix T43822 Videotexture does not use sky color for off-screenJorge Bernal
rendering Make scene background color as default for render-to-texture instead of current blue color (0, 0, 255). It is very useful for mirrors setups. Reviewers: moguri, ben2610, sybren, panzergame, hg1 Reviewed By: panzergame, hg1, moguri Subscribers: mpan3 Differential Revision: https://developer.blender.org/D1287