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
path: root/source
AgeCommit message (Collapse)Author
2022-04-13Cleanup: shadowed variable warningCampbell Barton
2022-04-13gpy.types.GPUUniformBuf: support any object exposing buffer interfaceGermano Cavalcante
Since uniform buffers are generally structs and not sequences, `BPyGPU_BufferType` objects are not suitable for filling the buffer.
2022-04-13gpu.types.Buffer: fill buffer interface with just what is requestedGermano Cavalcante
Use the `flags` parameter to avoid unnecessary allocations.
2022-04-13Fix size of MAT3 and MAT4 in GPUShaderCreateInfo.push_constantGermano Cavalcante
It was being wrongly multiplied by 2.
2022-04-13Fix cases where 'Py_buffer' might not be releasedGermano Cavalcante
2022-04-13Fix possible pointer being freed without being allocated in pygpu moduleGermano Cavalcante
The `clear` method can be called before dealloc, which can mislead buffer ownership.
2022-04-13pyGPU: Port 'StageInterfaceInfo' and 'ShaderCreateInfo' typesGermano Cavalcante
In order to allow GLSL Cross Compilation across platforms, expose in Python the `GPUShaderCreateInfo` strategy as detailed in https://wiki.blender.org/wiki/EEVEE_%26_Viewport/GPU_Module/GLSL_Cross_Compilation The new features can be listed as follows: ``` >>> gpu.types.GPUShaderCreateInfo. define( fragment_out( fragment_source( push_constant( sampler( typedef_source( uniform_buf( vertex_in( vertex_out( vertex_source( >>> gpu.types.GPUStageInterfaceInfo. flat( name no_perspective( smooth( >>> gpu.shader.create_from_info( ``` Reviewed By: fclem, campbellbarton Differential Revision: https://developer.blender.org/D14497
2022-04-12Fix: Assert when curve has no evaluated pointsHans Goudey
It is valid for NURBS curves to have no evaluated points in some cases.
2022-04-12Cleanup: Remove reference to CD_NORMAL in poly custom dataHans Goudey
Vertex and face normals are not stored in custom data anymore, in both Mesh and DerivedMesh.
2022-04-12Cleanup: Correct wording in commentsHans Goudey
2022-04-12Fix T97069: Null collection object during layercollection resync when relinking.Bastien Montagne
We better handle NULL object pointers before doing layer collections resync, otherwise said resync process has to deal with those NULL pointers. By the look of it this mistake has been there since the origin of the remapping/relinking code. Also for safety (and optimization), do not perform layer collection resync from `libblock_remap_data_postprocess_object_update` when `libblock_remap_data_postprocess_collection_update` is called immediately afterwards. Also added same 'skip on NULL collection object pointer' check to `layer_collection_local_sync` as the one in `layer_collection_objects_sync`, since it's fairly hard to always guaranty there is no such NULL pointer when calling that code.
2022-04-12Fix (unreported) use-after-free case in Properties Editor ID remapping code.Bastien Montagne
Regression in rBa21bca0e20a051, found while investigating T97069.
2022-04-12Fix: BMesh Python API errors after vertex_normals additionHans Goudey
64cd927519748bbd50 didn't update the argument parsing strings, and updated the docstring of `from_object` incorrectly. Fixes T97025, T97213
2022-04-12Cleanup: redundant logical notGermano Cavalcante
Overlooked at rB0ebcc711f. The logical not in this case was only applied to the left hand side of the comparison.
2022-04-12Cleanup: remove unused multi-functionJacques Lucke
2022-04-12Cleanup: pass vectors by referenceJacques Lucke
Passing them by value caused measurable overhead for me.
2022-04-12Fix T95679: Outliner 'Unlink' directly on action misses DEG updatePhilipp Oeser
Animation would still play in the viewport. There are two ways to unlink an action from the Outliner: [1] `Unlink Action` on the Animation Data context menu. This does `outliner_do_data_operation` / `unlinkact_animdata_fn` and has the correct DEG update. [2] `Unlink` on the Action context menu This does `outliner_do_libdata_operation` / `unlink_action_fn` and was missing the DEG update. Now add the missing DEG update to the second case. Maniphest Tasks: T95679 Differential Revision: https://developer.blender.org/D14089
2022-04-12Fix Pushdown of an action from the Action Editor lacks immediate updatesPhilipp Oeser
The issue reported was that the recently introduced manual framerange of an action (see rB5d59b38605d6) was not having an immediate effect in case the action was pushed down from the Action Editor and only showed its effects after e.g. saving and reloading the file. However doing the same thing (pushing down the action) was working fine when done from the NLA. Now bring pushdown in sync (in terms of DEG update tagging) between the Action Editor and the NLA, meaning that now both the owner and the action are tagged when pushdown happens from the Action Editor as well. Fixes T96964. Maniphest Tasks: T96964 Differential Revision: https://developer.blender.org/D14564
2022-04-12Fix T97132: Create a color attribute automaticallyJoseph Eagar
for color filter tool instead of canceling.
2022-04-12Fix T97100: Fix ordering in color attribute list itemsJoseph Eagar
The new tab in the properties panel for "Color Attributes" shows the data type and domain, just like the Attributes tab. The issue is that the UI does not scale well and can only display the full names when dragged to an extreme width. This is due to the inclusion of the render icon in between the attribute name and attribute type description. This patch changes the order that items are displayed in the Color Attributes Panel. Moving the render icon to the very right. The result is consistent with other parts of the Blender UI and does not take as much space to display the full text. Reviewed By: @jbakker Differential Revision: https://developer.blender.org/D14567 Ref D14567
2022-04-12Fix T97098: Color filter sharpening artifacts.Joseph Eagar
Color filter sharpening now clamps the output. The sharpening delta is now calculated from the difference of two levels of vertex averaging instead of one smooth iteration and the base color. TODO: Sharpen in a different color space; SRGB-linear has saturation artifacts. I tried HSL but it had value artifacts. I'd like to try LAB but we don't seem to have conversion functions for it (at least as far as I could see).
2022-04-12Cleanup: use _NUM suffix for space/region type rangesCampbell Barton
- Replace SPACE_TYPE_LAST with SPACE_TYPE_NUM (adding 1). - Rename RGN_TYPE_LEN to RGN_TYPE_NUM This makes it possible to tag space-type/region-type combinations with `bool tag[SPACE_TYPE_NUM][RGN_TYPE_NUM]` which reads more clearly than `bool tag[SPACE_TYPE_LAST + 1][RGN_TYPE_LEN]`.
2022-04-12Fix wrong key type for GSet in Grease Pencil same material selectionLukas Stockner
The type of the key was changed from string to integer in 66da2f537ae8, but the GSet was still being created for string keys. As long as the integers stay small enough, this even kind of works on little-endian systems, but of course it should use an integer hash instead.
2022-04-12Cleanup: clang-formatLukas Stockner
2022-04-12UI: Add support for showing socket descriptions in tooltipsLukas Stockner
Currently, hovering over a socket itself shows no tooltip at all, while hovering over its value field shows "Default value", which is not helpful. This patch therefore implements socket tooltips following the proposal at https://blender.community/c/rightclickselect/2Qgbbc/. A lot of the basic functionality was already implemented for Geometry Nodes, where hovering over the socket itself shows introspection info. This patch extends this by: - Supporting dynamic tooltips on labels, which is important for good tooltip coverage in a socket's region of the node. - Adding a function to setting a dynamic tooltip for an entire uiLayout, which avoids needing to set it manually for a wide variety of socket types. - Hiding the property label field in a tooltip when dynamic tooltip is also provided. If really needed, this label can be restored through the dynamic tooltip, but in all current cases the label is actually pointless anyways since the dynamic tooltip gives more accurate and specific information. - Adding dynamic tooltips to a socket's UI layout row if it has a description configured, both in the Node Editor as well as in the Material Properties. Note that the patch does not add any actual tooltip content yet, just the infrastructure to show them. By default, sockets without a description still show the old "Default value" tooltip. For an example of how to add socket descriptions, check the Cylinder node in the Geometry Nodes. Differential Revision: https://developer.blender.org/D9967
2022-04-11PyGPU: make sure the UniformBuffer is padded to 16 bytesGermano Cavalcante
Alignment with `vec4` is a requirement in C++, so it should be a requirement in Python as well.
2022-04-11Fix crash when creating a 'gpu.types.Buffer'Germano Cavalcante
Buffer creation may crash when passed a PyBuffer with no `shape` defined. (Which is common for strucs).
2022-04-11Curves: Add support for new curves type in Set Material nodeChristophe Hery
Simply add the few lines so that the Cycles renderable New Curves (with a small temporary patch to output the new type to render engines) would get assigned a shader (in particular a hair shader). Differential Revision: https://developer.blender.org/D14622
2022-04-11Update RNA to user manual referencesAaron Carlisle
2022-04-11Fix OpenColorIO error with configs using <USE_DISPLAY_NAME>Brecht Van Lommel
* Don't assume the display colorspace name fully defines the transform to display space, this is not true in OpenColorIO 2 where view transforms may be defined in more complexs ways than just specifying a colorspace. * In places where we need to store the display colorspace name, resolve <USE_DISPLAY_NAME> token manually. Ref T96590
2022-04-11Fix T97097: Color Filter saturates colors that have no saturationJoseph Eagar
2022-04-11Fix T97096: Color filter brush was corrupting alpha.Joseph Eagar
2022-04-11Cleanup: Clarify a few comments in pbvh_intern.hJoseph Eagar
2022-04-11Cleanup: fix attribute.c incorrectly usingJoseph Eagar
CustomDataLayer.type to check for CD_FLAG_TEMPORARY instead of .flag.
2022-04-11Fix T85467: Mask transform center doesn't take parent Track into accountPhilipp Oeser
Coordinate checks in `spline_under_mouse_get` need to take place with the evaluated mask to get the right center. This is now more in line to how this is done in `ED_mask_point_find_nearest`. Note: similar issues are reported with box/circle/lasso selection in T97135, will tackle these separately though. Maniphest Tasks: T85467 Differential Revision: https://developer.blender.org/D14598
2022-04-11Curves Sculpting Icons: Snake Hook and Grow updatesDalai Felinto
This implements the icon for snake hook, as well as tweak the growth brush to make it bigger and with the triangles more distinct for better reading of the icon. Differential Revision: https://developer.blender.org/D14616
2022-04-11Fix setting key shortcuts for insert keyframe menu itemsCampbell Barton
It was not possible to assign a shortcut to menu items in the insert key-frame menu going back to version 2.7x. Doing so would replace the current key that opens the insert keyframe menu (I-key by default), instead of binding a key to insert a key-frame for the keying-set referenced by the menu item. Now each menu item can be bound to a key or added to the "Quick Favorites" menu, directly inserting a key-frame for the corresponding keying-set. Note that users must use the operator `anim.keyframe_insert_by_name` when setting up key-shortcuts as `anim.keyframe_insert` is only intended to launch the menu. Keymap Editor: When editing these key-map items in the key-map editor, the keying-set identifier must be used. At the moment the key-map editor doesn't support showing a drop-down list. The identifiers can be used from the tool-tip or the info editor. {F12994924} Details: Use `ANIM_OT_keyframe_insert_by_name` instead of `ANIM_OT_keyframe_insert_menu` for the insert keyframe popup menu to resolve the following issues binding keys to keying sets: - The index of the keying set isn't stable (adding/removing keying sets may change it). - Binding a key to items in the popup menu triggers a popup instead of inserting a key using the keying set from the menu item. While support for using the current operator could be improved, it will still only work for built-in keying sets, so I'd prefer to use an operator that is intended for key-bindings. Besides supporting binding keys to menu items there are no functional changes. Reviewed By: sybren Ref D14289
2022-04-11BMesh Python API: add access to vertex crease layerKévin Dietrich
This simply adds access to the vertex crease layer from Python code. Documentation was modified to remove "Edge" as it is shared between edges and vertices, similarly to bevel weights. Differential Revision: https://developer.blender.org/D14605
2022-04-11Cleanup: use doxy-comments and `r_` prefix return argumentsCampbell Barton
2022-04-11Cleanup: malformed C-style comment blocks, spellingCampbell Barton
- Missing star prefix. - Unnecessary indentation. - Blank line after dot-points (otherwise doxygen merges with the previous dot-point). - Use back-slash for doxygen commands. - Correct spelling.
2022-04-10Render: Add operators to add all used or remove all unused lightgroupsLukas Stockner
These operators build a list of all lightgroups that are used by the view layer's scene and either add all used lightgroups that are not part of the view layer yet or remove all lightgroups in the view layer that are not being used. Differential Revision: https://developer.blender.org/D14596
2022-04-10UI: improve descriptions for camera lens and lens unitViktoriia Safiullina
Differential Revision: https://developer.blender.org/D14602
2022-04-10Fix T96942: disable Adjacent Faces margin for UVs and tangent space bakeMartijn Versteegh
Use the Extend method for these, as these do not work correctly. For UVs it's better to extend the UVs from the same face, and for tangent space the normals should be encoded in a matching tangent space. Later the Adjacent Faces method might be improved to support these cases. Ref T96977 Differential Revision: https://developer.blender.org/D14572
2022-04-10Mask: refactor mask_rasterize vector copying into a utility functionSimon Lenz
Add a separate scanline function scanfill_vert_add_v2_with_depth that adds a vertex from 2D coordinate array & the specified z-value. Ref D13460
2022-04-10Cleanup: missing-prototypes warningCampbell Barton
2022-04-09Cleanup compilation warnings.Jeroen Bakker
Missing include statement.
2022-04-09Missing forward declaration.Jeroen Bakker
2022-04-09Curves: Port tangent and normal calculation to the new data-blockHans Goudey
Port the "Normal" and "Curve Tangent" nodes to the new curves data-block to avoid the conversion to `CurveEval`. This should make them faster by avoiding all that copying, but otherwise nothing else has changed. This also includes a fix to move the normal mode as a built-in curve attribute when converting to and from `CurveEval`. The attribute is needed because the option is used implicitly in many nodes currently. Differential Revision: https://developer.blender.org/D14609
2022-04-09Fix T97133: Crash when creating a scene copyRichard Antalik
Crash happened in sequencer editor, because pointer to displayed channels was not set in `scene_copy_data`.
2022-04-09GPencil: Fix unreported error in Grab Brush for transformed layersAntonio Vazquez
If the layer was transformed the grab brush was not initialized as expected because it was using an untrasformed matrix.