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
2017-06-01Depsgraph: Remove unused argument from time source querySergey Sharybin
2017-06-01Depsgraph: Remove subgraph nodesSergey Sharybin
Those were never finished nor used. Again, starting from clean state before we go into more complicated details.
2017-06-01Depsgraph: Remove dead codeSergey Sharybin
Was never used or worked on in ages, if any of this code is needed in the future it'll need to be redone anyway.
2017-06-01Depsgraph: Remove dead code from add_time_source()Sergey Sharybin
This was never finished or done or used, no reason to keep it. Better to simplify things before adding complexity of overrides and copy-on-write.
2017-06-01Depsgraph: Cleanup, get rid of relation typeSergey Sharybin
It was never actually used apart from being stored at a construciton time. This caused some redundancy and ncertanty about which relation type to use during construciton (often existing types were not close enough to particular use case).
2017-05-31Task scheduler: Optimize subsequent pushing bunch of tasksSergey Sharybin
The idea is to accumulate all new tasks in a thread local queue first without doing any thread synchronization (aka, locks and conditional variables) and move those tasks to a scheduler queue once they are all ready. This way we avoid per-task-pool lock and only have one lock per bunch of tasks. This is particularly handy when scheduling new dependency graph node children. Brings FPS of cached simulation from the linked below file from ~30 to ~50. See documentation for BLI_task_pool_delayed_push_{begin, end} and for TaskThreadLocalStorage::do_delayed_push. Fixes T50027: Rigidbody playback and simulation performance regression with new depsgraph Thanks Bastien for the review!
2017-05-30Depsgraph: Fix missing relations for objects which are indirectly linkedSergey Sharybin
This is a corresponding part of 7dda3cf.
2017-05-30Depsgraph: Remove extra modifiers callback loopSergey Sharybin
Seems to be a copy-paste error from code above.
2017-05-30Depsgraph: Fix object being tagged for data update when it shouldn'tSergey Sharybin
2017-05-30Move GHash/GSet/LinkList iterators to BLI filesSergey Sharybin
Those are not depsgraph or C++ specific and can be used by everyone.
2017-05-30Depsgraph: Use own implementation of stack rather than the one from STLSergey Sharybin
This way we always have predictable behavior, especially from the performance point of view. Additionally, if some bottleneck is found in stack implementation it'll be easier for us to address.
2017-05-30Move hash_combine utility function to a more generic placeSergey Sharybin
This way everyone can benefit from it, not only dependency graph.
2017-05-17Fix T49981: When camera is on inactive layer, it does not evaluate constraintsSergey Sharybin
Second round of fix, was broken by 843be91.
2017-05-11Depsgraph: Fix/workaround crahs when fcu->rna_path is NULLSergey Sharybin
2017-05-10Fix missing relation in new DEG between World and its NodeTree.Bastien Montagne
Was preventing update in 3DView etc. when changing something in the World's NodeTree, especially annoying in blender2.8 branch (since legacy depsgraph has been removed there), but also affecting master.
2017-05-02Revert "Depsgraph: Link from material to object shading"Sergey Sharybin
The change was initially needed for Blender 2.8 branch but the actual function was reverted in there. So no reason to keep dead unused placeholder in the dependency graph. This reverts commit fd69ba225540cde5e4c1fa651fb02df21ea0a143.
2017-04-18Depsgraph: Use proper scene to get frame from for pose constraints evaluaitonSergey Sharybin
Spotted by Luca, thanks!
2017-04-05Depsghraph: Remove unused functionSergey Sharybin
2017-03-31Depsgraph: Correction for the previous local view commitSergey Sharybin
Need to flush layers from components back to ID node.
2017-03-30Depsgraph: Fix missing updates when in local viewSergey Sharybin
This area is a subject of reconsideration, so for now used simplest way possible -- ensure depsgraph's nodes have proper layer flags when going in and out of local mode.
2017-03-24Ашч T50995: Wrong freestyle render with new depgraphSergey Sharybin
The iossue was caused by 0371ef1/
2017-03-16Depsgraph: Fixed crash with curve bevel indirect dupligroupsSergey Sharybin
Need to expand all object's dupli-groups, not only the dupli-groups of objects directly linked to the scene.
2017-03-16Depsgraph: Use string and vector in the DEG namespace onlySergey Sharybin
2017-03-16Depsgraph: Don't use explicit values in runtime only enumSergey Sharybin
Lower risk of forgetting to update some values here.
2017-03-15Fix strict compiler warning in the previous commitSergey Sharybin
2017-03-15Fix T50938: Cache not being reset when changing simulation settings with new ↵Sergey Sharybin
depsgraph The thing i'm really starting to hate is the requirement to specify both operation code and node type. Seems to be duplicated enums without real need for that.
2017-03-07Task scheduler: Add concept of suspended poolsSergey Sharybin
Suspended pools allows to push huge amount of initial tasks without any threading synchronization and hence overhead. This gives ~50% speedup of cached rigid body with file from T50027 and seems to have no negative affect in other scenes here.
2017-03-07Depsgraph: Remove workarounds from depsgraph for keeping threads aliveSergey Sharybin
This is something what should be done in the task scheduler instead with local thread queues so we handle this in a single place.
2017-03-07Task scheduler: Remove per-pool threads limitSergey Sharybin
This feature was adding extra complexity to task scheduling which required yet extra variables to be worried about to be modified in atomic manner, which resulted in following issues: - More complex code to maintain, which increases risks of something going wrong when we modify the code. - Extra barriers and/or locks during task scheduling, which causes extra threading overhead. - Unable to use some other implementation (such as TBB) even for the comparison tests. Notes about other changes. There are two places where we really had to use that limit. One of them is the single threaded dependency graph. This will now construct a single-threaded scheduler at evaluation time. This shouldn't be a problem because it only happens when using debugging command line arguments and the code simply don't run in regular Blender operation. The code seems a bit duplicated here across old and new depsgraph, but think it's OK since the old depsgraph is already gone in 2.8 branch and i don't see where else we might want to use such a single-threaded scheduler. When/if we'll want to do so, we can move it to a centralized single-threaded scheduler in threads.c. OpenGL render was a bit more tricky to port, but basically we are using conditional variables to wait background thread to do all the job.
2017-02-03Depsgraph: Add some extra debug prints on evalSergey Sharybin
2017-01-31Fix T50331: New Dependency Graph - "frame" python driver expression not workingSergey Sharybin
2017-01-31Cleanup: use 'cb_flag', not 'cd_flag' for library_query callbacks.Bastien Montagne
`cd_flag` tends to be used for CustomData flags in mesh area, while for library_query those are rather callback flags...
2017-01-26Depsgraph: Fix typo in assertSergey Sharybin
2017-01-26Depsgraph: Link from material to object shadingSergey Sharybin
This is a ground work for the upcoming changes in Blender 2.8 branch where we need to do special actions to reconstruct shaders when material changes.
2017-01-26Depsgraph: Add relation from node tree to material it's coming fromSergey Sharybin
2017-01-26Depsgraph: Remove owner argument from relations builder as wellSergey Sharybin
The idea was to link something to a parent, but the point is: we must not pass owner deep and then have any parent-type-related logic implemented in the "children".
2017-01-26Depsgraph: Remove owner node argument which was simply passed aroundSergey Sharybin
2017-01-25Fix T50512: Linked Backround scene with animation not updating with new ↵Sergey Sharybin
depsgraph Was missing relations for the set scenes. Perhaps not ideal solution, but should be good enough for now.
2017-01-25Depsgraph: Do ID tag outside of build_sceneSergey Sharybin
Otherwise it was possible to get ID tags cleared in the middle of DEG construction when there are set scenes used.
2017-01-24Depsgraph: Fix duplicated operation node when two objects are sharing same ↵Sergey Sharybin
armature
2016-12-09Depsgraph: Bone parent should also include armature transform relationSergey Sharybin
It is required to have world-space bone position, which consists of armature object transform and local bone transform.
2016-12-06Depsgraph: Only re-schedule objects which are on visible layersSergey Sharybin
Otherwise it's possible to cause infinite update loop in Cycles viewport. Gets a bit messy logic, need to revisit this..
2016-12-05Depsgraph: Use HIGH priority for scheduled tasksSergey Sharybin
This kind of keeps threads "warmer" and should in theory give better cache coherency bringing some %% of speedup. It was already tested few months ago and it gave few % speedup in barber shop, but was reverted due to some bone popping. The popping is now fixed so it should be fine to use new scheduling policy.
2016-12-05Depsgraph: avoid more transitive relations for rigid body simulationSergey Sharybin
2016-12-05Depsgraph: Rigid body simulation doesn't need explicit time relationSergey Sharybin
It'll be dependent on time via Time Source -> Rebuild RB World chain.
2016-12-05Depsgraph: Avoid transitive relation from local transform to finalSergey Sharybin
There is always an uber eval node on the way. so we can avoid creating some relations here in order to speed up both construction time and evaluation.
2016-12-05Fix depsgraph: hair collision is actually enabled, so add the relations.Alexander Gavrilov
2016-11-23Depsgraph: Fix matrix_world driver sourceSergey Sharybin
Reported by Dalai in IRC, thanks!
2016-11-21Fix T49981: New Depsgraph - When camera is on inactive layer, it does not ↵Sergey Sharybin
evaluate constraints
2016-11-21Depsgraph: Fix infinite viewport object update in CYcles render modeSergey Sharybin
The issue was caused by wrong object re-tag needed to have proper dependnecies update for OpenSubdiv.