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
2021-03-12LibQuery: Add an option to process internal runtime ID pointers.Bastien Montagne
In some cases (advanced, low-level code) we also want to process ID pointers like `ID.newid` or `ID.orig_id`.
2021-03-04Cleanup: Main `foreach ID` code: Remove `MAX_LIBARRAY` and improve comments.Bastien Montagne
The `MAX_LIBARRAY` define was an annoying doublon to the `INDEX_ID_MAX` enum value now defined in `DNA_ID.h`, and it is no more useful. And comments were somewhat outdated. Also added an explanation about chosen order for the `INDEX_ID_<IDTYPE>` order.
2021-03-01Cleanup: spellingCampbell Barton
2021-02-25BKE_lib_query: Add a function to detect and tag all unused IDs.Bastien Montagne
With the option to detect orphaned data recursively (i.e. if ID `a` is the only user of ID `b`, and ID `a` is unused, ID `b` will also get tagged as unused). To be used by the Purge operation.
2021-02-04Fix: window manager can reference scenes and workspacesJacques Lucke
This also fixes T83592 for me. Differential Revision: https://developer.blender.org/D10046
2021-01-22Refactor BMain relations temp data.Bastien Montagne
`bmain.relations` is used to store temp data of relations between IDs, to speed-up some complex processes heavily relying on such information. Previous implementation was failry unclear/confusing, and required a not-so-nice hack to 'tag' some ID as processed. New code changes as such: * Using `from`/`to` naming (instead of `user`/`used`). * More clear separation between `to` `id_pointer` and `from` one, using an union instead of hacking around difference between `ID *` and `ID **` pointers. * Adds storage of `session_uuid` informations (mainly useful as debug/ensuring proper consistency of data currently). * Adds a structure per ID in the mapping. This enables possibility of storing tags (and potentially more data in the future) per-ID, without polluting the IDs themselves with very short-life info. Differential Revision: https://developer.blender.org/D10164
2020-08-07Cleanup: Blenkernel, Clang-Tidy else-after-return fixesSybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/blenkernel` module. No functional changes.
2020-07-22Simulation: improve depsgraph integrationJacques Lucke
A simulation data block has an embedded node tree, which requires special handling in a couple of places. Some of those places were missing beforehand. This also adds a relation to make sure that the simulation is evaluated after animations on the embedded node tree are evaluated.
2020-05-26Cleanup: remove unused includes from lib_query.cBastien Montagne
2020-05-26Fix/refactor foreach_id handling of animdata.Bastien Montagne
Now callbacks for animdata, nla strip and fcurve are in their own proper BKE files (mimicking `foreach_id` callback of `IDTypeInfo`). This commit also fixes some missing handling of ID pointers (text ID and IDProperties of script fcurve modifier...).
2020-05-25Libquery: Refactor: add bmain to data passed to callback.Bastien Montagne
No reason to enforce defining own callback user data for something that controlling has already available...
2020-05-21libquery: Cleanup: finish refactor by removing no more used code.Bastien Montagne
2020-05-21Libquery refactor: Cleanup (remove no more used macros).Bastien Montagne
2020-05-21Refactor: Move scene foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-21Refactor: Move object foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-20Refactor: Move collection foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-20Cleanup collection handling in lib_query code.Bastien Montagne
Now we do not need anymore that extra function...
2020-05-20Libquery: refactor: handle scene's master collection like any othe embedded ID.Bastien Montagne
2020-05-20Refactor: Move simulation foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-20Refactor: Move pointcloud and volume foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-20Refactor: Move hair foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-20Refactor: Move grease pencil foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-18Refactor: Move workspace foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-18Refactor: Move WindowManager and Screen foreach_id to new IDTypeInfo structure.Bastien Montagne
That one was a bit more complicated, and is still only partial refactor (ultimately we want to have a foreach_id callback in SpaceType itself I think...).
2020-05-18Refactor: Move action foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-15Refactor: Move linestyle foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-15Refactor: Move mask foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-15Refactor: Move movieclip foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-15Refactor: Move particle foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-13Refactor: Move brush foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-13Refactor: Move lightprobe foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-13Refactor: Move speaker foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-13Refactor: Move world foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-13Refactor: Move shapekey foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-13Refactor: Move camera foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move lamp foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move texture foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move armature foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move library foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move lattice foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move metaball foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-12Refactor: Move Curve foreach_id to new IDTypeInfo structure.Bastien Montagne
2020-05-08GPencil: Refactor - Rename modifier and shder functionsAntonio Vazquez
This change is to align names with changes in T76498
2020-05-08Fix T76498: Refactoring - Rename BKE modifiers funtionsAntonio Vazquez
2020-05-07Refactor: libquery: Add NodeTree foreach_id support.Bastien Montagne
2020-05-07Refactor: libquery: Add Material foreach_id support.Bastien Montagne
2020-05-07Fix (unreported) mistake in argument passing.Bastien Montagne
passing the address of the pointer instead of the pointer itself...
2020-05-07Refactor: libquery: Add Mesh foreach_id support.Bastien Montagne
2020-05-07Initial step to move libquery to IDTypeInfo.Bastien Montagne
Part of T74960 (and hence T75724). This commit only adds the basics helper code, and alter some internal libquery code to use it. Porting each IDType to the new system will be done gradually from there, to allow better detection and handling of potential issues. Differential Revision: https://developer.blender.org/D7598
2020-05-01Cleanup: moved drivers to BKE_fcurve_driver.h / fcurve_driver.cSybren A. Stüvel
All the driver-specific code in `fcurve.c` has been moved into a new file `fcurve_driver.c`. The corresponding declarations have been moved from `BKE_fcurve.h` to `BKE_fcurve_driver.h`. All the `#include "BKE_fcurve.h"` statements have been investigated and replaced with `BKE_fcurve_driver.h` where necessary. No functional changes.