August 16, 2021, 04:19 (GMT) |
Fix T89984: Improve Icon previews reflective and transmissive materials. Before this commit rendering material icons the floor will is hidden. This reduces the readability of reflective/refractive materials. check patch for additional screenshots and notes. This patch will switch the floor material that uses ray visibility tricks to render a floor for reflective rays. Eevee uses screen space reflections that makes this a different problem. There is nothing else drawn in the scene in screen space so we need a different trick. Using math we convert a reflective ray to UV space and generate a world that projects a checker pattern to infinity. As now the floor is in the world it is being reflected via a cubemap. As the film is transparent the background (including the floor isn't rendered) In the future when Eevee supports vulkan raytracing we can re-evaluate and perhaps remove this approximation. We tried lightprobes but that wasn't able to do the trick. Using the compositor would lead to more memory usage (render layers and intermediate buffers) and slower performance. Solution has been validated with Simon Reviewed By: sybren, Severin Differential Revision: https://developer.blender.org/D11988 |
August 16, 2021, 04:19 (GMT) |
BLF: Do Not Cache Unused Rendered Glyphs The loading of a font size or style renders bitmaps of the characters 0-255 and stores them in a cache. But glyphs 128-255 in this cache are not accessible. What used to be ansi high-bit characters are now multi- byte UTF-8 sequences. Therefore this patch reduces the glyph_ascii_table size to 128 and only caches characters 32-127, the visible portion of ASCII, which greatly reduces the time to load a font. See D12189 for more details. Differential Revision: https://developer.blender.org/D12189 Reviewed by Campbell Barton |
August 16, 2021, 04:19 (GMT) |
Fix: DNA struct alignment on 32 bit Some of the dna structs were not properly aligned for 32 bit builds causing issues for some of the 32 platforms Debian builds for. Reviewed By: sergey, brecht Differential Revision: https://developer.blender.org/D9389 |
August 16, 2021, 04:19 (GMT) |
Makesdna: Fix detecting 32 bit padding issues. Makesdna fails to detect issues in 32 bit code that can only be resolved by adding a padding pointer. We never noticed since we ourselves no longer build for 32 bit, but debian's 32 bit builds got bitten by this A rather extensive explanation on why this is alignment requirement is there can be found in this comment: https://developer.blender.org/D9389#233034 Differential Revision: https://developer.blender.org/D12188 Reviewed by: sergey, campbellbarton |
August 16, 2021, 04:19 (GMT) |
Cleanup: remove *.orig file from 6a9d7139f7d05e0c51827a3a4b862c0547dc0513 |
August 16, 2021, 04:19 (GMT) |
Cleanup: use C++ style comments for disabled code |
August 16, 2021, 04:19 (GMT) |
Cleanup: spelling in comments |
August 16, 2021, 04:19 (GMT) |
Cleanup: use parameters struct for wm_homefile_read Also add wm_homefile_read_ex which is only needed for the first execution at startup. |
August 16, 2021, 04:19 (GMT) |
Fix T89046: Startup file with Python drivers crashes on load Resolve order of initialization error reading startup file, support postponing running wm_file_read_post until Blender has been initialized. Deferring updates allows duplicate initialization to be removed from WM_init. Reviewed By: mont29 Ref D12184 |
August 16, 2021, 04:19 (GMT) |
Cleanup: comments/disabled code - Remove old comment for editors with weak syntax highlighting. - Remove disabled code to initialize Blender with a file path. - Remove file name references to function names since these were outdated, modern development environments can look up this info. |
August 16, 2021, 04:19 (GMT) |
datadoc: add newlines to generated source files |
August 16, 2021, 04:19 (GMT) |
RNA: include base types in RNA_struct_type_find_property search Add RNA_struct_type_find_property_no_base for use in the rare situations when this isn't desired. Resolves T90617, where sequence strip sub-types weren't detecting properties that exist in the base "Sequence" types. |
August 16, 2021, 04:19 (GMT) |
Cleanup: remove redundant variable |
August 16, 2021, 04:19 (GMT) |
Fix T90630: Crash loading certain user preferences Clearing the window was done in wm_file_read_post which was deferred. This was needed as it left the context in an invalid state where the window was set but the screen wasn't. Crashing when setting up keymaps that attempted to access the scene from the window in the property update function. Regression in 497bc4d19977abc7b9e2c0f5024a23057e680954 |
August 16, 2021, 04:19 (GMT) |
Fix T88386: Continuous Grab occasionally jumping on Arm64 MacOS During the processing of a continuous drag event, other mouse move events may be in the queue waiting to be processed. But when a mouse wrapping happens, these waiting mouse move events become out of date as they report a mouse position prior to wrapping. The current code ignores these events by comparing their `timestamp` to the time recorded in the last mouse wrapping. The bug happens because the computed value in `mach_absolute_time() * 1e-9` for some reason is incompatible with the value of `[event timestamp]`. Since macOS 10.6, we have a new way to get the amount of time the system has been awake. `[[NSProcessInfo processInfo] systemUptime]`. Using this updated method fixed the problem. Differential Revision: https://developer.blender.org/D12202 |
August 16, 2021, 04:19 (GMT) |
Compositor: Full frame Mask node Adds full frame implementation to this node operations. No functional changes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11751 |
August 16, 2021, 04:19 (GMT) |
Compositor: Full frame input nodes Adds full frame implementation to "Bokeh Image" node, "Track Position" node, `SetVectorOperation` and `MovieClipAttribute`. The other nodes in "Input" submenu are implemented separately. `MovieClipAttribute` needs resolution to calculate its constant value, it can't be constant folded, which requires it to be a `ConstantOperation`. Now `ConstantOperation` contemplate this case and any operation that is always constant without depending on inputs should implement it. If in the future an operation needs to get an input constant element during `determineResolution` it must first determine its input resolution. The nodes have no functional changes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D12090 |
August 16, 2021, 04:19 (GMT) |
Compositor: Fix memory leaks when initializing tiles multi-threaded It was only affecting tiled fallback on full frame mode. If tiles from a constant operation were multi-thread initialized, its buffer was inflated multiple times. |
August 16, 2021, 04:19 (GMT) |
Compositor: Full frame curve nodes Adds full frame implementation to "RGB Curves", "Vector Curves" and "Hue Correct" nodes. No functional changes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D12093 |
August 16, 2021, 04:19 (GMT) |
Compositor: Full frame color nodes Adds full frame implementation to "Alpha Over", "Hue Saturation Value", "Invert", "Tonemap" and "ZCombine" nodes. The other nodes in "Color" submenu are implemented separately. No functional changes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D12092 |
|