Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-06Outliner visibility unification: Implement 3 levels of viewport visibilityDalai Felinto
Now collection and objects can be either: * Disabled for all the view layers. * Hidden for a view layer but not necessarily for all others. * Visible for a view layer but not necessarily for all others. Regarding icons: Whatever we decide to use for the "Hidden for all view layers" needs to be a toggle-like icon. Because when viewing "Scenes" instead of "View Layer" in the outliner we should be able to edit the collection "Hidden for all the view layers" as an on/off option. The operators are accessible via a Visibility context menu or shortcuts: * Ctrl + Click: Isolate collection (use shift to extend). * Alt + Click: Disable collection. * Shift + Click: Hide/Show collection and its children (objects and collections) Things yet to be tackled: * Object outliner context menu can also get a Visibility sub-menu. * Get better icons for viewport enable/disable. Note: * When using emulate 3 button mouse alt+click is used for 2d panning. In this case users have to use the operator from the menu. See T57857 for discussion. Patch: https://developer.blender.org/D4011 Reviewers: brecht and sergey Thanks to the reviewers and William Reynish and Julien Kasper in particular for the feedback.
2019-02-05Per view-layer collection visibilityDalai Felinto
[re-committing] We still control this in the viewport collections visibility menu. But now we are actually changing the visibility of the collections, not of the objects. If a collection is indirectly invisible (because one of its parents are invisible) we gray it out. Also if you click directly in the collection names, it "isolates" the collection by hiding all collections, and showing the direct parents and all the children of the selected collection. Development Note: Right now I'm excluding the hidden collections from the depsgraph. Thus the need for tagging relations to update. If this proves to be too slow, we can change.
2019-02-01Cleanup: remove original authorCampbell Barton
Missed when removing contributors.
2019-02-01Fix T60451: Soft body cache not being cleared when it shouldSergey Sharybin
Manual edits to object or its dependencies should reset the point cache. Added special relations for this now.
2019-02-01Cleanup: Shuffle arguments in most used orderSergey Sharybin
Quite often we need to create nodes which defines various evaluation stages.
2019-02-01Depsgraph: Use scene operation codeSergey Sharybin
Hopefully, this is the last one.
2019-02-01Depsgraph: Use operation code for file cache updateSergey Sharybin
All done in separate commits, so it's easier to bisect just in case.
2019-02-01Depsgraph: Use operation code for armature evaluationSergey Sharybin
2019-02-01Depsgraph: Use operation code for dupli-groupSergey Sharybin
2019-02-01Depsgraph: Use operation code for geometry evaluation doneSergey Sharybin
2019-02-01Depsgraph: Use operation code for geometry evaluationSergey Sharybin
Affects object data datablocks. Similar to previous commit. Should not have any functional changes, just some sanitization to make code more clear.
2019-02-01Depsgraph: Use operation code for geometry evaluation initSergey Sharybin
Makes it more explicit and avoids strings comparisons during build.
2019-02-01Depsgraph: More clear name for geometry evaluationSergey Sharybin
For ears it was already how we evaluate modifiers. There is no need to go more granular than is actually needed. And no need to use some obscure prefix for operation.
2019-02-01Cleanup: Space for foreach macroSergey Sharybin
2019-02-01Depsgraph: Add some sanity checks to ensure valid relationsSergey Sharybin
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-31Fix build errors on Visual Studio after recent changes.Brecht Van Lommel
SYNCHRONIZE is a Windows macro.
2019-01-31Fix T60836: Stretch to flickers when vertex group is usedSergey Sharybin
Missing relation to object transform. Needed to convert vertex position from local target object space to a local space of the bone.
2019-01-31Fix T59339: Particle render without baking issuesSergey Sharybin
The issue was caused by dependency graph resetting particles when evaluating copy-on-write version of object. Solved by only doing reset from dependency graph on user edits. Other issue was caused by modifier itself trying to compare topology and reset particles when number of vertices or faces changed. This isn't reliable, since topology might change even with same number of elements. But also, since copy-on-written object initially always have those fields zero-ed the reset was happening on every F12. The latter issue is solved by moving reset from modifier stack to places where we exit edit/paint modes which might be changing topology. There is still weird issue of particles generated at some weird location after tapping tab twice, but this is not a new issue in 2.8 branch and is to be looked separately.
2019-01-31Depsgraph: Comb code to a better state all overSergey Sharybin
Some summary of changes: - Don't use DEG prefix for types and enumerator values: the code is already inside DEG namespace. - Put code where it locally belongs to: avoid having one single header file with all sort of definitions in it. - Take advantage of modern C++11 enabled by default.
2019-01-31Fix T61030: Drivers for shape keys not evaluated in correct orderSergey Sharybin
Was happening when value of one shape key was driving property of another shape key of same datablock. Solved by making shape key blocks properties more granular.
2019-01-31Depsgraph: Specify whether RNA path to be resolved as entry or exitSergey Sharybin
Makes it more explicit whether RNA property is used as a source dependency for something else, or whether some other dependency is being hooked up to evaluate that property.
2019-01-31Depsgraph: Use more correct update source for an internal tagsSergey Sharybin
Dependency graph will poke some IDs for recalc after finishing building. Those shouldn't be considered as a user edit.
2019-01-31Fix T59495, T59992, T59904, T59178, T60598: broken keyframed value editing.Brecht Van Lommel
This removes a bunch of animation/driver evaluations and recalc flags that should be redundant in the new depsgraph, and were incorrectly affecting the evaluated scene in a permanent way. Still two cases that could be removed if the depsgraph is improved, in BKE_object_handle_data_update and BKE_cachefile_update_frame. For physics subframe interpolation there are also still calls to BKE_object_where_is_calc that should ideally be removed as well, though they are not known to cause keyframing bugs. Differential Revision: https://developer.blender.org/D4274
2019-01-30Cleanup: use better names for depsgraph driver relations.Brecht Van Lommel
Both the driven properties and driver targets were called targets, now make a distinction.
2019-01-29Fix T59924: Blender 2.8 particle system errorSergey Sharybin
Was missing relation from particle keyed targets to the particle system, which caused some race conditions.
2019-01-28Fix T60566: Warnings in rigid body and certain conrfigurationSergey Sharybin
Was visible when constraint object is not directly visible via view layers, need to indirectly pull it into the graph.
2019-01-28Fix T60127: Particles texture mapping coordinates objectsSergey Sharybin
Part of the issue was a missing relation. Other part wes aboud object's inverse matrix never being updated.
2019-01-28Cleanup: unused struct declarationsCampbell Barton
2019-01-28Cleanup: sort forward declarations of enum & structCampbell Barton
Done using: source/tools/utils_maintenance/c_sort_blocks.py
2019-01-24Fix freestyle renders not including some types of animation.Brecht Van Lommel
Freestyle Python scripts need to get the evaluated view layer and scene, not the original one.
2019-01-24Cleanup: styleCampbell Barton
2019-01-23Fix T60417: Hair not instantly updating when editing curve guidePhilipp Oeser
Reviewers: sergey, brecht Maniphest Tasks: T60417 Differential Revision: https://developer.blender.org/D4193
2019-01-22Fix T60742, T55974: crash using mesh/curve surface force fields.Brecht Van Lommel
Missing dependency graph relations caused race conditions.
2019-01-04Depsgraph: Fix missing relation from node tree to lightSergey Sharybin
Was only happening when lamp had driver on the Light datablock. Reported by Dalai Felinto in T60137.
2018-12-28Cycles: restore old sample and material override settings for view layers.Brecht Van Lommel
Since there will be no view layer overrides in 2.80, this is needed still.
2018-12-19Fixes for particle system and physicsSergey Sharybin
- Silence harmless error print about relation. Object with particle system which doesn't use physics will not have point cache component. - Tag relations for update when particle system physics type change. This ensures correct state of point cache component. This is all part of T59258.
2018-12-19Fix T59237: Instancing on a path doesn't do anythingSergey Sharybin
This commit makes it so curve path parent solving accepts an explicit arguments for both time and curve speed flag, making it so we don't have to mock around with scene's frame. One unfortunate issue still is that if the instancing object is used for something else, we might be running into a threading conflict. Possible solution would be to create a temp copy of an object, but then it will be an issue of preventing drivers from modifying other datablocks. At least the original issue is fixed now, and things behave same as in older Blender version. Additionally, the global variable which was defining curve speed flag behavior is gone now!
2018-12-13Fix force fields not affecting rigid bodiesSergej Reich
This fixes part of T58991. Still need to add proper relations so that point cache is marked as outdated when effectors are modified.
2018-12-10Fix T58932: Impossible to influence the particle systemSergey Sharybin
2018-12-10Fix T57633: Particle texture update problemSergey Sharybin
Textures are now hooked up to the RESET operation of particle settings, which ensures particles being re-distributed when texture is changed. This is limited to a direct user modifications, which matches old behavior in 2.79.
2018-12-10Fix T58993: Duplicating after setting a rigid body world crashes Blender.Bastien Montagne
There is no guarantee that object in rigidbody collection already have a valid rgigidbody data when rebuilding deg relations, that is often generated on-the-fly by actual rigid body simulation. Note that this can be an issue when generating deg relations I guess... But at least it won't crash anymore.
2018-12-08Cleanup: styleCampbell Barton
2018-12-07Depsgraph: Make data allocation dependency more robustSergey Sharybin
This fix aims to fix crash/assert failure related on wrong evaluation order which happens when there is a cyclic dependency involved. The rationality of this change is that we can allow use of uninitialized scalar value, but memory is better be allocated. This might not be ideal still, but worth a try.
2018-12-07Depsgraph: Use shorter relation nameSergey Sharybin
It is clear enough already that it goes From to To.
2018-12-07Depsgraph: Cleanup, line lengthSergey Sharybin
2018-12-07Depsgraph: Remove duplicated sets of recalc/update flagsSergey Sharybin
There were at least three copies of those: - OB_RECALC* family of flags, which are rudiment of an old dependency graph system. - PSYS_RECALC* which were used by old dependency graph system as a separate set since the graph itself did not handle particle systems. - DEG_TAG_* which was used to tag IDs. Now there is a single set, which defines what can be tagged and queried for an update. It also has some aggregate flags to make queries simpler. Lets once and for all solve the madness of those flags, stick to a single set, which will not overlap with anything or require any extra conversion. Technically, shouldn't be measurable user difference, but some of the agregate flags for few dependency graph components did change. Fixes T58632: Particle don't update rotation settings
2018-12-05Depsgrapgh: Use more distinctive opcode for texture and image evaluationSergey Sharybin
2018-12-04Fix T58118: Make duplicates real does nothingSergey Sharybin
The issue was caused by transflag set in geometry evaluation never copied back top original object. Now we have a dedicated operation which does all sort copy back to original object, so we don't have to worry about atomic assignments or what gets set where. Still need to move boundbox to the same function, but it needs some careful doublechecking first.