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-01-09Rename last vector methods to use the static function versionClément Foucault
2022-01-09Rename normalize to use the static function versionClément Foucault
2022-01-09BLI_float3: add normalize to double and float2Clément Foucault
2022-01-09BLI_float: Rename length & length_squared to use static versionClément Foucault
2022-01-09BLI_float: Rename normalize to use static versionClément Foucault
2022-01-09BLI_float3: Add static functions equivalent of public methodsClément Foucault
This is to ease the port towards the new templated functions.
2022-01-09Add vector templatesClément Foucault
2022-01-08Fix T94713: Alembic crash with empty frames and velocitiesKévin Dietrich
Some software or processing tools (videogrammetry in this case) may export malformed files with velocity data even when the frame is empty for some reason. We need to explicity compare the data size with the vertex size, and refuse to load the attribute if there is a data size mismatch.
2022-01-08Fix T94534: dangling pointer in internal link after removing socketJacques Lucke
The dangling pointer caused errors further down the line. The solution is to simply delete an internal link when one of the corresponding sockets is removed (just like normal links are removed as well).
2022-01-08Cleanup: Use new socket builder APIAaron Carlisle
2022-01-08Cleanup: Loop through socket listbase instead of arrayAaron Carlisle
The socket arrays will be removed when using the new socket builder. So instead we have to loop through the node outputs list.
2022-01-08Fix Cycles compile error after last own commitJulian Eisel
We can't include `BLI_utildefines.h` in `RNA_types.h` since Cycles includes that, but duplicates some of the util defines. So you'd have duplicated definitions.
2022-01-08Cleanup: Remove unused code from BKE_node.hHans Goudey
Remove a variety of unused functions, declarations without definitions, incorrect comments, and defines that have been commented for years
2022-01-08Fix Adjust Last Operation panel showing session UUID number buttonJulian Eisel
This is implementation specific data that should never be exposed to regular users. Also make sure this data is not saved to presets.
2022-01-08RNA: Support bitwise operators for property flags in C++Julian Eisel
Needed for the following commit.
2022-01-07Cleanup: Use forward declaration of struct in headerHans Goudey
This meant that BKE_mesh.h couldn't be used without the DNA headers first.
2022-01-07Fix: connecting hair fails on meshes with no generative modifiersAleksi Juvani
Fixes a bug introduced in rB5dedb39d447b. `mesh_original` is not set if the mesh has no generative modifiers, in which case we can use `mesh_final`, which would seem to be consistent with the rest of the particle code. An alternative approach would be to make sure that `mesh_original` is always set in `deformVerts`. Differential Revision: https://developer.blender.org/D13754
2022-01-07Fix wrong shadow terminator geometry offset with deformation motion blurOlivier Maury
Differential Revision: https://developer.blender.org/D13759
2022-01-07Fix wrong shadow terminator geometry offset for instancesOlivier Maury
Must take into account SD_OBJECT_TRANSFORM_APPLIED to determine if the normal was already in world space. Differential Revision: https://developer.blender.org/D13639
2022-01-07Fix T93350: Cycles renders shows black during rendering huge resolutionsBrecht Van Lommel
The root of the issue is caused by Cycles ignoring OpenGL limitation on the maximum resolution of textures: Cycles was allocating texture of the final render resolution. It was exceeding limitation on certain GPUs and driver. The idea is simple: use multiple textures for the display, each of which will fit into OpenGL limitations. There is some code which allows the display driver to know when to start the new tile. Also added some code to allow force graphics interop to be re-created. The latter one ended up not used in the final version of the patch, but it might be helpful for other drivers implementation. The tile size is limited to 8K now as it is the safest size for textures on many GPUs and OpenGL drivers. This is an updated fix with a workaround for freezing with the NVIDIA driver on Linux. Differential Revision: https://developer.blender.org/D13385
2022-01-07Cycles: Fix Metal buildMichael Jones
This patch fixes a couple of new Metal kernel compilation errors: 1) a kernel parameter count overflow, and 2) missing address space qualifiers. Reviewed By: brecht Differential Revision: https://developer.blender.org/D13763
2022-01-07LibOverrides: small refactor of resync main public function.Bastien Montagne
Simplify signature of `BKE_lib_override_library_resync` and make it a shallow wrapper around new internal `lib_override_library_resync` that can then be easily extended for other internal needs. Not functional changes expected here.
2022-01-07Fix T94078: Wrong Bound Box calculated for curvesGermano Cavalcante
`DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN` creates temporary objects that correspond to duplicates or instances. These temporary objects can share same pointers with the original object as in the case of Bounding Box. Bound Box of temporary objects is marked dirty in `BKE_object_replace_data_on_shallow_copy` since `ob->data` is different. This causes the original Bounding Box, calculated for the evaluated geometry, to be lost. The solution in this commit is to change the boundbox reference of the temporary objects, so the boundbox of the non-temporary object (with the data curve) is not marked dirty. Differential Revision: https://developer.blender.org/D13581
2022-01-07Cleanup: Remove unused numapi librarySergey Sharybin
2022-01-07Remove dead numaapi code in blenlibSergey Sharybin
It it rather an old experiment now which didn't pay off. The initial idea was to have main and jobs threads on fast nodes of TR2 processors. This didn't really work reliably because in Blender we need to be able to create nested threads without their affinity set. This is not how some of OS are creating nested threads, and we don't always have access to child threads to reset their affinity. So overall complexity of the initial idea implementation became too much compared to the performance gain.
2022-01-07LibOverride: Add tag to libraries that had to be recursively resynced.Bastien Montagne
Request from studio, to help identify quickly libs that need update. NOTE: Currently only outputing INFO log in console, display of this info in the outliner will come in a separate commit.
2022-01-07Cycles: Remove usage of libnumaapiSergey Sharybin
No need for it now since all the threading queries and scheduling is done via TBB. Should be no functional changes as all the removed code is supposed to be unused.
2022-01-07Fix T94310: Blender doesn't support with 128 threads well in Win11Jagannadhan Ravi
Query TBB for the maximum allowed concurrency, which is free from a bug in own concurrency detection code. One thing to keep in mind is that now Cycles is limited by the number of threads in the TBB areana from which Session is created. This isn't a problem for Blender since we do not limit arena on Blender side. Could be something to watch out for in other Cycles integrations. Differential Revision: https://developer.blender.org/D13658
2022-01-07Fix T86952: Buffer overflow reading specific DDS imagesSergey Sharybin
Add a data boundary check in the flipping code. This code now also communicates the number of mipmap levels it processed with an intent to avoid GPU texture from using more levels than there are in the DDS data. Differential Revision: https://developer.blender.org/D13755
2022-01-07Fix T94659: crash when deleting instances (part 2)Jacques Lucke
This was missing from rB3e92b4ed2408eacd126c0. Before only the Separate Geometry node was fixed, because that node was used in the file from the bug report. The same issue existed in the Delete Geometry node as well though.
2022-01-07Fix T94707: inverted output of separate geometry node incorrectJacques Lucke
This was an oversight in rB3e92b4ed2408eacd126c0.
2022-01-07Cleanup: exclude uiFont from DNA, rename filename -> filepathCampbell Barton
This isn't saved to the preferences, so there is no need to store in DNA. Also remove unused `r_to_l` member.
2022-01-07Fix T94708: negative reference count error with Python API callbacksCampbell Barton
Regression in 7972785d7b90771f50534fe3e1101d8adb615fa3 that caused Python callback arguments to be de-referenced twice - potentially accessing freed memory. Making a new-file with a circle-select tool active triggered this (for example). Now arguments aren't de-referenced when Blender it's self has already removed the callback handle.
2022-01-07Cleanup: use the ELEM macroCampbell Barton
2022-01-07Fix T94629: The IMB_flip API would fail with large imagesJesse Yurkovich
Fix IMB_flip[xy] to handle cases where integer overflow might occur when given sufficiently large image dimensions. All of these fixes were of a similar class where the intermediate sub-expression would overflow silently. Widen the types as necessary. Differential Revision: https://developer.blender.org/D13744
2022-01-07Fix BKE_image_ensure_tile_token being called with a full pathCampbell Barton
Assert that only the file name component is passed in since special handling for UDIM should only be applied to the file name. Also remove an unnecessary NULL check on the filename argument.
2022-01-07Cleanup: use static sets for comparison, quiet unused arg warningsCampbell Barton
2022-01-07Cleanup: rename sculpt_brushes.c -> sculpt_brush_types.cCampbell Barton
This better differentiates sculpt brush types with brush data-blocks, since the same sculpt brush type may be used for many brushes.
2022-01-07Cleanup: remove redundant const qualifiers for POD typesCampbell Barton
MSVC used to warn about const mismatch for arguments passed by value. Remove these as newer versions of MSVC no longer show this warning.
2022-01-07Cleanup: Fix spelling in filenameAaron Carlisle
2022-01-07Cleanup: Add `bf_nodes_texture` libraryAaron Carlisle
For sake of consistencey with other node tree types, create its own cmake module. This change helps keep `bf_nodes` focused on generic nodes files. Texture nodes are end of life and hopefully for Blender 4.0 they can be removed. It is not expected that these will see the updates that the other nodes are getting. This change also helps isolate the end of life files, we may move some texture specific node tree execution code out of `node_exec` and into a `node_texture_exec` files. Differential Revision: https://developer.blender.org/D13743
2022-01-07Cleanup: Use new socket builder APIAaron Carlisle
This commit converts most shader or bsdf nodes.
2022-01-06Fix T94635: Sculpt Smooth in Surface mode with Anchored Stroke crashPhilipp Oeser
Sculpt Smooth in Surface mode (as opposed to Laplacian) needs a cache initialized on first time. In anchored stroke mode with spherical falloff this was skipped though (because this starts of with no PBVH nodes and an early return checks for this) and `first_time` was set to false before cache initialization. Now move the cache initalization to happen earlier (same as the cache initialization for automasking). Maniphest Tasks: T94635 Differential Revision: https://developer.blender.org/D13746
2022-01-06BLI_floatX: Add most missing constructors and operatorClément Foucault
This should have no side effect. This reverse the dependency, with `float2` being needed for `float3` and so on. This is needed for extensive usage of these types in the draw engines. Differential Revision: https://developer.blender.org/D13756
2022-01-06Fix Cycles updating display unnecessarily when stopping 3D viewportBrecht Van Lommel
Debug code accidentally committed in 466b50d. This was found while investigating issues with D13385.
2022-01-06Fix T94672: incorrect Workbench shadows with GPU subdivisionKévin Dietrich
The `lines_adjacency` IBO build in the GPU subdivision case was missing edges at the boundaries of open meshes. As it is used for the shadow pass, the shadows were then not clipped properly. This would also make X-Ray mode render differently in those cases. To fix this, we can simply reuse the buffer finalization routine from the non-subdivision case, as such edges are handled there.
2022-01-06GPU subdiv: fix wrong data sizes used for lines adjacency IBOKévin Dietrich
Function parameters were mismatched, causing an assertion failure in debug builds.
2022-01-06Depsgraph: only link 'IK Constraint -> Init IK Tree' if animated.Alexander Gavrilov
This relation is intended to ensure that the properties of the IK constraint are ready by the time the IK solver tree is built. This however can cause spurious dependency cycles, because there is only one init tree node for the whole armature, and the relation actually implies dependency on all properties of the bone. This patch reduces spurious dependencies by only creating the relation if any properties of the IK constraint specifically are animated. Differential Revision: https://developer.blender.org/D13714
2022-01-06Bone Overlay: support changing bone wireframe opacity.Alexander Gavrilov
When weight painting the bone overlay is extremely intrusive, effectively requiring either extensive use of hiding individual bones, or disabling the whole bone overlay between selections. This addresses the issue by adding a bone opacity slider that is used for the 'wireframe' armature drawing mode. It directly controls the uniform opacity as a straightforward option. Differential Revision: https://developer.blender.org/D11804
2022-01-06Depsgraph: fix spurious cycles with identically named idprops on bones.Alexander Gavrilov
If multiple bones have a custom property with the same name, depsgraph didn't distinguish between them, potentially leading to spurious cycles. This patch moves ID_PROPERTY operation nodes for bone custom properties from the parameters component to individual bone components, thus decoupling them. Differential Revision: https://developer.blender.org/D13729