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
2018-11-30Merge branch 'master' into blender2.8Campbell Barton
2018-11-30Cleanup: name macros w/ matching BEGIN/ENDCampbell Barton
2018-11-23Fix T57616: Deleting particle system instance object leads to crashSergey Sharybin
Explicitly tag copy-on-write form library remap. Previously, this tag was used implicitly via geometry/transform tagging, which worked ok for objects. For non-objects we do need to ensure all copies has correct pointer and the only way to do so is to pass tag explicitly. There is probably more places in the library remap where this is needed, but not being familiar with the code makes it difficult to spot where possible tags are missing.
2018-11-10Fix (unreported) crash when deleting collection in freshly duplicated scene.Bastien Montagne
From startup .blend, add a 'full copy' new scene, and delete its Collection 1.001 collection. That would make blender crash, once again due to NULL collection pointer in some ChildrenCollection struct...
2018-10-29Fix T57372: Second full scene copy crashes on deletion.Bastien Montagne
Hope this time we are done for good (root of the issue was that master collections are not in bmain...).
2018-10-29Fix stupid multiple-call of same function in Collections remapping code.Bastien Montagne
Related to T57372: Second full scene copy crashes on deletion (fixes deleting second copy, but now it crashes on deleting the first copy...).
2018-10-21Fix T57320: Crash when adding a linked scene, then deleting it.Bastien Montagne
You want to check collections (for NULL children) first, before you actually go into those children collections checking for NULL objects...
2018-10-21Fix non-sense overloaded code in remapping post-process of objects and ↵Bastien Montagne
collections. In one case, code was calling the same func on bmain for all objects or collections inside that bmain... seriously...
2018-09-24Merge branch 'master' into blender2.8Brecht Van Lommel
2018-09-24Spelling fixes in comments and descriptions, patch by luzpaz.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D3719
2018-09-10Fix T56717: crash removing/adding objects.Brecht Van Lommel
Object bases hash always needs to be freed on library remapping.
2018-09-03Fix T56622: crash and other bugs deleting scenes.Brecht Van Lommel
Simplify library remapping code to handle special collection/object links in postprocess. Previously base contained the actual object link which needed special handling in preprocess, now objects are linked through collection and the base cache can be updated in postprocess.
2018-08-29Cleanup: rename files from group to collection to match contents.Brecht Van Lommel
2018-06-18Fix a very nasty and sneaky bug in lib remap / static override code.Bastien Montagne
Not sure why remap call for static override reference ID pointer was put there, probably a mistake during some merge back in the days... But this ended up with self_id of libquery data struct still being set to previous ID pointer, which could randomly generate crap like falsly reporting indirect data and such, leading to lost reference datablock at writefile time...
2018-06-18Cleanup: use DEG tag flags, instead of old OB ones.Bastien Montagne
Having those two in parallel is ratehr confusing... :/
2018-06-17Merge branch 'master' into blender2.8Campbell Barton
2018-06-17Cleanup: trailing space for blenkernelCampbell Barton
2018-06-12Cleanup: moar removal of G.main in BKE area...Bastien Montagne
2018-05-29Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenkernel/BKE_material.h source/blender/blenkernel/BKE_mesh.h source/blender/blenkernel/intern/library_remap.c source/blender/blenkernel/intern/material.c source/blender/editors/object/object_relations.c source/blender/editors/render/render_preview.c source/blender/makesrna/intern/rna_object.c
2018-05-29Cleanup: Get rid of G.main in BKE_material.Bastien Montagne
Note that in some cases, this only moves the G.main case to somne other places - in particular, RNA getters/setters are becoming annoying here...
2018-05-18Collections and groups unificationBrecht Van Lommel
OVERVIEW * In 2.7 terminology, all layers and groups are now collection datablocks. * These collections are nestable, linkable, instanceable, overrideable, .. which opens up new ways to set up scenes and link + override data. * Viewport/render visibility and selectability are now a part of the collection and shared across all view layers and linkable. * View layers define which subset of the scene collection hierarchy is excluded for each. For many workflows one view layer can be used, these are more of an advanced feature now. OUTLINER * The outliner now has a "View Layer" display mode instead of "Collections", which can display the collections and/or objects in the view layer. * In this display mode, collections can be excluded with the right click menu. These will then be greyed out and their objects will be excluded. * To view collections not linked to any scene, the "Blender File" display mode can be used, with the new filtering option to just see Colleciton datablocks. * The outliner right click menus for collections and objects were reorganized. * Drag and drop still needs to be improved. Like before, dragging the icon or text gives different results, we'll unify this later. LINKING AND OVERRIDES * Collections can now be linked into the scene without creating an instance, with the link/append operator or from the collections view in the outliner. * Collections can get static overrides with the right click menu in the outliner, but this is rather unreliable and not clearly communicated at the moment. * We still need to improve the make override operator to turn collection instances into collections with overrides directly in the scene. PERFORMANCE * We tried to make performance not worse than before and improve it in some cases. The main thing that's still a bit slower is multiple scenes, we have to change the layer syncing to only updated affected scenes. * Collections keep a list of their parent collections for faster incremental updates in syncing and caching. * View layer bases are now in a object -> base hash to avoid quadratic time lookups internally and in API functions like visible_get(). VERSIONING * Compatibility with 2.7 files should be improved due to the new visibility controls. Of course users may not want to set up their scenes differently now to avoid having separate layers and groups. * Compatibility with 2.8 is mostly there, and was tested on Eevee demo and Hero files. There's a few things which are know to be not quite compatible, like nested layer collections inside groups. * The versioning code for 2.8 files is quite complicated, and isolated behind #ifdef so it can be removed at the end of the release cycle. KNOWN ISSUES * The G-key group operators in the 3D viewport were left mostly as is, they need to be modified still to fit better. * Same for the groups panel in the object properties. This needs to be updated still, or perhaps replaced by something better. * Collections must all have a unique name. Less restrictive namespacing is to be done later, we'll have to see how important this is as all objects within the collections must also have a unique name anyway. * Full scene copy and delete scene are exactly doing the right thing yet. Differential Revision: https://developer.blender.org/D3383 https://code.blender.org/2018/05/collections-and-groups/
2018-05-11Depsgraph: Remove workaround for scene freeSergey Sharybin
No functional changes commit ;)
2018-05-09BKE_id_free(): avoid UI and DEG calls when tagged with LIB_TAG_NO_MAINSybren A. Stüvel
This prevents threading issues & crashes from modifiers that create temporary meshes.
2018-04-17Removing Blender Game Engine from Blender 2.8Dalai Felinto
Folders removed entirely: * //extern/recastnavigation * //intern/decklink * //intern/moto * //source/blender/editors/space_logic * //source/blenderplayer * //source/gameengine This includes DNA data and any reference to the BGE code in Blender itself. We are bumping the subversion. Pending tasks: * Tile/clamp code in image editor draw code. * Viewport drawing code (so much of this will go away because of BI removal that we can wait until then to remove this.
2018-03-09Cleanup: iterator macrosCampbell Barton
- put render iterator in own scope (would shadow it's own variable if used multiple times). - enforce semicolon at end of iterator macros. - no need to typedef one-off macro structs.
2018-03-01Cleanup: macro's w/ an _END need a matching _BEGINCampbell Barton
Convention from 2.7x, since some looping macros don't need an '_END', it avoids confusion to keep this.
2018-02-22Fix T54136: Crash when deleting an object that is in an instanced groupDalai Felinto
We were not cleaning up groups after deleting objects, leaving groups with Bases that had no object. It includes a unittest. Reviewers: mont29
2018-01-25Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenkernel/intern/library_remap.c
2018-01-25Fix T53363: Blender won't update mesh's usercount when deleting object ↵Bastien Montagne
datablocks in Editmode. Only do special handling of ob->data pointer in case we are remapping to a valid (non-NULL) other obdata. Otherwise, handle it as any other 'remapping to NULL' case. Hopefully not breaking anything else...
2017-12-11DNA/RNA: add 'py_instance' for ID typesCampbell Barton
Avoid creating new Python instances every time a scene, object, mesh .. etc are accessed. Also resolves crashes T28724, T53530 although it's only valid for ID types, not modifiers vertices etc. Back-ported from blender2.8 branch.
2017-12-01Groups and collection: initial integrationDalai Felinto
Since we are ditching layers from Blender (2.8) we need a replacement to control groups visibility. This commit introduces collections as the building blocks for groups, allowing users to control visibility as well as overrides for groups. Features ======== * Groups now have collections This way you can change the visibility of a collection inside a group, and add overrides which are part of the group and are prioritized over other overrides. * Outliner Groups can inspect their collections, change visibility, and add/remove members. To change an override of a group collection, you need to select an instance of the group, and then you can choose "group" in the collection properties editor to edit this group active collection instead of the view layer one. * Dupli groups overrides We can now have multiple instances of the same group with an original "override" and different overrides depending on the collection the instanced object is part of. Technical ========= * Layers We use the same api for groups and scene as much as possible. Reviewers: sergey (depsgraph), mont29 (read/write and user count) Differential Revision: https://developer.blender.org/D2892
2017-11-29Merge ID static override, part I: core changes in DNA, BKE and .blend ↵Bastien Montagne
read/write. See https://developer.blender.org/D2417 for details. Note that since static overrides rely heavily on RNA, this commit is essentially invisible from user PoV, more in next commits.
2017-11-08Farewell Scene->baseDalai Felinto
While getting rid of Scene->base we got the following fixes: * Fix "Convert To" operator * Fix "NLA allowing to selected objects that are not selectable * Fix scene.objects (readonly, no option to link/unlink) Note: Collada needs to use the context SceneLayer for adding objects however I added a placeholder, so Collada maintainers can fix this properly.
2017-11-06Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: intern/cycles/device/device.cpp source/blender/blenkernel/intern/library.c source/blender/blenkernel/intern/material.c source/blender/editors/object/object_add.c source/blender/editors/object/object_relations.c source/blender/editors/space_outliner/outliner_draw.c source/blender/editors/space_outliner/outliner_edit.c source/blender/editors/space_view3d/drawobject.c source/blender/editors/util/ed_util.c source/blender/windowmanager/intern/wm_files_link.c
2017-11-06Rename ID_IS_LINKED_DATABLOCK to ID_IS_LINKED.Bastien Montagne
This makes code closer to id_override/assent-engine ones, which introduce a new type of linked data, and hence reserve ID_IS_LINKED_DATABLOCK to real linked datablocks.
2017-08-26Merge branch 'master' into blender2.8Campbell Barton
2017-08-25Fix T52481: After making all local, local proxies of linked data get broken ↵Bastien Montagne
after file save and reload. Issue was nasty hidden one, the dual status (mix of local and linked) of proxies striking again. Here, remapping process was considering obdata pointer of proxies as indirect usage, hence clearing the 'LIB_TAG_EXTERN' of obdata pointer. That would make savetoblend code not store any 'lib placeholder' for obdata data-block, which was hence lost on next file read. Another (probably better) solution here would be to actually consider obdata of proxies are fully indirect usage, and simply reassign proxies from their linked object's obdata on file read... However, that change shall be safer for now, probably good for 2.79 too.
2017-08-10Fix after last merge.Bastien Montagne
2017-08-10Merge branch 'master' into blender2.8Bastien Montagne
2017-08-10Fix T52324: Metaball disappears when deleting first metaball object.Bastien Montagne
Lost specific MBall 'need update' case here in last year's refactor. While technically not a regression, nice to have in 2.79.
2017-08-07Merge again...Bastien Montagne
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
This will allow much finer controll over how we copy data-blocks, from full copy in Main database, to "lighter" ones (out of Main, inside an already allocated datablock, etc.). This commit also transfers a llot of what was previously handled by per-ID-type custom code to generic ID handling code in BKE_library. Hopefully will avoid in future inconsistencies and missing bits we had all over the codebase in the past. It also adds missing copying handling for a few types, most notably Scene (which where using a fully customized handling previously). Note that the type of allocation used during copying (regular in Main, allocated but outside of Main, or not allocated by ID handling code at all) is stored in ID's, which allows to handle them correctly when freeing. This needs to be taken care of with caution when doing 'weird' unusual things with ID copying and/or allocation! As a final note, while rather noisy, this commit will hopefully not break too much existing branches, old 'API' has been kept for the main part, as a wrapper around new code. Cleaning it up will happen later. Design task : T51804 Phab Diff: D2714
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
This will allow much finer controll over how we copy data-blocks, from full copy in Main database, to "lighter" ones (out of Main, inside an already allocated datablock, etc.). This commit also transfers a llot of what was previously handled by per-ID-type custom code to generic ID handling code in BKE_library. Hopefully will avoid in future inconsistencies and missing bits we had all over the codebase in the past. It also adds missing copying handling for a few types, most notably Scene (which where using a fully customized handling previously). Note that the type of allocation used during copying (regular in Main, allocated but outside of Main, or not allocated by ID handling code at all) is stored in ID's, which allows to handle them correctly when freeing. This needs to be taken care of with caution when doing 'weird' unusual things with ID copying and/or allocation! As a final note, while rather noisy, this commit will hopefully not break too much existing branches, old 'API' has been kept for the main part, as a wrapper around new code. Cleaning it up will happen later. Design task : T51804 Phab Diff: D2714
2017-07-26Last commit broke WITH_PYTHON_SAFETYCampbell Barton
Re-enable BPY_id_release call with thats enabled.
2017-07-26BPY_id_release was a nop, use RNA invalidate directlyCampbell Barton
2017-06-27Merge branch 'master' into blender2.8Campbell Barton
2017-06-26Fix T51902: Severe problem with relocating linked libraries when using proxies.Bastien Montagne
Fix is a bit ugly, but cannot think of another solution for now, at least this **should** not break anything else. And now I go find myself a very remote, high and lonely mountain, climb to its top, roar "I hate proxies!" a few times, and relax hearing the echos...
2017-06-14Merge branch 'master' into blender2.8Sergey Sharybin
2017-06-14Remove unused bmain argument from BKE_libblock_free_dataSergey Sharybin
2017-06-14Merge branch 'master' into blender2.8Sergey Sharybin