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-12-14Cleanup: clang-formatCampbell Barton
2021-12-14Cleanup: Remove unused curve types from enumPiotr Makal
There were a few unused enum values: `CU_CARDINAL` and `CU_BSPLINE` This commit cleans them up from code as they were not used for anything meaningful. Differential Revision: https://developer.blender.org/D13554
2021-12-13GPencil: Add randomize options to Length modifierCody Winchester
This patch adds a randomize factor for the start/end lengths in the Length modifier. Reviewed By: #grease_pencil, antoniov, pepeland, HooglyBoogly Differential Revision: https://developer.blender.org/D12928
2021-12-13GPencil: New Shrinkwrap modifierAntonio Vazquez
his new modifier is equals to the existing mesh modifier but adapted to grease pencil. The underlying functions used to calculate the shrink are the same used in meshes. {F11794101} Reviewed By: pepeland, HooglyBoogly Differential Revision: https://developer.blender.org/D13192
2021-12-13Fix T93704: StructRNA.path_resolve fails silently with missing keysCampbell Barton
Resolving the path to a missing pose-bone (for example), was not raising an error as it should have. Regression introduced in f9ccd26b037d43f2490d1f0263e45e775d30473d, which didn't update collection lookup logic to fail in the case the key of a collection wasn't found.
2021-12-13Cleanup: use "filepath" term for Main, BlendFileData & FileGlobalCampbell Barton
Use "filepath" which is the current convention for naming full paths. - Main use "name" which isn't obviously a file path. - BlendFileData & FileGlobal used "filename" which is often used for the name component of a path (without the directory).
2021-12-11Cleanup: Use const argumentsHans Goudey
Also remove unnecessary function to set a node type's label function that duplicated its definition, and make another function static.
2021-12-10Cleanup: Use const argument, rename variablesHans Goudey
The const argument makes sense because these are the "source" sockets, even though a const cast is necessary at one point. The name "interface_socket" is an improvement over "stemp" because the latter sounds like "temporary", or it confuses the old socket template system with a node group's interface.
2021-12-09Geometry Nodes: Scene Time NodeJohnny Matthews
This node outputs the current scene time in seconds or in frames. Use of this node eliminates the need to use drivers to control values in the node tree that are driven by the scene time. Frame is a float value to provide for subframe rendering for motion blur. Differential Revision: https://developer.blender.org/D13455
2021-12-08Cleanup: move public doc-strings into headers for 'makesrna'Campbell Barton
Ref T92709
2021-12-07Cleanup: clang-formatCampbell Barton
2021-12-07Cleanup: Fix various source typosluzpaz
This is a continuation of D13462 to clean up source typos. Differential Revision: https://developer.blender.org/D13471
2021-12-02Cleanup: spelling in commentsCampbell Barton
2021-12-02Cleanup: Rename curve struct fieldsHans Goudey
These existing names were unhelpful at best, actively confusing at worst. This patch renames them to be consistent with the terms used to refer to the values in the UI. - `width` -> `offset` - `ext1` -> `extrude` - `ext2` -> `bevel_radius` Differential Revision: https://developer.blender.org/D9627
2021-12-02UI: Add an option to display the node editor context pathHans Goudey
Since we have the overlays popover, it makes sense to allow toggling the context path like in the 3D viewport. This commit adds a property, and turns it on by default in existing files. Differential Revision: https://developer.blender.org/D13248
2021-12-01Geometry Nodes: Generalized Compare NodeJohnny Matthews
Replace compare floats node with a generalized compare node. The node allows for the comparison of float, int, string, color, and vector. The datatypes support the following operators: Float, Int: <, >, <=, >=, ==, != String: ==, != Color: ==, !=, lighter, darker (using rgb_to_grayscale value as the brightness value) Vector Supports 5 comparison modes for: ==, !=, <, >, <=, >= Average: The average of the components of the vectors are compared. Dot Product: The dot product of the vectors are compared. Direction: The angle between the vectors is compared to an angle Element-wise: The individual components of the vectors are compared. Length: The lengths of the vectors are compared. Differential Revision: https://developer.blender.org/D13228
2021-12-01Add layer and pass index parameters to rna_Image_gl_loadPaul Golter
This patch adds a layer_idx and pass_idx parameter to the rna_Image_gl_load function. It exposes both to the Python API as optional parameters. This allows python scripters to specifiy which layer and pass they want to load in to an OpenGL texture. Right now image.gl_load() always takes the first layer and first pass. This is limiting when working with multilayer openEXRs. With this patch scripters can do something like this: ``` pass_idx = area.spaces.active.image_user.multilayer_pass layer_idx = area.spaces.active.image_user.multilayer_layer image.gl_load(frame=0, layer_idx=layer_idx, pass_idx=pass_idx) ``` As the parameters are optional and default to 0, it should not break existing code. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D13435
2021-11-30Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-30Fix T93353: Reload Library Override file loses Constraints, take II.Bastien Montagne
When adding `INSERT` operations over RNACollection items, rna diffing code did not properly report the properties as not being equals. This in turn triggered the 'purge unused exiting override properties' mechanism, thus deleting the exitsting (valid) insert override property operation. NOTE: This should also be backported to 2.93, and probably 2.83. Reviewed By: sybren, jbakker Maniphest Tasks: T93353 Differential Revision: https://developer.blender.org/D13426
2021-11-30Cleanup: clang-format, trailing spaceCampbell Barton
2021-11-29Geometry Nodes: Domain Size NodeJohnny Matthews
The Domain Size node has a single geometry input and a selection for the component type. Based on the component chosen, outputs containing single values for the related domains are shown. Mesh: - Point Count - Edge Count - Face Count - Face Corner Count Curve: - Point Count - Spline Count Point Cloud: - Point Count Instances: - Instance Count Differential Revision: https://developer.blender.org/D13365
2021-11-26Fix T89081: Freestyle noise seed of zero crashPhilipp Oeser
This leads to division by zero in Freestyle's NoiseShader which also crashes blender. Not sure if we really need a do_version patch for old files, as an alternative we could also force a positive number in the NoiseShader. This patch does not do either, just force a positive range in RNA from now on. Maniphest Tasks: T89081 Differential Revision: https://developer.blender.org/D13332
2021-11-24Animation: allow marking actions as cyclic for Cycle-Aware Keying.Alexander Gavrilov
When a manual frame range is set, allow marking an action as having Cyclic Animation. This does not affect how the action is evaluated, but the Cycle-Aware Keying option will automatically make any newly added F-Curves cyclic. This allows using the option from the start to build the cycle, rather than only for tweaking an existing loop. The curves are made cyclic when they have only one key, either after inserting the first key, or before adding the second one. The latter case avoids the need to manually make the first added curve cyclic after marking a newly added action cyclic. Differential Revision: https://developer.blender.org/D11803
2021-11-24Animation: allow manually setting the intended playback range for actions.Alexander Gavrilov
Some operations, e.g. adding a new action strip to NLA, require knowing the active frame range of an action. However, currently it can only be deduced by scanning the keyframes of the curves within it. This is not ideal if e.g. curves are staggered for overlap. As suggested by Nathan Vegdahl in comments to T54724, this patch adds Action properties that allow manually specifying its active frame range. The settings are exposed via a panel in the Dopesheet and Action Editor. When enabled, the range is highlighted in the background using a striped fill to distinguish it from the solid filled regular playback range. When set, the frame range is used when adding or updating NLA tracks, and by add-ons using `Action.frame_range`, e.g. FBX exporter. Differential Revision: https://developer.blender.org/D11803
2021-11-23Geometry Nodes: Node execution time overlayErik
Adds a new overlay called "Timings" to the Geometry Node editor. This shows the node execution time in milliseconds above the node. For group nodes and frames, the total time for all nodes inside (recursively) is shown. Group output node shows the node tree total. The code is prepared for easily adding new rows of information to the box above the node in the future. Differential Revision: https://developer.blender.org/D13256
2021-11-23Merge branch 'blender-v3.0-release'Philipp Oeser
2021-11-23Fix T93322: Freestyle Sinus Displacement Division by Zero CrashPhilipp Oeser
This happens if the Wavelength is set to 0.0f. Not sure if we really need a do_version patch for old files, as an alternative we could also force a slight offset in the SinusDisplacementShader. This patch does not do either, just force a positive range from now on. Maniphest Tasks: T93322 Differential Revision: https://developer.blender.org/D13329
2021-11-23Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-23Asset Browser: add operator for installing asset bundlesSybren A. Stüvel
Add an operator "Copy to Asset Library" for installing asset bundles into already-existing asset libraries. The operator is shown when: - the "Current File" library is selected, - the blend file name matches `*_bundle.blend`, and - the file is not already located in an asset library. The user can select a target asset library, then gets a "Save As" dialogue box to select where in that library the file should be saved. This allows for renaming, saving in a subdirectory, etc. The Asset Catalogs from the asset bundle are merged into the target asset library. The operator will refuse to run when external files are referenced. This is not done in its poll function, as it's quite an extensive operator (it loops over all ID datablocks). Reviewed by: Severin Differential Revision: https://developer.blender.org/D13312
2021-11-22Merge branch 'blender-v3.0-release'Bastien Montagne
2021-11-22Fix broken NLA RNA code after own rBfa6a913ef19c.Bastien Montagne
Thanks to @scurest for noticing this mistake!
2021-11-19Geometry Nodes: Support custom instance attributesErik
Adds an attribute provider for instance attributes. A new domain `ATTR_DOMAIN_INSTANCE` is implemented. Instance attributes are not yet realized correctly. Differential Revision: D13149
2021-11-19Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-19Merge branch 'blender-v3.0-release'Bastien Montagne
Conflicts: source/blender/blenkernel/BKE_blender_version.h source/blender/blenloader/intern/versioning_300.c
2021-11-19Asset Preferences: disallow single file as asset librarySybren A. Stüvel
Asset libraries should be directories on disk. By manually entering a file path it was possible to have a single blend file as asset library, but that was not a designed-for situation, and it doesn't play well with the asset catalog system.
2021-11-19LibOverrides: Refactor how diffing of RNA collections is handled.Bastien Montagne
Original implementation was a quick prototype which should have never landed as-is in master. It had very limiting constraints and did not allow for any real further development. This commit fixes the internal implementation to make more sensible, maintainable and evolutive. NOTE: This commit introduces another forward-incompatibility in the Blender file format: Files saved after this commit won't open properly in older versions of blender regarding local inserted constraints or modifiers into overrides of linked data. NOTE: Technical details: The 'anchor' item name/index is now stored in `subitem_reference_` members, and the actual 'source' item name/index is stored in `subitem_local_` members of the override property operation data. Previously, only the `subitem_local_` members were used, storing the anchor item name/index, and assuming the 'source' item was always the next in the list. Milestone I of T82160. Maniphest Tasks: T82160 Differential Revision: https://developer.blender.org/D13282
2021-11-19Merge branch 'blender-v3.0-release'Omar Emara
2021-11-19Cleanup: fix typos in comments and docsBrecht Van Lommel
Contributed by luzpaz. Differential Revision: https://developer.blender.org/D13264
2021-11-19LibOverride: Add read-only flags accessors for 'local override' status.Bastien Montagne
Constraints, modifiers and NLA tracks can now report from RNA whether they are defined as comming from the override's reference linked data, or are local to the override.
2021-11-19Fix (unreported) wrong behavior of constraints in liboverrides.Bastien Montagne
All constraints were 'made local', including the ones comming from the reference linked object.
2021-11-19Cleanup: Add an empty() method to RNA's CollectionRef classJesse Yurkovich
The existing RNA CollectionRef class only offers a length() operation which is sometimes used for checking if the collection is empty. This is inefficient for certain collection types which do not have a native length member; the entire list is iterated to find the count. This patch creates an explicit empty() method to be used in such cases for better semantics. Additionally, many collection types will behave more efficiently when using the new method instead of checking length. Making use of the new method will follow separately. Differential Revision: https://developer.blender.org/D12314
2021-11-18Revert fixesGermano Cavalcante
2021-11-18Revert "Revert "Revert "Revert "Allow navigating while transforming""""Germano Cavalcante
This reverts commit 717a971035071d36af03d65713408f4da1f69cb3.
2021-11-18Revert "Revert "Revert "Allow navigating while transforming"""Germano Cavalcante
This reverts commit 2a9cfdac7e126e37afb82e15a131717041f3d2f8.
2021-11-18Revert "Revert "Allow navigating while transforming""Germano Cavalcante
This reverts commit 5e6fdaa07fff907e02b36813ccde0702bad4fb4d.
2021-11-18Revert "Allow navigating while transforming"Germano Cavalcante
This reverts commit 1d1855e95f916685fed970904fc37701a4a0e031.
2021-11-18Allow navigating while transformingGermano Cavalcante
This feature has been desired for some time: - https://rightclickselect.com/p/ui/Tqbbbc/allow-navigating-while-transforming (See comments); - D1583; - T37427; In short, blocking navigation during transform limits the user to move the object only to visible areas within the screen and hinders the allocation of objects within closed meshes. The node editor is also impaired because some nodes are far between them and the connectors are too small. The only disadvantage of this patch (as I see it) is the conflict with the existing key map: MIDDLEMOUSE: - enable axis constrain in 3D view; WHEELDOWNMOUSE, WHEELUPMOUSE, PAGEUPKEY, PAGEDOWNKEY: - change the threshold of the proportional edit; So the patch solution was to change these keymaps: - MIDDLEMOUSE to Alt+MIDDLEMOUSE; - WHEELDOWNMOUSE, WHEELUPMOUSE, PAGEUPKEY, PAGEDOWNKEY to Alt+(corresponding key); When you use this new keymap for the first time in the proportional edit, it may seem strange due to the custom of using it (both in View2D and View3D). But quickly the user gets used to it. Alternatively we can add an option to the user preferences ([] Allow navigating while transforming). (I'm not much fan of this option). The patch was done on branch2.8. But maybe it's a good idea to apply it to 2.79 Differential Revision: https://developer.blender.org/D2624
2021-11-18Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-18Fix T92442: undo removal of Eevee cryptomatte accurate mode optionBrecht Van Lommel
The Cycles accurate mode was removed, but the Eevee option for this has a different meaning and should not have been removed. The Eevee accurate makes cryptomatte accumulate for every sample, which Cycles has always done regardless of any option.
2021-11-18VSE: Add meta.separate() Python API functionFélix
This function can be used to "dissolve" meta strip anywhere in strip hierarchy. This has same effect as `meta_separate` operator. Reviewed By: ISS Differential Revision: https://developer.blender.org/T91005