This turns error condition checks into precondition checks, grouping the
non-error functionality together towards the bottom of the function and
error-handling functionality towards the top.
No functional changes.
Code was originally added to test a different approach to calculate the
irradiance buffer. The approach was just to slow so we never used it.
This change will remove it from the code base
Constraint stack similarly to modifier stack is fully operate on what
have been given to it, without requesting original or evaluated IDs.
Validness of datablocks passed to constraint stack are to be handled
on dependency graph/evaluation stream levels.
Mainly affects for() loops.
The reason why loop parameter was declared outside of the loop roots
back to the times when not all compilers supported C99.
Cache files are currently loaded via the Manta Python API. With very big caches this can slow down the viewport playback. Especially smoke simulations, which just load grids and no meshes, can suffer from this. This fix solves this problem by directly loading the cache files from disk (no Python). This fix has been in the works for some time. The developer of this patch is ready to handle any potential fall-out of this patch quickly.
Adds the invert vertex group option to the Curve modifier.
Adds a short flag and char pad to the Curve modifier DNA. Passes the flag into the curve_deform_verts function as the weight values are found there and not in the modifiers .c file.
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D6746
Adds the invert vertex group option to the Lattice modifier.
Adds a short flag and modifies the existing char padding for the correct amount.
Adds a .invert_vgroup to the LatticeDeformUserdata.
Passes the flag into the lattice_deform_verts function where the weights around found and used.
For the other calls of lattice_deform_verts function they pass in NULL for the flag in the same way they pass NULL for the vgroup name.
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D6747
BKE_nurb_type_convert now takes r_err_msg and is more specific in the
error message...
ref T71672.
Maniphest Tasks: T71672
Differential Revision: https://developer.blender.org/D6275
This is a small optimization that makes sure the adaptive domain only considers active inflow objects. Ones with disabled fluid flow are skipped and thus the adaptive domain will not try to cover them.
Added sanity check in the flow / obstacle object loops that check if the modifier data is valid. Ideally this should not be needed. However, in remove_particle_systems_from_object() the fluid modifier can get freed. It is not yet clear whether the modifier free call is really needed or not.
Font duplicator was not outputing dupli-objects using evaluated object
pointers, leading to crash because original object are not supposed to
be drawable.
Usual issue from those dear Bone pointers in pose data...
Note that this is more like minimal-risk, quick fix, it's nothing like
'nice to have' code. Think proper solution would be to refactor handling
of those kind of 'caches' to ensure they are valid/up-to-date in a much
easier way, at the very least.
Ideal solution being to get fully rid of those horrors, of course, but
let's not dream here. ;)
The function `modifiers_disable_subsurf_temporary` disables
temporarily only subsurf modifiers with the `On Cage` option enabled.
But a modifier can act on cage even with this option disabled.
Differential Revision: https://developer.blender.org/D6722