Age | Commit message (Collapse) | Author |
|
No need to tag object for time update, with new dependency graph
this forces animation to be re-evaluated, which is not something
we want in this instance.
Same patch/solution Philipp Oeser came to as well.
|
|
That feature will not be ready (or at least, not tested enough) to be
officially part of 2.80 beta. So we disable it by default, hidding it
behind a startup option (`--enable-static-override`), and a python
app var (`bpy.app.use_static_override`).
That way, people who really want to play with it can do it easily, while
not exposing/enabling non-production-ready feature by default.
Note that underlying override code remains active, i.e. files we do have
overridden data-blocks will be loaded correctly according to static override.
|
|
This was re-enabled because it made copy-on-write bugs hard to
track down.
Since copy-on-write implementation has been simplified
this isn't a problem anymore.
|
|
|
|
|
|
Differential Revision: https://developer.blender.org/D3719
|
|
|
|
|
|
Internally it's still mostly named lamps, though some modules like Cycles
were already calling them lights.
|
|
|
|
|
|
|
|
We were using int's for bool arguments in BKE,
just to avoid having wrapper functions.
|
|
Access to main database is actually rarely needed, but some custom
'apply' functions do need it (like Collections' overriding of objects or
children collections).
|
|
This is unused currently, but is mandatory for incomming support to
Collections objects and children items override support.
|
|
This will be much useful in some cases, at least in override area it is
needed (avoids searching again for the overriden item in a collection).
|
|
Following RNA pointer way - only return evaluated item if asked for.
|
|
When RNA path was for a collection item, we'd falsly get NULL final
property (and wrong final RNA pointer too).
Own stupid mistake in some previous commit, iirc.
|
|
|
|
|
|
We are already running out of available flags in main, generic int, and
everytime I work on static override I find new special cases that will
need new specific propflag, so...
|
|
While these will be removed eventually,
it makes tracking down COW buts a hassle.
|
|
Fixes bug with changes to properties not being flushed to the COW data.
It fixes T55144.
This is the part of rBb4b745b72064 that is required although slow.
Which was partially addressed but the rest of the commit, which in
turn broke things. So for now let's get RNA to flush slow cow, and
deal with the consequences.
|
|
This reverts commit b4b745b72064ee7d3d8b0245ac8e8358b7fd07a3.
This was causing a problem in 01_025_A.anim.blend from the Spring
production files, where selecting one of Autumn's bones would
result in character jumping back to the origin.
|
|
Fixes bug with changes to properties not being flushed to the COW data.
|
|
Needed for use in rna non runtime code.
|
|
Needed for use in rna non runtime code.
|
|
|
|
editing of inserted items in collections.
Now insertable collection items have a flag to say they are 'local' (and
hence can be freely edited).
|
|
And a dummy placeholder for object constraints... All this is WIP of
course!
|
|
|
|
We use 'reference' to designate the linked ID which is being overridden
by the local one, so using 'reference' to designate the stored local ID
in apply RNA code was... not a good idea. ;)
|
|
|
|
This is actually rather slow process, commeting it out gives us another
10% speedup... On a non-animated char! Don't even want to know how much
this would have costed on a rig with hundreds of fcurves!
And checking this is not really critical for us anyway, once animated
you do not really care whether props are also statically overridden or
not.
|
|
|
|
use stack instead of always allocating memory for RNA paths of checked
properties! From average 167ms to 118ms here with Autumn rig... Still a
lot to improve, but that's already much better.
|
|
Main new thing in this commit is ability for real IDProps (aka custom
properties) to be set as overridable or not, they are not by default.
|
|
|
|
IDProp.
Why exactly this happens remains unclear, found that in the
autumn.blenrig file of Spring production while working on static
overrides... Tons of ugly IDProps in that rig. xD
|
|
|
|
|
|
This commit essentially introduces a new RNA property flag, which when
set prevents affected property from being processed at all in comparison
code (also used to automatically generate static override rules).
The idea is to use it on very low-level data in RNA, like e.g. mesh's
geometry or psys' particles collections.
For now only applied to psys' particle collections, on the main mesh of
Agent327 pigeon, it goes from 100ms to 0.5ms on a full
auto-override-generating comparison...
Also added some new RNA property helper funcs to check on comparable and
overridable status.
|
|
|
|
|
|
|
|
Allows for each workspace to have it's own add-ons on display.
Filtering for: Panels, Menus, Keymaps & Manipulators.
Automatically applies to add-ons at the moment.
Access from workspace, toggled off by default
once enabled, add-ons can be white-listed.
See D3076
|
|
When destination IDProp did not exist, new code (related ot static
overrides) would not do nothing...
IDProps and RNA are really not easy to tame, thinking more and more we
should totally bypass RNA and directly use (add) IDP code to handle
comparison and diff creation/application of IDProps.
But for now, this bandage should to the trick.
|
|
|
|
|
|
|