This commit cleans up the flow emission code (i.e. the code that determines where flow is generated). It also addresses an issue with initial velocities.
Related issues (that might be fixed through this commit) are: T73422, T72949
Fluid domains with (auto-generated) particle systems were set to wireframe drawtype automatically. This was a convenience feature that made particles visible immediately. As the auto switching is sometimes a bit annoying though this has been removed. Instead, the Quick Liquid Operator switches the viewport shading type to wireframe.
- Initial velocities are no longer influenced by surface distance value.
- Added optimizations for different flow types (e.g. skip part of loop for liquid flow objects).
- Comments style cleanup and removed old todos.
This code is currently not in use and so removing it based on the YAGNI principle. If there really is need for a high-res emission loop it could be easily added again. However, I believe for the smoke noise it is sufficient to upscale the base emission map. A high-res emission map can easily be achieved by increasing the base resolution. Note also that in the new fluid system base loop and noise loop are decoupled making the need for a high-res emission loop even more unneccessary.
Code cleanup. Fixes a mismatch between definition and declaration of fsmenu_insert_entry().
Differential Revision: https://developer.blender.org/D6712
Reviewed by Julian Eisel
Changes to Info Editor making it easier to read. Only visual changes, no functional changes.
Differential Revision: https://developer.blender.org/D6491
Reviewed by Julian Eisel
This fixes the crash with pose_ik_segments = 0 in old files.
Some files were saved with the property set to 0, so the versioning code
won't work in that cases. I also changed that to fix the crash in those
files.
Reviewed By: brecht
Maniphest Tasks: T73054
Differential Revision: https://developer.blender.org/D6663
Tool system handlers had higher priority than the overlayed animation
"regions" (fake regions in fact). Give animation (and View2D) handlers
priority over toolsystem handlers.
Gizmo's still have higher priority, but I'll leave that unless there's a
reason to change.
More concretly, the crash would happen if a filebrowser is opened while
an error popup is visisble **in a different window**.
Code assumed the popup to be in the active window/screen, but it may
actually be displayed in a non-active window. Temporarily override
context to ensure this assumption is correct.
In blender 2.79 you could use a render result as a camera background
image. This is useful during layout/compositing. During Blender 2.80
development there were 2 issues introduced that removed this feature.
* to receive a render result the image required a lock. This lock wasn't passed and therefore no image was read from the result. Generating an GPUTexture from an Blender image also didn't do the locking.
* the iuser->scene field wasn't set what is required for render results.
This change adds an optional `ibuf` parameter to `GPU_texture_from_blender` that can be passed when available.
Reviewed By: fclem, brecht
Differential Revision: https://developer.blender.org/D6684
We have the problem that it's very hard to see which animation channels are selected. This is a very small tweak to make it more obvious, using the same text highlight color as the Outliner.
Really it should be overhauled to be more exactly like the Outliner, but this is just a quick fix to make it reasonably visible.
Differential Revision: https://developer.blender.org/D6708
Reviewed by Julian Eisel
Need to also offset markers in BKE_sequence_base_shuffle_time().
Also clarify/correct related comments.
Maniphest Tasks: T73014
Differential Revision: https://developer.blender.org/D6555
taking proportional size into account
Transform would always move all keyframes (e.g even when Proportional
size is 0.0).
'calculatePropRatio()' was setting td->factor correctly, but this was
not being considered in 'applyTimeTranslateValue()' if there was no
action [which greasepencil and masks do not have].
Maniphest Tasks: T55622
Differential Revision: https://developer.blender.org/D6697
What I removed here used to be needed in an earlier version of the
patch, to avoid use-after-frees. This is not the case anymore, so it
seems we can remove this.
Generally the context region code is very weak and inconsistent. If
things were done properly, the line I added shouldn't cause issues -
it's logically correct.
Also fixes T73475.
button in the Image slot in the Brush panel
Caused/exposed by rBaf9ca138ba7b
Also relevant was rB828905190e12
Above commits moved the WM_UI_HANDLER_BREAK around so it would not be
returned anymore.
We need WM_UI_HANDLER_BREAK, otherwise we wont get through to to
KM_RELEASE. There are two places that explicitly check for KM_RELEASE
(call to `ui_do_but_extra_operator_icon` in both
`ui_do_but_SEARCH_UNLINK` / `ui_do_button`), and without the above we
only ever get here with KM_PRESS.
This patch restores the behavior regarding WM_UI_HANDLER_BREAK to what
is was before the two culprit commits.
Checked that both this report (T72089) and T69755 are working.
Maniphest Tasks: T72089
Differential Revision: https://developer.blender.org/D6363
Since changing the active particle system uses NC_OBJECT | ND_DRAW
for 'RNA_def_property_update()' we need to redraw/refresh
BCONTEXT_PARTICLE in 'buttons_area_listener()' as well.
Maniphest Tasks: T67654
Differential Revision: https://developer.blender.org/D6702
Since we can now use separate icons for the items in the File Browser
lists, the following rounds out the "System" list for Linux.
Adds a few more folders that are available in most distributions
at installation, but only if they exist.
Try to never do operation twice and try to use MADD operations. Even if this
is very unlikely to make any difference, it can help compilers do some
optimization. I did not measure any difference as probes have much higher
impact on render time because of texture lookups.
Note that disk light is currently the most expensive light type so it
does not hurt to micro optimize.