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
path: root/source
AgeCommit message (Collapse)Author
2021-02-01Fix T85035: Gpencil render in background render wrong frameAntonio Vazquez
Due a thread priority, the calculation of the current frame is not done before the frames are available. This produces wrong render frames. The solution is verify the current frame before doing the real render. This adds only a few milliseconds, but it assures the frame is correct. As the problem is only when render in background, the recalculation of the frame is only necessary when do real render and not a viewport render, so there is no impact in the animation FPS.
2021-02-01Fix regression: Crash garbage collecting VBOs on never evaluated scenesClément Foucault
Introduced in rB087777f2b9b8. Fixes issues with scene from T82808.
2021-01-31Fix T83092: Direction of rotation with View orientation changed in 2.91Germano Cavalcante
This solution replaces {rBf9e994d0f463}. That commit created an inverted orientation matrix but the 'Align to Transform Orientation' operator doesn't work well with inverted matrices. This new solution makes the rotate operator use the negative vector of the axis.
2021-01-31Revert "Fix T83092: Direction of rotation with View orientation changed in 2.91"Germano Cavalcante
This reverts commit f9e994d0f463abb87761591e30c47a9613be6cca. And fixes T85227. That commit created an inverted orientation matrix but the 'Align to Transform Orientation' operator doesn't work well with inverted matrices.
2021-01-31Fix T85236: "Zoom to Mouse Position" inverts "Dolly View" directionCampbell Barton
2021-01-31Cleanup: use switch for Add Object Tool event handlingCampbell Barton
2021-01-31Add Object Tool: make automatic axis selection an optionCampbell Barton
While useful in some cases, this meant it wasn't possible to use the "Floor" for object placement without looking top-down or bottom up.
2021-01-31Fix T79797: Compositor backdrop gizmo not updating after zoomNathan Craddock
The gizmo for the compositor backdrop image did not redraw when zooming in and out with the backimage_zoom operator. This adds the missing notifier.
2021-01-30Fix T84465 Bevel Percent and Absolute when limit type is Weight.Howard Trickey
The previous fix to the width modes Percent and Absolute did not take into account that with limit mode Weight, the amount needs to be scaled by the bevel weight of the beveled edge in question. (Sometimes there are two beveled edges in question, in which case an average is used.)
2021-01-30Fix T81193 EEVEE: Crash when motion blur is aborted at cache finishClément Foucault
This was caused by a use after free. The issue was that the motion steps were successfully gathered but failling the last vertex count check, discarding the copied VBOs but not removing the reference of the first VBO which was passing the test.
2021-01-30EEVEE: Fix crash when using animated visibility with motion blur stepsClément Foucault
This was caused by the same VBO being remapped twice by `EEVEE_motion_blur_cache_finish`. Leading to memory corruption.
2021-01-29EEVEE: Fix GPUNodeLink memory leak for displacement nodes using SHD_SPACE_WORLDMichael Möller
When the displacement space is set to SHD_SPACE_WORLD, the GLSL method "node_displacement_world" is used instead of the "node_displacement_object" method. The two GLSL methods: ``` void node_displacement_object( float height, float midlevel, float scale, vec3 N, mat4 obmat, out vec3 result) { N = (vec4(N, 0.0) * obmat).xyz; result = (height - midlevel) * scale * normalize(N); result = (obmat * vec4(result, 0.0)).xyz; } void node_displacement_world(float height, float midlevel, float scale, vec3 N, out vec3 result) { result = (height - midlevel) * scale * normalize(N); } ``` In contrast to the "node_displacement_object" method, the "node_displacement_world" does not require an "obmat" parameter. Attempting to still pass "GPU_builtin(GPU_OBJECT_MATRIX)" as additional parameter will result in a memory leak. The "GPUNodeLink" allocated in the "GPU_builtin" method will never get released. Fixes T83941 Memory leak when using the Displacement shader node in Eevee with the displacement space set to "World Space"
2021-01-29Depsgraph: Remove redundant copy-on-write operationsSergey Sharybin
This change removes copy-on-write operations from ID nodes which do not need copy-on-write. Should be no functional changes, as before the copy-on-write operation would do nothing for those nodes anyway.
2021-01-29Fix T83411: Crash when using a workspace/layout data path in a driverSergey Sharybin
Building IDs which are not covered by copy-on-write process was not implemented, which was causing parameters block not present, and, hence causing crashes in areas which expected parameters to present. First part of this change is related on making it so Copy-on-Write is optional for ID nodes in the dependency graph. Second part is related on using a generic builder for all ID types which were not covered by Copy-on-Write before. The final part is related on making it so build_id() is properly handling ParticleSettings and Grease Pencil Data. Before they were not covered there at all, and they need special handling because they do have own build functions. Not sure it worth trying to split those parts, as they are related to each other and are not really possible to be tested standalone. Open for a second opinion though. Possible nut-tightening is to re-organize build_id() function so that every branch does return and have an assert at the end, so that missing ID type in the switch statement is easier to spot even when using compilers which do not report missing switch cases. As for question "why not use default" the answer is: to make it more explicit and clear what is a decision when adding new ID types. We do not want to quietly fall-back to a non-copy-on-write case for a newly added ID types. Differential Revision: https://developer.blender.org/D10075
2021-01-29Fix T84717: missing 3D viewport updates when changing shading settingsBrecht Van Lommel
Previously this relied on the dependency graph to detect changes in the screen datablock, which would then notify the renderers. This was rather indirect an not even really by design. Instead use notifiers to tag specific 3D viewports to be updated. Includes changes to BKE_scene_get_depsgraph to accept a const Scene pointer. Testing if this works correctly requires adding back commits 81d444c and 088904d, since those have been temporarily reverted. Differential Revision: https://developer.blender.org/D10235
2021-01-29Cleanup: accept const pointer for BKE_scene_get_depsgraphBrecht Van Lommel
2021-01-29Fix T81169: Grease Pencil Z-depth drawing issue on OSX + AMD Graphic CardsJeroen Bakker
The grease pencil merge depth shader is designed to only work correctly in octographic mode. The uv coordinates used `noperspective` attribute. Somehow this doesn't lead to render artifacts on most platforms and was only detected on OSX + AMD cards. This fix would calculate the uv coordinate inside the fragment shader and isn't passed along from the vertex shader. Thanks to Sebastián Barschkis for providing the hardware and time and Clément Foucault for helping out with the final fix.
2021-01-29Fix T84588: Set parameter as required for uv_on_emitterRobert Guetzkow
This commit fixes T84588's second issue. The `particle` parameter was declared optional in the Python API of `bpy.types.ParticleSystem.uv_on_emitter` due to a typo in the RNA definition. This commit marks it as required. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10127
2021-01-29Fix T85169: UV scale gizmo swaps X/YPhilipp Oeser
Introduced with swapped axis in rB0d67eb277f9b. Similar was fixed for the translate gizmo in rB567212c3434a. Now do the same for scaling as well. Maniphest Tasks: T85169 Differential Revision: https://developer.blender.org/D10245
2021-01-29Fix T85178: edit-mesh show_edges overlay option toggles face-dotsCampbell Barton
When this behavior was added it made sense, since then show_edges has changed to make edge-display more subtle (see 1a4b60c30db319b71bdc2e2fed2612c873fa8757) instead of removing edge-selection display entirely.
2021-01-29Fix T84661: read jpg pixel densityPhilipp Oeser
For jpeg, an image.resolution was always based on the default 72dpi, now read the pixel density from the jpeg_decompress_struct, convert according to unit and store in IMBuf's ppm. Not 100% sure of all implications tbh., files I have checked seem to work as expected now in the context of the report. Maniphest Tasks: T84661 Differential Revision: https://developer.blender.org/D10166
2021-01-29Fix T85139: Force field texture missing depsgraph relationPhilipp Oeser
If a force field was of type "Texture", any changes of that texture (e.g. its type - as reported in T85139 - or also its properties) were not properly updating rigid bodies and particle systems. Now ensure that texture is actually in the depsgraph and set up relation accordingly. Also fixes T75198. Maniphest Tasks: T85139 Differential Revision: https://developer.blender.org/D10234
2021-01-29UI: clarify edit-mesh face center behaviorCampbell Barton
- Grey out in wire/xray display. - Expand the description for when this is used. While this is working, the intended behavior wasn't clear, address T85177.
2021-01-29PyAPI: Add error when registering a 3D gizmo into a 2D gizmo groupCampbell Barton
Address issue raised in T85145.
2021-01-29Fix T84906: Loop select can fail when starting from an ngonCampbell Barton
When stepping over an ngon's edges, check the number of edges & faces, to ensure the topology connected to the ngon would be walked along.
2021-01-29Docs: add diagrams describing the purpose of BMwEdgeLoopWalker.f_hubCampbell Barton
Without this the purpose of this feature isn't clear. While 01b3e9cc9fdd0875b93ba749c8209e6c43570d13 linked to an image, add inline ascii diagrams with detailed explanations.
2021-01-29Fix T83988: Active modifier outline uses search theme colorHans Goudey
The outline for the active modifier was abusing the property search match theme color, as noted in a comment. This commit adds a new theme color in RNA specifically for the active modifier outline.
2021-01-29Cleanup: Move geonodes object info RNA enumDalai Felinto
This enum is only used by the node. So it does not need to be declared outside the scope of its function. Originally I thought this may be relevant to the collection info node as well, but the patch for it is defining its own enums.
2021-01-28Fix T85157: join node not working when the second mesh is emptyJacques Lucke
The issue was that the `offset` in `dst_span[offset]` was out of bounds when the domain size is 0. The fix is to simply skip copying attributes in that case.
2021-01-28Revert "Depsgraph: Remove redundant copy-on-write operations"Brecht Van Lommel
This reverts commit 76fd41e9db19dd2a33fae0e690f76792b13d49ed. This should have been reverted along with 0f95f51361d73fbd8ba8d80b3b65da930dcf3b20, since this change by itself is causing crashes when the depsgraph accesses a non-existent copy-on-write component. Ref T84717
2021-01-28Fix alpha transparency slider range being influenced by RGB valuesBrecht Van Lommel
For buttons that edit array properties, the soft min/max and slider ranges are based on the range of all values in the array. However for alpha this does not make much sense, the only reasonable range is 0..1 even when there are RGB values larger than 1. So treat alpha as an individual property.
2021-01-28Fix T83935: Superimposed icon's hotspot is misalignedYevgeny Makarov
Now the icon's rect are drawn wider than it should be, and with overlapping, probably in order to compensate for the icon's offsets inside the rect. The solution is to draw icon's rect of the correct size and center the icon itself. And make the hotspot exactly match the icon's rect. The last/right button's hotspot also covers the extra padding on the right. Differential Revision: https://developer.blender.org/D9936 Reviewed by: Julian Eisel
2021-01-28Fix T81334: Python view-port drawing depth-test regressionCampbell Barton
Since 216d78687d2b9468b05fb598d1cef0b8424a40d2 the depth function (glDepthFunc) was left in an undefined state for drawing callbacks that use the `bgl` module. This meant enabling depth-test from Python's bgl module also needed to set the depth function (which previously wasn't necessary). Set the depth function as part of GPU_bgl_start
2021-01-28Fix T84512: Crash if size input of Blur node is too largeHabib Gahbiche
Gaussian filter with a too large kernel doesn't make much sense. This commit caps the Gaussian function radius to MAX_GAUSSTAB_RADIUS. Reviewed By: sergey Maniphest Tasks: T84512 Differential Revision: https://developer.blender.org/D10122
2021-01-28Fix T85142: BMW scene quits BlenderSergey Sharybin
Technically, the crash was caused by revert which happened in rBcd24712c2c5: it reverted some code which is essential for rB76fd41e9db1. Bring back the essential code for the removal of un-needed Copy-on-Write operations, so that the crash doesn't happen. What was causing the crash is the ID tag assuming Copy-on-Write operation always exists.
2021-01-28Fix T85107: Active tool doesn't update when mouse is already over itCampbell Barton
2021-01-28Fix T82785: Setting Image.alpha_mode clears generated image dataCampbell Barton
2021-01-28Fix T83539: 'activate_init' fails with buttons that have popupsCampbell Barton
Activating buttons was running too early, before the popup was positioned on the screen, causing data-selectors to be positioned incorrectly. As the early button activation isn't needed, remove this call. Ensure this doesn't happen again with an assert.
2021-01-28Fix jpeg200 4k cinema presetCampbell Barton
Used the wrong define, also remove local defines.
2021-01-28Fix T82675: Crash on exit when Blender is built as a Python moduleCampbell Barton
2021-01-28Fix T84931: Keys that open menus can also activate menu itemsCampbell Barton
Disable key-accelerators for key-repeat events. When a key was held it could open the menu and activate the menu item associated with that key. With the RMB select option: edit-meshes & edge-selection caused holding W to open & activate "Edge Bevel Weight".
2021-01-27Fix T85110: moving markers num input confuses time vs framesPhilipp Oeser
Looks like a typo in rB66b84ad1592d. Maniphest Tasks: T85110 Differential Revision: https://developer.blender.org/D10225
2021-01-27Documented color management issue.Jeroen Bakker
When using the viewport render animation and saving to an 8 bit image/movie file, the color management is applied twice. Once on the GPU and once when saving to disk. Removing this option currently leads to incorrect Scene strip rendering so needs more research.
2021-01-27Cleanup: Moved update ratio stretching overlay to cache_finishJeroen Bakker
2021-01-27Fix T83187: Unselected UVs shows selected on linked meshes.Jeroen Bakker
When uv editing objects that share the same mesh only the selection state can get confused. The cause is that the UV editor uses a particular order of objects and store its state in the first object of a mesh it hasn't handled. During drawing this state is updated into the GPU buffers. In the case of linked meshes it can happen that the GPU buffers are updated based on the object that does not have the correct selection state making th selection VBOs incorrect. This patch adds a work around that uses the order that the UV editor is also using so the GPU buffers are built with the right data.
2021-01-27Fix T84717: Missing viewport update after shading changesSergey Sharybin
Revert "Fix T83411: Crash when using a workspace/layout data path in a driver" The fix for the crash exposed design violation in the viewport shading updates, which is for some reason relying on dependency graph tag of interface data. The viewport module did not respond to the issue in 2 weeks, and the architect considered missing update for multiple users a more serious issue than a crash in a very specific case. This reverts commit 0f95f51361d73fbd8ba8d80b3b65da930dcf3b20.
2021-01-27Fix T84402: Off-screen rendering works only once from PythonCampbell Barton
Off-screen drawing doesn't work once the 'bgl' workaround is enabled. Disable this for off-screen drawing.
2021-01-27Windows: Fix wchar_t truncationRay Molenkamp
BLI_strncpy_wchar_from_utf8 made the assumption that wchar_t is UTF-32 bit regardless of environment, while this holds true on both mac and linux, on windows wchar_t is actually actually UTF-16. This resulted in the upper 16 bits being dropped from from some string conversions and prevented blender from starting when installed in a path with unicode code-points over 0xffff. There was also a fair bit of code duplication between BLI_strncpy_wchar_from_utf8 and BLI_str_utf8_as_unicode_and_size this change essentially removes all logic from BLI_strncpy_wchar_from_utf8 and calls the right function for the right environment. Reviewed By: brecht , Robert Guetzkow Differential Revision: https://developer.blender.org/D9822
2021-01-26Fix build errorHans Goudey
An extra `p->` was added for some reason in a recent commit. Additionally, there's no reason for the flag to be kept as a pointer, so just dereference it at the start of both functions.
2021-01-26Fix T85082: Perspective distortion while drawingFalk David
When the drawing plane was set to view and the user would pan their camera sideways, the drawing would be more and more distorted and projected further back. The fix projects the strokes to view when the user is looking through the camera or has the drawing plane set to view. Reviewed By: antoniov Maniphest Tasks: T85082 Differential Revision: https://developer.blender.org/D10213