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
2021-02-03Fix T85314 GPU: Drawlist submit data overflows.Clément Foucault
This was caused by an incorrect bound check. Since we now use different data type for indexed and non-indexed drawcalls, we need to check if the next drawcall is going to overflow the buffer.
2021-02-02Fix T85225: Variable scope in ridged multi-fractal noiseRobert Guetzkow
This patch fixes a bug introduced in rB74188e65028d268af887ab2140e4253087410c1e. The commit incorrectly moved the declaration and intialization of the variable `pwr` inside the loop. Since the value was originally modified in each iteration based on it's previous value and `pwHL` through `pwr *= pwHL`, this change in scope was wrong. It resetted the value in each iteration. This patch moves the declaration of `pwr` outside the loop again. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D10258
2021-02-02Fix T84649: Quick liquid causing crash on scale operationSebastián Barschkis
This commit makes use of the updated fluid sources files (previous commit rB9ad828dbad94d279521875db47a3472a38cc9b29)
2021-02-02Fluid: Updated Mantaflow source filesSebastián Barschkis
Includes improvements for the file IO. Namely, more meta data will be written from now on. This change is required to prevent IO issues (e.g. T84649) that arised through the use of sparse grids caching (introduced in 2.92).
2021-02-02Fix freestyle render pass not being created when there are no strokesSebastian Parborg
It could lead to missing images when outputing the pass to an image sequence.
2021-02-02Fix T83450: Missing 4th studio light in preview iconNathan Craddock
Due to an off-by-one error the generated studio light icons did not show the influence of the 4th light. This fix changes the loop to iterate over all of the lights when computing the lighting. Differential Revision: https://developer.blender.org/D10283
2021-02-02Fix T85155: Vertex groups from object don't transfer to next nodes modifierHans Goudey
Because the the vertex group name-to-index map is stored in the object rather than object data, the object info node has to replace the map when it replaces the mesh component on the geometry set with mesh data from another object. This normally works fine as a way to use the vertex groups from the input mesh, but when passing this mesh to the next modifier, the entire mesh component was replaced, removing the vertex group name map. This commit adds a function to replace only the mesh data in mesh component, uses it in the modifier code, and updates the relevant comments. Note that the fact that vertex group names are stored in object data is a legacy design decision that should be reevaluated at some point. Differential Revision: https://developer.blender.org/D10256
2021-02-02Fix T85301: Eevee does not respect collection instance offset for hairPhilipp Oeser
This resulted in hair drawing with an offset if an instance_offset was set. note: Usually the instance_offset gets combined with the objects obmat in 'make_duplis_collection' / 'make_dupli', see > /* Combine collection offset and `obmat`. */ Using the resulting DupliObject->mat instead does include the instance_offset, but this results in double-transforms (something that I have not investigated further), so now reconstruct the correct matrix from scratch. Maniphest Tasks: T85301 Differential Revision: https://developer.blender.org/D10285
2021-02-02creator: add missing '--debug-*' arguments under debugging optionsCampbell Barton
Only print "Other Options" when the heading has content to show.
2021-02-02Fix T85194: Smart UV does not respect "Correct Aspect" correctlyPhilipp Oeser
This lead to wrong, stretched UVs regardless of the ON/OFF state of "Correct Aspect" option (some code in the operator respected this setting properly, whereas it was hardcoded in another part). Before rB9296ba867462, `uvedit_pack_islands_multi` was always called with `correct_aspect` = false for the UnwrapOptions. After rB9296ba867462, `ED_uvedit_pack_islands_multi` was always called with `correct_aspect` = true for the UVPackIsland_Params. Both seem wrong [in that they do not take the operator setting into account]. Now respect that setting [same as the following `uv_map_clip_correct_multi` does as well btw.] Now results match 2.90 [where this was still python] perfectly. Maniphest Tasks: T85194 Differential Revision: https://developer.blender.org/D10246
2021-02-02cmake/deps: remove 'tcl' language support from sqliteCampbell Barton
Build sqlite without `tcl` support, as it's causes an error on installation when `tcl` is installed into the systems `/usr/lib/` and install isn't running as root. This could be resolves by adding `tcl` as a dependency however it's not needed for Python's sqlite integration. Linux distributions (Debian & Arch at least) split this off into a separate package (which Python doesn't depend on), so there is no need for Blender to include sqlite's `tcl` integration either. Reviewed By: brecht, LazyDodo Ref D10281
2021-02-01Fix T81843 Bones invisible using Weight Paint + Wireframe shading + Bone X-RayClément Foucault
This was caused by the paint overlay drawing after the infront pass. Moving the paint overlay before it fixes the issue. We might even do that for more mode overlays.
2021-02-01Overlay: Fix Z axis planes rendered even if not neededClément Foucault
This remove some drawn completely transparent pixels.
2021-02-01Fix T85203: GPencil: Drawing on locked axis planeFalk David
Drawing on e.g. the X-Z plane was broken due to an earlier commit (rBef28da262342). This was causing the projection when drawing on an axis plane to fail. The fix checks that the user is in view plane projection mode. Reviewed By: antoniov Maniphest Tasks: T85203 Differential Revision: https://developer.blender.org/D10252
2021-02-01Fix T81177 EEVEE: Missing shadow if last material has no shadowClément Foucault
This was caused by the boolean not being a union of all the material slots.
2021-02-01DRW: Fix render wrong orthographic depth conversionClément Foucault
Fix for both workbench and Gpencil. Fixes T78574 GPencil: Z pass combine not work
2021-02-01GPU: Fix performance regression on AMD GPUClément Foucault
This was caused by a missing check left over during the GL isolation. Fix T84277 Solid and Wireframe viewport performance hit on AMD Radeon GPUs
2021-02-01Usual UI messages fix...Bastien Montagne
2021-02-01VSE: Fix proxy images have incorrect sizeRichard Antalik
This bug happens when media size doesn't match scene size and proxies are enabled. This is because some strips are rendered in preview size already - effects, mask or strips using proxies. If strip input is prescaled it needs to be known when transforming images, which does also scaling to preview size as one operation. whether image needs prescaling is defined in function `seq_need_scale_to_render_size()` Problem was introduced in 571362642201. Previously all images were scaled to fit into preview, and this was considered as baseline for further image transformation. Reviewed By: sergey Differential Revision: https://developer.blender.org/D10183
2021-02-01Fix T85252: Gpencil interpolate sequence crash in new scenesAntonio Vazquez
The value of the step was not initializated for new scenes.
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 T85148: OptiX viewport denoising regressionPatrick Mours
Commit 6e74a8b69f215e63e136cb4c497e738371ac798f changed the denoiser input passes default to include the normal pass. This does not always produce optimal images though, hence why the default was previously set to only include the color and albedo passes. This restores that behavior, so that viewport denoising with OptiX produces the same results as before.
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-29Cleanup: rename variables for gizmo templatesCampbell Barton
The abbreviation was from 'manipulator', which was changed to gizmo during development. Also correct operator description.
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.