Increase max parameters to 38 and version the old and new principled bsdf for eevee legacy
Version vector math length squared function. A hacky solution but will look for a proper fix later
Some of the files are not accurate to blender-v4.3-release and not due to any goo engine additions
Likely due to merges from beyond 4.3 that made it into 4.2 since it is an LTS and gets more support
So merging these changes to keep it in line with the release version of 4.3
Refactor from e5a921ad9b did not account for the fact that some
`poll_instance` functions may require valid ID pointers in the checked
node. This is the case e.g. of the node group node, as it also checks
all of the nodes inside the referenced nodegroup.
This commit also fixes a logical mistake in the polling check, that
would systematically prevent pasting of nodes with no `poll_instance`
callback.
Pull Request: https://projects.blender.org/blender/blender/pulls/141729
Co-authored-by: Bastien Montagne <bastien@blender.org>
Pull Request: https://projects.blender.org/blender/blender/pulls/144799
Reported on chat, confirmed with the python docs which lists
cursor_position as "float array of 3 items in [1.17549e-38, inf]"
Root cause is a fun fact about floats, FLT_MIN is the smallest positive
value possible, not the largest negative value (like INT_MIN)
Pull Request: https://projects.blender.org/blender/blender/pulls/144657
When using the resize dyntopo operator the overlay helping to choose
the new size didn't work properly on AMD GPUs. The cause was that only 2
components of the line displacement was initialized.
Also fixes: #83623
Pull Request: https://projects.blender.org/blender/blender/pulls/144338
Temporary directory handling had a logical error, assuming the
"session" temporary directory was owned and created by Blender
and could be recursively removed on exit.
However, it's possible creating the session sub-directory fails,
in that case the temporary directory was used for the "session".
This meant setting `C:\` as the temporary directory in the preferences
would attempt to recursively remove `C:\` on exit.
Resolve with the following changes:
- Only perform a recursive removal on the temporary directory
if a session sub-directory was created.
- If the creating the user-preferences temporary "session" sub-directory
fails fall back to the systems temporary directory and try to
create the "session" directory there.
Previously this was only done if the preference path didn't exist.
The preferences path was still used if it existed but couldn't be
written to.
Include a test to ensure this is working as expected.
Ref !144042
Bounds check material indices since they may exceed the total number of
materials. This looks to be an oversight in [0] which added support
for an OpenGL evaluator.
[0] eed45d2a23
Since the tangent attributes are now recomputed inside the loop over uv
layers, looping directly over this mesh data is dangerous, as computing
the tangents attributes might trigger some re-allocations, leading to
invalid memory accesses when accessing the next uv layer.
Solved by caching uv layers' names in a list beforehand, the uvlayers
themselves are not even needed for tangent data handling.
Regression from e0a9e98cbd.
Only last tangents layer was written to all tangent layers before this fix.
Code before fix evaluate tangents for all layers into mesh loops data (which keeps data only for one layer) and then writes information about 'each' layer which is actually only the last one.
Code after fix evaluates tangents in the beginning of the loop that exports tangent data so that data for correct layer is being written into fbx.
Co-authored-by: Andrey Zhitkov
Pull Request: https://projects.blender.org/blender/blender/pulls/141839
Displaying negative numbers would attempt to read from a negati
array index on systems that don't support RGBA cursors.
Resolving by making the value absolute before displaying.
Back ported:
- 747ab523c33687dfd7b50309e4e4250c733d70a4
- f62422884bf35b3c6440652a1ac50f9445419978
Pull Request: https://projects.blender.org/blender/blender/pulls/143011