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
2022-02-18Cleanup: Rename original curve object type enumHans Goudey
This commit renames enums related the "Curve" object type and ID type to add `_LEGACY` to the end. The idea is to make our aspirations clearer in the code and to avoid ambiguities between `CURVE` and `CURVES`. Ref T95355 To summarize for the record, the plans are: - In the short/medium term, replace the `Curve` object data type with `Curves` - In the longer term (no immediate plans), use a proper data block for 3D text and surfaces. Differential Revision: https://developer.blender.org/D14114
2022-02-18Merge remote-tracking branch 'origin/blender-v3.1-release'Sybren A. Stüvel
2022-02-18Fix T95724: boundary error in `BLI_str_unescape_ex`Sybren A. Stüvel
Fix boundary error in `BLI_str_unescape_ex`. The `dst_maxncpy` parameter indicates the maximum buffer size, not the maximum number of characters. As these are strings, the loop has to stop one byte early to allow space for the trailing zero byte. Thanks @mano-wii for the patch!
2022-02-18Nodes: Update dependency graph when removing some nodesHans Goudey
When removing a node that has a dependence on an ID, like the object info node, the dependency graph relations weren't updated. This can cause unexpected performance issues if a complex node tree continues to depend on an ID that it doesn't actually use anymore. To fix this case, tag relations for an update if the node has a data-block socket. Fixes part of T88332 Differential Revision: https://developer.blender.org/D14121
2022-02-18Fix T95135: improve error filtering non-existant anim dataSayed Amin
If there is no animation at all, or it's all hidden, the Euler Filter operators poll now fails with a message that explains this a bit more, instead of just the generic "context is wrong" error. Reviewed By: sybren Maniphest Tasks: T95135 Differential Revision: https://developer.blender.org/D13967
2022-02-18LibOverride: Fix resync sometimes deleting root ID of other liboverrides.Bastien Montagne
While this should not happen in theory, very bad/broken/dirty files can lead to such situations. So we need to re-ensure valid root IDs after resync (for now, done after each 'library indirect level' pass of resync, this may not be 100% bulletproof though, time will say). Found while investigating Blender studio issues in Snow parkour short.
2022-02-18LibOverride: Fix potential broken cases re ShapeKeys when finding hierarchy ↵Bastien Montagne
root ID. In some cases broken files could lead to selecting a shapekey as hierarchy root ID, which is not allowed. Found while investigating Blender studio issues in Snow parkour short.
2022-02-18Merge branch 'blender-v3.1-release'Sergey Sharybin
2022-02-18Fix graphics interop resources leak in CyclesSergey Sharybin
When new display driver is given to the PathTrace ensure that there are no GPU resources used from it by the work. This solves graphics interop descriptors leak. This aqlso fixes Invalid graphics context in cuGraphicsUnregisterResource error when doing final render on the display GPU. Fixes T95837: Regression: GPU memory accumulation in Cycles render Fixes T95733: Cycles Cuda/Optix error message with multi GPU devices. (Invalid graphics context in cuGraphicsUnregisterResource) Fixes T95651: GPU error (Invalid graphics context in cuGraphicsUnregisterResource) Fixes T95631: VRAM is not being freed when rendering (Invalid graphics context in cuGraphicsUnregisterResource) Fixes T89747: Cycles Render - Textures Disappear then Crashes the Render Maniphest Tasks: T95837, T95733, T95651, T95631, T89747 Differential Revision: https://developer.blender.org/D14146
2022-02-18Cleanup: Fix incompatible pointer types warningsPeter Kim
2022-02-18Merge branch 'blender-v3.1-release'Bastien Montagne
2022-02-18Fix broken shapekeys: check for 'NULL' `from` pointer too.Bastien Montagne
Add check for `NULL` `from` pointer to `BLO_main_validate_shapekeys`, and delete these shapekeys, as they are fully invalid and impossible to recover. Found in a studio production file (`animation test/snow_parkour/shots/0040/0040.lighting.blend`, svn rev `1111`). Would be nice to know how this was generated too...
2022-02-18Curves: add initial edit mode supportKévin Dietrich
This adds initial support for edit mode for the experimental new curves object. For now we can only toggle in and out of the mode, no real interraction is possible. This patch also adds empty menus in edit mode. Those were added mainly to quiet warnings as the menus are programmatically added to the edit mode based on the object type and context. Ref T95769 Reviewed By: JacquesLucke, HooglyBoogly Maniphest Tasks: T95769 Differential Revision: https://developer.blender.org/D14136
2022-02-18Fix strict compilation warningsSergey Sharybin
2022-02-18Curves: initial brush system integration for curves sculpt modeJacques Lucke
This adds the boilerplate code that is necessary to use the tool/brush/paint systems in the new sculpt curves mode. Two temporary dummy tools are part of this patch. They do nothing and only serve to test the boilerplate. When the first actual tool is added, those dummy tools will be removed. Differential Revision: https://developer.blender.org/D14117
2022-02-18XR: Enable Vive Focus 3 controller extensionPeter Kim
Allows controller-specific action bindings for the HTC Vive Focus 3 controller. Currently not supported by any OpenXR runtimes (save for the dedicated Focus 3 runtime in developer early-access: https://forum.vive.com/topic/11354-openxr-support-for-focus-3-early-access-application-form), but useful to have for the future.
2022-02-18Cleanup: Use compact license header.Jeroen Bakker
New file introduced in blender-v3.1-release branch.
2022-02-18Merge branch 'blender-v3.1-release'Jeroen Bakker
2022-02-18Fix T95809: Check color space changes to refresh image engine.Jeroen Bakker
Previous commit fixed the compositor node, this commit is related to the shader tree. Also checks if the color space or alpha mode have changed.
2022-02-18Fix T95809: Compositor Node not directly updated in image editor.Jeroen Bakker
Image wasn't tagged to be dirty.
2022-02-18Image Engine: Store image usage to identity changes.Jeroen Bakker
Previous implementation had a copy of the image user, which doesn't contain all the data to identify changes. This patch introduces a new struct to store the data and can be extended with other data as well (color spaces, alpha settings).
2022-02-18Cleanup: simplify viewmove_applyCampbell Barton
Check for a camera-view before checking if the view is locked to the cursor/object since the camera-view takes priority, it reads better to check that first. Also reuse the event offset variable.
2022-02-183D View: Add camera view pan/zoom support for NDOFCampbell Barton
NDOF navigation in a camera view now behaves like orthographic pan/zoom. Note that NDOF orbiting out of the camera view has been disabled, see code comment for details. Resolves T93666.
2022-02-18Cleanup: move camera-view pan/zoom into utility functionsCampbell Barton
2022-02-18Merge branch 'blender-v3.1-release'Hans Goudey
2022-02-18Fix T93526: Missing tooltip for attribute search buttonPratik Borhade
For the attribute search button, the tooltip was missing if the input socket type has attribute toggle activated. Differential Revision: https://developer.blender.org/D14142
2022-02-18Fix wrong method name in gpu documentationGermano Cavalcante
`use_program_point_size` --> `program_point_size_set`.
2022-02-17Merge branch 'blender-v3.1-release'Brecht Van Lommel
2022-02-17Fix build error on some compilers after recent bugfixBrecht Van Lommel
2022-02-17Merge branch 'blender-v3.1-release'Brecht Van Lommel
2022-02-17Fix T95368: wrong white point adaptation for Linear ACES color spaceBrecht Van Lommel
This affected loading of EXR files with set to Linear ACES colorspace, as well as the sky texture for in some custom OpenColorIO configurations. Use the builtin OpenColorIO transform from ACES AP0 to XYZ D65 to fix this.
2022-02-17Fix: Debug build error with vector type divisionHans Goudey
The idea is to keep `is_any_zero` in the `blender::math` namespace, so instead of trying to be clever, just move it there and expand the function where it was used in the class.
2022-02-17Merge branch 'blender-v3.1-release'Sebastian Parborg
2022-02-17Cleanup: Move more cmake library variables to be advancedSebastian Parborg
I noticed that there were a few variables that should not be visible per default. It seems to me to simply be an oversight, so I went ahead and cleaned them up. Reviewed By: Sybren, Ray molenkamp Differential Revision: http://developer.blender.org/D14132
2022-02-17GPU: Remove runtime sampler texture slot assignmentClément Foucault
This avoid potential shader recompilation and is more in line with vulkan design.
2022-02-17OCIO: Port shader creation logic to use GPUShaderCreateInfoClément Foucault
This commit should suffice to make the shader API agnostic now (given that all users of it use the GPU API). This makes the shaders not trigger a false positive error anymore since the binding slots are now garanteed by the backend and not changed at after compilation. This also bundles all uniforms into UBOs. Making them extendable without limitations of push constants. The generated uniforms from OCIO are not densely packed in the UBO to avoid complexity. Another approach would be to use GPU_uniformbuf_create_from_list but this requires converting uniforms to GPUInputs which is too complex for what it is. Reviewed by: brecht, jbakker Differential Revision: https://developer.blender.org/D14123
2022-02-17Fix part of T95654: Cycles crash with text objects in excluded view layersBrecht Van Lommel
This is a bug on the Blender side, where the depsgraph does not have proper relations for text object duplis and fails to include the required materials in the dependency graph. But at least Cycles should not crash.
2022-02-17Cleanup: Replace direct `id.lib` pointer checks with `ID_IS_LINKED` macro ↵Bastien Montagne
usages.
2022-02-17Fix build errors on Linux/clang after recent changesBrecht Van Lommel
2022-02-17Fix: Memory leak in recently added curves copy functionHans Goudey
Specify that the destination curve must be initialized, and free the existing attributes (which `CustomData_copy` doesn't do).
2022-02-17Camera: Simplify View Frame codeGermano Cavalcante
- No need for `normal_tx` array if we normalize the planes in `plane_tx`. - No need to calculate the distance squared to a plane (with `dist_signed_squared_to_plane_v3`) if the plane is normalized. `plane_point_side_v3` gets the real distance, accurately, efficiently and also signed. So normalize the planes of the member `CameraViewFrameData::plane_tx`.
2022-02-17Merge branch 'blender-v3.1-release'Brecht Van Lommel
2022-02-17Build: update CMake to support OpenImageIO 2.3.4Brecht Van Lommel
FindOpenImageIO was updated to link to separate OpenImageIO_Util for new versions, where it is required. For older versions, we can not link to it because there will be duplicated symbols. Ref D14128
2022-02-17Build: update CMake to support OpenEXR 3Brecht Van Lommel
FindOpenEXR was updated to find new lib names and separate Imath. It's all added to the list of OpenEXR include dirs and libs. This keeps it compatible with both version 2 and 3 for now, and doesn't require changes outside the find module. Ref D14128
2022-02-17Images: update code to support OpenEXR 3Sebastian Parborg
Compatibility with OpenEXR 2 is preserved, since Blender releases and Linux distribution packages can be on different versions. Ref D14128
2022-02-17Merge remote-tracking branch 'origin/blender-v3.1-release'Kévin Dietrich
2022-02-17Fix compile error on MSVCKévin Dietrich
`uint` is POSIX type, use `GLuint` like for the rest of the code.
2022-02-17Cleanup/fix comment.Bastien Montagne
2022-02-17Merge remote-tracking branch 'origin/blender-v3.1-release'Kévin Dietrich
2022-02-17Fix T94881: GPU subdivision fails with high polycount coarse meshesKévin Dietrich
Coarse meshes with high polycount would show as corrupted when GPU subdivision is used with AMD cards This was caused by the OpenSubdiv library not taking `GL_MAX_COMPUTE_WORK_GROUP_COUNT` into account when dispatching computes. AMD drivers tend to set the limit lower than NVidia ones (2^16 for the former, and 2^32 for the latter, at least on my machine). This moves the `GLComputeEvaluator` from the OpenSubdiv library into `intern/opensubdiv` and modifies it to compute a dispatch size in a similar way as for the draw code: we split the dispatch size into a 2 dimensional value based on `GL_MAX_COMPUTE_WORK_GROUP_COUNT` and manually compute an index in the shader. We could have patched the OpenSubdiv library and sent the fix upstream (which can still be done), however, moving it to our side allows us to better control the `GLComputeEvaluator` and in the future remove some redundant work that it does compared to Blender (see T94644) and probably prepare the ground for Vulkan support. As a matter of fact, this patch also removes the OpenGL initialization that OpenSubdiv would do here. This removal is not related to the bug fix, but necessary to not have to copy more files/code over. Differential Revision: https://developer.blender.org/D14131