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-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
2021-01-26Fix T85049: Geometry Nodes: How to handle instances with shear?Sebastian Parborg
Use transform matrices instead of loc, rot, scale variables to store instance transforms. Reviewed By: JacquesLucke Differential Revision: http://developer.blender.org/D10211
2021-01-26Fix T84847: Crash after splitting effect stripRichard Antalik
`seq->tmp` was left in invalid state after `SEQ_sequence_base_dupli_recursive()` which is run by `scene_copy_data()` Ensure all strips have `seq->tmp` set to `NULL` before splitting strips.
2021-01-26Fix T79922: Cache of meta strip not invalidatedRichard Antalik
Meta strip cache is not invalidated if strip inside of meta strip is invalidated. Find all metastrips that contain invalidated strip and invalidate them recursively. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10192
2021-01-26Fix T84160: Wrong DOF when camera is overridenRichard Antalik
Workbench engine used active camera to setup DOF effect even when camera was overridden. Store camera override in `WORKBENCH_PrivateData` and use it in `workbench_dof_engine_init()` Reviewed By: brecht Differential Revision: https://developer.blender.org/D9952
2021-01-26VSE: Fix memory leak when building proxiesRichard Antalik
With no valid strips selected, file_list is not freed. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10191
2021-01-26Fix T84979: No sound after changing strip datablockRichard Antalik
Tag relations to update to load new sound. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10182
2021-01-26Fix T84935: improve previous fix for boolean custom data layersJacques Lucke
This improves the fix introduced in rBdc8b31af578bfcf9f77dbce6d7b7da1006a3c8c1. While it did not result in other bugs afaik, I thought it would be good to make the fix more specific, in case some other code did expect `layer->data` to be null. This updated fix checks for the very specific case the fix was intended for.
2021-01-26Cleanup: compiler warningsBrecht Van Lommel
If one method is marked as override, clang warns if others are not.
2021-01-26Asset Browser: fix context properties reported to PythonSybren A. Stüvel
Change `"active_id"` to `"id"` so that tab completion in the asset browser context returns the correct properties. 055ef5df615632f81e30e39ae47b42a87af350ca renamed the `active_id` property to `id`, but `dir(thecontext)` still returned `"active_id"`.
2021-01-26Viewport Rendering: Don't clamp when overlays are disabled.Jeroen Bakker
During viewport rendering the color values were clamped in order to apply the overlay on top of it. This clamping would show the scene colors washed out. This patch adds a work around to skip the clamping when the overlays are turned off. Parial fix for {T77909}
2021-01-26GPU: Enable HQ normals workaround for any AMD Drivers on Polaris.Jeroen Bakker
2021-01-26Fix T84708: Versioning for Set Alpha nodeRobert Guetzkow
The versioning code introduced in rB38df935c0985 skips the composite node tree that is used by the scene thus not correctly versioning Set Alpha nodes outside of node groups. This fix iterates through all node trees to version all Set Alpha nodes. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10110
2021-01-26GPU: Enable HQ normals workaround for AMD 21.1.1 driver.Jeroen Bakker
AMD 21.1.1 still has the same issues as reported in T82856.