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-04-16Multi-Object EditingCampbell Barton
This adds initial multi-object editing support. - Selected objects are used when entering edit & pose modes. - Selection & tools work on all objects however many tools need porting See: T54641 for remaining tasks. Indentation will be done separately. See patch: D3101
2018-04-16Merge branch 'master' into blender2.8Campbell Barton
2018-04-16Cleanup: indentationCampbell Barton
2018-04-16Merge branch 'master' into blender2.8Campbell Barton
2018-04-16BKE_context: macro to access ID's while loopingCampbell Barton
2018-04-16Cleanup: move some screen utility functions, from topbar branch.Julian Eisel
2018-04-16Merge branch 'master' into blender2.8Sergey Sharybin
2018-04-16Make ID icons safe for deletion from threadsSergey Sharybin
Added a lock-free deferred queue for deletion. Now if ID icon is requested to be freed from non-main thread, it will be added to the deferred list. Actual deletion will happen later from main thread. Currently actual deletion only happens next time BKE_icon_id_delete() is called, which might not be enough. But it's easy to enforce deferred deletion. Icons for preview images are not covered by deferred deletion yet. Reviewers: mont29 Differential Revision: https://developer.blender.org/D3146
2018-04-15Merge branch 'master' into blender2.8Campbell Barton
2018-04-15Cleanup: ED_armature namingCampbell Barton
- Wasn't clear which functions handle edit-bones. - Mixed both ebone and edit_bone in names. - Didn't use ED_armature_* prefix for public API. See P655 to apply to branches.
2018-04-15Merge branch 'master' into blender2.8Campbell Barton
2018-04-15Cleanup: remove undoing access, minor formattingCampbell Barton
Access to undoing state isn't needed, some text insert code was overly compacted.
2018-04-15Fix T54593: Py text edits crash (undo regression)Campbell Barton
2018-04-14Merge branch 'master' into blender2.8Campbell Barton
2018-04-14Cleanup: use const for BKE_object argsCampbell Barton
2018-04-14Merge branch 'master' into blender2.8Campbell Barton
2018-04-14Fix T54568: Undo memory de-duplication failedCampbell Barton
Error in 651b8fb14e caused de-duplication to fail.
2018-04-13Python API: remove preview/render resolution settings from API functions.Brecht Van Lommel
For correct results these must have been set already when the depsgraph was created and evaluated, so all dependencies have appropriate resolutions too. For particle we no longer backup and restore the viewport particles to avoid overwriting them during render, as copy-on-write solves this for us. Even without COW particles seem to work ok. This also removes the particle simplification options based on camera. This was never used much and only available in Blender Internal. Differential Revision: https://developer.blender.org/D3148
2018-04-13Depsgraph: don't pass evaluation context to update functions.Brecht Van Lommel
The depsgraph now contains all the state needed to evaluate it. Differential Revision: https://developer.blender.org/D3147
2018-04-13Depsgraph: remove engine type from evaluation context.Brecht Van Lommel
This was only used for viewport rendering, where we can just pass the engine type directly. There is no technical reason why we can't draw the same depsgrpah with different render engines. It also led to some weird things like requiring a render engine for snapping and raycast API functions. Differential Revision: https://developer.blender.org/D3145
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
2018-04-13Fix incorrect object in editmode tests in depsgraph eval.Brecht Van Lommel
These cases should not depend on the view layer.
2018-04-13Point cache: stop using general object dupli system.Brecht Van Lommel
We now only look into dupli groups to find point caches to edit. This feature is a leftover from the old proxy system, and evaluating the full dupli list and all transforms was overkill. With static overrides we may want to get rid of using duplis entirely, and just let users select the objects directly.
2018-04-13Cleanup: add utility function to find a single point cache ID.Brecht Van Lommel
2018-04-12Depsgraph: Bind base by it's indexSergey Sharybin
For the performance we convert object bases list to an array during view layer evaluation. This makes it possible to have very cheap index-based base lookup. The goal of this change is to get rid of base used for function binding, and avoid scene datablock expansion at the depsgraph construction time.
2018-04-12Depsgraph: Bind view layer by indexSergey Sharybin
Makes it a bit slower to evaluate single view layer, but this is does not happen often, and overall number of layers is not very high.
2018-04-12Depsgraph: Remove function bindings with collectionsSergey Sharybin
Use single function to evaluate all the collections for the given view layer. This way we avoid need to get scene ID sub-data. Similar to pchan index, this allows us to avoid build-time scene expansion, which also simplifies update of the scene datablock. Well, sort of. There is still work to be done to get rid of build-time scene datablock expansion, which includes: - Need to pass view layer by index. Annoying part would be to get actual view layer for that index. In practice doing list lookup might not be such a bad idea, since such lookup will not happen very often, and it is unlikely to have more than handful of view layer anyway. Other idea could be to use view layer from evaluation context. Or maybe from depsgraph, which is supposed to be in the context. Can have some assert statements to make sure everything is good. - Need to get id of base binding for flags flush. We can replace that with index-based lookup from an array created by view layer evaluation. Reviewers: dfelinto Differential Revision: https://developer.blender.org/D3141
2018-04-11Fix again 'auto override' system.Bastien Montagne
Got lost in big undo refactor. Note that this is probably (maybe) not how we want to have it in the end, things like EditMode undo should probably not trigger this check?
2018-04-10Merge branch 'master' into blender2.8Sergey Sharybin
2018-04-09Use the newer version of the bullet 6dof spring constraint for rigidbody.Alexander Gavrilov
The new constraint is slower and not backward compatible, but should be better, especially in the damping side. The new constraint also has a different valid range of the damping coefficient, and a limit implementation that bounces instead of making the object stationary. Reviewers: sergof Differential Revision: https://developer.blender.org/D3125
2018-04-09Merge branch 'master' into blender2.8Sybren A. Stüvel
2018-04-09Added support for the WEBM/VP9 video codecSybren A. Stüvel
WEBM is the codec name, and VP9 is the encoder (the older encoder "VP8" is less efficient than VP9). WEBM/VP9 and h.264 both have options to control the file size versus compression time (e.g. fast but big, or slow and small, for the same output quality). Since WEBM/VP9 only has three choices, I've chosen to map those to 3 of the 9 possible choices of h.264: - BEST → SLOWER - GOOD → MEDIUM - REALTIME → SUPERFAST The VERYSLOW and ULTRAFAST options give very little extra benefit. Reviewed by: @Severin
2018-04-08Merge branch 'master' into blender2.8Sybren A. Stüvel
2018-04-06Cleanup: style, doxy headersCampbell Barton
2018-04-05Cleanup: use string macros to avoid duplicate argsCampbell Barton
2018-04-05Remove workspace object mode, reverts changes w/ 2.8Campbell Barton
This caused too many problems syncing object modes with multiple objects/windows/workspaces, see: D3130 for details.
2018-04-05Merge branch 'master' into blender2.8Sybren A. Stüvel
2018-04-05Load metadata from video files and expose via RNASybren A. Stüvel
The MovieSequence and MovieClip classes now have a metadata() function that exposes the `IDProperty *` holding the video metadata. Part of: https://developer.blender.org/D2273 Reviewed by: @campbellbarton
2018-04-05Write the scene render frame range to image/video filesSybren A. Stüvel
This is useful to create a mapping from the frame range in the video to frame index in the blend file. Part of: https://developer.blender.org/D2273 Reviewed by: @campbellbarton
2018-04-05Write StampData metadata to video filesSybren A. Stüvel
This is currently only supported by FFmpeg (so not frameserver, AVI RAW, or AVI JPEG), and only seems to work when using Matroska or Ogg Theora containers. Only metadata that doesn't change from frame to frame is written to video files. This distinction is visible in the UI by looking at the stamp checkbox tooltips (they either mention "image" or "image/video"). Part of: https://developer.blender.org/D2273 Reviewed by: @campbellbarton
2018-04-05IMB_metadata improvementsSybren A. Stüvel
- Metadata handling is now separate from `ImBuf *`, allowing it to be used with a generic `IDProperty *`. - Merged `IMB_metadata_add_field()` and `IMB_metadata_change_field()` into a more robust `IMB_metadata_set_field()`. This new function doesn't return any status (it now always succeeds, and the previously existing return value was never checked anyway). - Removed `IMB_metadata_del_field()` as it was never actually used anywhere. - Use `IMB_metadata_ensure()` instead of having `IMB_metadata_set_field()` create the containing `IDProperty` for you. - Deduplicated function declarations, moved `intern/IMB_metadata.h` out of `intern/`. Note that this does mean that we have some extra `#include "IMB_metadata.h"` lines now, as the metadata functions are no longer declared in `IMB_imbuf.h`. - Deduplicated function declarations, all metadata-related declarations are now in imbuf/IMB_metadata.h. Part of: https://developer.blender.org/D2273 Reviewed by: @campbellbarton
2018-04-05Merge branch 'master' into blender2.8Campbell Barton
2018-04-05Undo: split text undo steps out of the data-blockCampbell Barton
This moves undo storage into a separate struct which is passed in from the undo system.
2018-04-05Undo System: return undo step from undo push initCampbell Barton
Also improve logging
2018-04-04Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/blenkernel/BKE_object.h
2018-04-04Fix modifier freeing code re. ID refcounting.Bastien Montagne
Free code should not handle ID refcounting at all. This has to be done at higher level, since in some case we want to free (temp) data that actually did not refcount at all its IDs. This change seems to be working OK, but as usual in that area, only lots of testing in real-case situation will say whether there are some hidden bugs or not.
2018-04-04Merge branch 'master' into blender2.8Sergey Sharybin
2018-04-04Depsgraph: Assert that pchan index is always validSergey Sharybin
2018-04-04Merge branch 'master' into blender2.8Sergey Sharybin
2018-04-04Depsgraph: Only bind ID-data and indices to depsgraph callbacksSergey Sharybin
This is a part of copy-on-write sanitization, to avoid all the checks which were attempting to keep sub-data pointers intact. Point is: ID pointers never change for CoW datablocks, but nested data pointers might change when updating existing copy. Solution: Only bind ID data pointers and index of sub-data. This will make CoW datablock 7update function was easier in 2.8. In master we were only using pose channel pointers in callbacks, this is exactly what this commit addresses. A linear lookup array is created on pose evaluation init and is thrown away afterwards. One thing we might consider doing is to keep indexed array of poses, similar to chanhash. Reviewers: campbellbarton Reviewed By: campbellbarton Subscribers: dfelinto Differential Revision: https://developer.blender.org/D3124