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-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.
2018-09-03Depsgraph: Use more meaningful name for flags storageSergey Sharybin
2018-05-02Depsgraph: Add per-depsgraph debug name which is shown in the logsSergey Sharybin
This way we can see for which depsgraph datablock is being evaluated for.
2018-05-02Depsgraph: Cleanup, naming conventionsSergey Sharybin
2018-05-02Depsgraph: Allow per-depsgraph debug flagsSergey Sharybin
Currently only affects EVALUATION debug messages, rest are to be supported on per-depsgraph level.
2018-04-13Depsgraph: store mode and time in depsgraph, add view layer / scene accessors.Brecht Van Lommel
Scene, view layer and mode are now set in the constructor and never changed. Time is updated on frame changes to indicate which frame is being or has been evaluated last. This is a step towards making EvaluationContext obsolete. Differential Revision: https://developer.blender.org/D3144
2017-12-20Merge branch 'master' into blender2.8Sergey Sharybin
2017-12-20Depsgraph: Move ID node to own fileSergey Sharybin
2017-12-20Depsgraph: Move time source node to own fileSergey Sharybin
2017-12-18Depsgraph: Replace iteration over ghash with iteration over flat arraySergey Sharybin
2017-11-23Rename any instance of scene layer or render layer in code with view layerDalai Felinto
The RenderResult struct still has a listbase of RenderLayer, but that's ok since this is strictly for rendering. * Subversion bump (to 2.80.2) * DNA low level doversion (renames) - only for .blend created since 2.80 started Note: We can't use DNA_struct_elem_find or get file version in init_structDNA, so we are manually iterating over the array of the SDNA elements instead. Note 2: This doversion change with renames can be reverted in a few months. But so far it's required for 2.8 files created between October 2016 and now. Reviewers: campbellbarton, sergey Differential Revision: https://developer.blender.org/D2927
2017-11-09Depsgraph: Make dependency graph to be built from scene layerSergey Sharybin
This is a final step of having proper ownership. Now selecting different layers in the "top bar" will actually do what this is expected to do. Surely, there are still things to be done under the hood, that will happen in a less intrusive way.
2017-11-08Subject: [PATCH 2/3] Depsgraph: Replace iteration over ghash with iteration ↵Sergey Sharybin
over flat array
2017-10-25Depsgraph: Make validation to take explicit graph to be checkedSergey Sharybin
2017-10-25Depsgraph: Remove bunch of debug codeSergey Sharybin
Was never actually used and implementation seems to be slow: we shouldn't be doing per-node evaluation hash lookups, adds too much overhead. We can instead store statistics in the node itself, and maybe even group them somehow. Ideally such a statistics should be user-friendly so riggers and animators can see exactly what's happening.
2017-10-24Depsgraph: Remove bunch of debug codeSergey Sharybin
Was never actually used and implementation seems to be slow: we shouldn't be doing per-node evaluation hash lookups, adds too much overhead. We can instead store statistics in the node itself, and maybe even group them somehow. Ideally such a statistics should be user-friendly so riggers and animators can see exactly what's happening.
2017-07-13Depsgraph: Begin work on making depsgraph per-scene-layerSergey Sharybin
This is a first step towards proper depsgraph "ownership", where we would allow scene to be in multiple states dependent on active workspace or scene layer. This commit introduces a basic API to get proper dependency graph for a given scene layer. It also renames scene->depsgraph to depsgraph_legacy, so it's easier to search0-n-replace in the future.
2017-06-06Depsgraph: Only use extern "C" when really neededSergey Sharybin
2017-06-01Depsgraph: Cleanup, use DEG_NODE_TYPE prefix for depsgraph node typesSergey Sharybin
2017-06-01Depsgraph: Remove unused argument from time source querySergey Sharybin
2016-05-27Depsgraph: Cleanup and code simplificationSergey Sharybin
This is mainly a maintenance commit which was aimed to make work with this module more pleasant and solve such issues as: - Annoyance with looong files, which had craftload in them - Usage of STL for the data structures we've got in BLI - Possible symbol conflicts - Not real clear layout of what is located where So in this commit the following changes are done: - STL is prohibited, it's not really predictable on various compilers, with our BLI algorithms we can predict things much better. There are still few usages of std::vector, but that we'll be solving later once we've got similar thing in BLI. - Simplify foreach loops, avoid using const_iterator all over the place. - New directory layout, which is hopefully easier to follow. - Some files were split, some of them will be split soon. The idea of this is to split huge functions into own files with good documentation and everything. - Removed stuff which was planned for use in the future but was never finished, tested or anything. Let's wipe it out for now, and bring back once we really start using it, so it'll be more clear if it solves our needs. - All the internal routines were moved to DEG namespace to separate them better from rest of blender. Some places now annoyingly using DEG::foo, but that we can olve by moving some utility functions inside of the namespace. While working on this we've found some hotspot in updates flush, so now playback of blenrig is few percent faster (something like 96fps with previous master and around 99-100fps after this change). Not saying it's something final, there is still room for cleanup and API simplification, but those might happen as a regular development now without doing any global changes.
2016-05-25Depsgraph: Simplify some loops using foreach()Sergey Sharybin
2016-03-05Cleanup: quiet -Wcomma, cast to void where neededCampbell Barton
2016-02-02Depsgraph: Fix particle system component nodes not being displayed in debug ↵Sergey Sharybin
graph
2016-01-24Cleanup: styleCampbell Barton
2015-10-10Fix various compiler warnings.Brecht Van Lommel
2015-09-21Small fix for depsgraph debug graphviz: empty labels for edges require an ↵Lukas Tönne
explicit id.
2015-09-21Some minor tweaks to depsgraph debug graphviz output.Lukas Tönne
- Removed relation labels, since these mostly just reflect connected nodes, and also appear too far off the edge lines - Draw cyclic links in dark red - Slightly thicker edges and larger margins
2015-05-20doxygen: corrections/updatesCampbell Barton
Also add depsgraph & physics
2015-05-12Cleanup: styleCampbell Barton
2015-05-12Depsgraph: New dependency graph integration commitSergey Sharybin
This commit integrates the work done so far on the new dependency graph system, where goal was to replace legacy depsgraph with the new one, supporting loads of neat features like: - More granular dependency relation nature, which solves issues with fake cycles in the dependencies. - Move towards all-animatable, by better integration of drivers into the system. - Lay down some basis for upcoming copy-on-write, overrides and so on. The new system is living side-by-side with the previous one and disabled by default, so nothing will become suddenly broken. The way to enable new depsgraph is to pass `--new-depsgraph` command line argument. It's a bit early to consider the system production-ready, there are some TODOs and issues were discovered during the merge period, they'll be addressed ASAP. But it's important to merge, because it's the only way to attract artists to really start testing this system. There are number of assorted documents related on the design of the new system: * http://wiki.blender.org/index.php/User:Aligorith/GSoC2013_Depsgraph#Design_Documents * http://wiki.blender.org/index.php/User:Nazg-gul/DependencyGraph There are also some user-related information online: * http://code.blender.org/2015/02/blender-dependency-graph-branch-for-users/ * http://code.blender.org/2015/03/more-dependency-graph-tricks/ Kudos to everyone who was involved into the project: - Joshua "Aligorith" Leung -- design specification, initial code - Lukas "lukas_t" Toenne -- integrating code into blender, with further fixes - Sergey "Sergey" "Sharybin" -- some mocking around, trying to wrap up the project and so - Bassam "slikdigit" Kurdali -- stressing the new system, reporting all the issues and recording/writing documentation. - Everyone else who i forgot to mention here :)