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
2021-03-05Cleanup: spellingCampbell Barton
2021-03-05Cleanup: rename evt to eventCampbell Barton
Following naming convention of most operators.
2021-03-05Cleanup: rename variables in wm_event_add_ghosteventCampbell Barton
Using both evt and event together was confusing. Renamed: - event_state <- evt - event_state_other <- oevt - event_other <- oevent - win_other <- owin
2021-03-04GPencil: Implement Autokey button for Draw/Edit and Sculpt modeAntonio Vazquez
Now, if the Autokey is not enabled, a new frame is not created and it is used the last active one. If no active frame, a message is displayed and the operation is canceled. This is a common request for 2D artists. Also, grease pencil was not working as Blender does in other areas. Reviewed By: pepeland Differential Revision: https://developer.blender.org/D10557
2021-03-04Fix T59376: UV project modifier not working after modifiers that dont ↵Philipp Oeser
provide a UVMap This was reported for remesh and skin modifiers. These dont preserve UV layers (and probably cannot in a reasonable way), so instead let the UV Project modifier create a new (equally named) UV layer (as was suggested by @brecht in T59376). Maniphest Tasks: T59376 Differential Revision: https://developer.blender.org/D10617
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-04UI: prefer shorter search items in fuzzy searchJacques Lucke
This is a simple heuristic that seems to improve the search results in many cases. Differential Revision: https://developer.blender.org/D10618
2021-03-04Nodes: improve NodeTreeRefJacques Lucke
This adds a couple more utility methods to various node tree ref types. Also `InternalLinkRef` has been added to get simpler access to internal links.
2021-03-04BLI: support mutable lookup from multi value mapJacques Lucke
2021-03-04Fix T86050: use material count from correct data blockJacques Lucke
See comment in code for more details. Differential Revision: https://developer.blender.org/D10615
2021-03-04Fix T86172: tag relations update when pasting nodesJacques Lucke
Pasting nodes can create new id relations, because nodes can reference IDs. Therefore the depsgraph has to be updated when nodes are pasted. We could somehow check if the pasted nodes referenced IDs, but I'm not sure if this complexity is worth it.
2021-03-04PyAPI: use methods for bpy.data.libraries.load & writeCampbell Barton
Replace static methods with regular methods. Now the 'Main' value is taken from the collection. Needed to support multiple 'Main' instances in Python, see T86183.
2021-03-04PyAPI: support methods for collection propertiesCampbell Barton
Previously only static methods were supported. Now C/API functions added to collections can receive a 'self' argument.
2021-03-04Fix T86204: support multiple group inputs in node groupJacques Lucke
Note that this still does not work when in the node group directly referenced by the modifier, only in sub-node-groups. This limitation will be removed at some point.
2021-03-04Fix T86209: Preference Defaults "Relative Paths" tooltip could be improved.Bastien Montagne
This UserPref setting is only used when no path is set yet.
2021-03-04Fix Saving startup file changing paths of the current fileCampbell Barton
Saving the startup file now uses "Save Copy", so paths are preserved.
2021-03-04Fix T86231: Saving startup file always remaps relativeCampbell Barton
2021-03-04Cleanup: include '--open-last' in "Misc Options"Campbell Barton
This was using fall-back category "Other Options" which should be kept empty.
2021-03-04Cleanup: redundant struct declarationsCampbell Barton
2021-03-04Cleanup: use non-zero comparisons for event modifiersCampbell Barton
Use event modifier checks that follow most of Blender's code.
2021-03-04Cleanup: use BM_mesh_copy_init_customdata utility functionCampbell Barton
2021-03-04Cleanup: commentsCampbell Barton
2021-03-04Cleanup: use const arraysCampbell Barton
2021-03-04Cleanup: number literalsCampbell Barton
2021-03-04Cleanup: replace Py_CLEAR with Py_DECREF in bpy.app modulesCampbell Barton
In this case, there is no benefit to using Py_CLEAR as the value will never be NULL and can't be used later on.
2021-03-04Fix logic for calling PyObject_GC_UnTrackCampbell Barton
All tracked objects need a matching un-track, also remove redundant Py_XDECREF call.
2021-03-04PyAPI: correct garbage collection for StructRNA typesCampbell Barton
By default objects are no longer GC tracked, this removes some overhead although it's not significant in my own testing. - Only enable GC for StructRNA when 'WITH_PYTHON_SAFETY' is on. - Only track StructRNA when their 'reference' is set. - Add missing NULL check when 'WITH_PYTHON_SAFETY' is on and objects new objects be created.
2021-03-04UI: Remove extra blank space for decorators in FCurve modifiersHans Goudey
None of these properties can be animated, so it doesn't make sense to leave space for decorators on the right side of the panels. In fact that is what was intended, but they were not manually disabled in all of the panels.
2021-03-04Fix T86042 EEVEE: incorrect irradiance bakeClément Foucault
The environment (world) irradiance wasn't correctly skipped.
2021-03-03Geometry Nodes: Allow clearing an attribute text fieldHans Goudey
Because pressing enter will choose the current search item from the menu, and there was no search item with an empty string, it was impossible to clear the text of an attribute text field. This commit adds a simple "X" icon in the top row when you delete the string.
2021-03-03UI: Allow translation for node error messagesHans Goudey
This commit exposes the strings used in the node error messages for localization. It also changes the message tooltip creation to automatically add the period at the end, to be more consistent with the (arguably bad) design of other tooltips in Blender. Calling `TIP_` directly in the node implementation files allows us to continue using `std::string` concatenation instead of passing variadic arguments. It's also more explicit about which part of the message is translated and which isn't. The files already include the translation header anyway.
2021-03-03EEVEE: Avoid old files with too many volume shadow sample being too slowClément Foucault
This clamp the volumetric shadow samples to the actual old max to avoid problematic slowdown after the bugfix rB3a29c19b2bff.
2021-03-03EEVEE: SSS: Fix light leaking bewteen object at different depthsMikhail
The SSS shader in Eevee has the following drawbacks (elaborated in {T79933}): 1. Glowing 2. Ringing. On low SSS jittering it is rendered a bunch of sharp lines 3. Overall blurriness due to the nature of the effect 4. Shadows near occlusions as in T65849 5. Too much SSS near the edge and on highly-tilted surfaces {F9438636} {F9427302} In the original shader code there was a depth correction factor, as far as I can understand for fixing light bleeding from one object to another. But it was scaled incorrectly. I modified its scale to depend on SSS scale*radius and made it independent from the scene scale. The scale parameter (`-4`) is chosen so that it makes tilted surfaces to have visually the same SSS radius as straight surfaces (surfaces with normal pointed directly to the camera). This depth correction factor alone fixes all the problems except for ringing (pt. 2). Because of float-point precision errors and irradiance interpolation some samples near the border of an object might leak light, causing sparkly or dashed (because of aliasing) patterns around the highlights. Switching from `texture()` to `texelFetch()` fixes this problem and makes textures on renders visually sharper. An alternative solution would be to detect object borders and somehow prevent samples from crossing it. This can be done by: 1. Adding an `object_id` texture. I think it requires much more code changing and makes the shader more complicated. Again, `object_id` is not interpolatable. 2. Watch gradient of depth and discard samples if the gradient is too big. This solution depends on scene scale and requires more texture lookups. Since SSS is usually a minor effect, it probably doesn't require that level of accuracy. I haven't notice it in practice, but I assume it can make visible SSS radius slightly off (up to 0.5 px in screen space, which is negligible). It is completely mitigated with render sampling. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D9740
2021-03-03EEVEE: SSR: Check reflection ray against geometric normalClément Foucault
This improve self intersection prevention. Also reduce the bias that was making a lot of rays not being shoot at grazing angles.
2021-03-03EEVEE: Add ensure_valid_reflection to glossy closuresClément Foucault
This is ported from Cycles and fixes issues with bump/normal mapping giving weird reflections/lighting. Fixes T81070 Specular light should be limited to normal pointing toward the camera Fixes T78501 Normal mapping making specular artifact
2021-03-03Fix compiler issues introduced in recent commit.Jeroen Bakker
{73af762e9cd595ea708647c02c7e74752d844e80}
2021-03-03Cleanup: use zero_v3 to clear colors.Jeroen Bakker
2021-03-03Cleanup: Make node_composite_cryptomatte CPP.Jeroen Bakker
Core API of cryptomatte is also CPP.
2021-03-03Cleanup: clang tidyJacques Lucke
Warnings: * readability-inconsistent-declaration-parameter-name * readability-redundant-smartptr-get
2021-03-03Cleanup: clang tidyJacques Lucke
Can use const parameter.
2021-03-03Cleanup: clang tidyJacques Lucke
Warning: else-after-return/break
2021-03-03Cleanup: make formatJacques Lucke
2021-03-03Fix (unreported) Outliner missing updates copying IDs via pythonPhilipp Oeser
Steps to reproduce: - switch to Scripting workspace - execute bpy.data.meshes['Cube'].copy() - Outliner will not show the new mesh immediately Now just send appropriate notifier. Differential Revision: https://developer.blender.org/D10584
2021-03-03Nodes: store references to bNodeLinks in NodeTreeRefJacques Lucke
Sometimes it is useful to have this information available to be able to read information from links.
2021-03-03Fix crash when dragging nodesHans Goudey
The `bNodeLinkDrag` struct was NULL when dragging a node instead of a link. It is allocated with `calloc` anyway, so this field doesn't need to be explitely cleared.
2021-03-03Cleanup: minor changes to Python RNA pointer assignmentCampbell Barton
Don't assign the BPy_StructRNA a value which can be 'None', instead, set it to NULL.
2021-03-03Cleanup: Use span and float matrix type in direct boolean codeHans Goudey
This commit includes a few simple improvements to the direct mesh boolean code added recently. - Passing the transforms and meshes to `direct_mesh_boolean` as spans makes the function easier to call from C++. - The definition of `TransMat`, was unecessary when we have the `float4x4` type already used elsewhere in C++ code. Differential Revision: https://developer.blender.org/D10592
2021-03-03Fix T85966: Wrong link picked when dragging multi-input socketFabian Schempp
The socket drag operator stored the index of the last picked socket into RNA in case the mouse cursor leaves the link while dragging. This id was not unique which is why sometimes a link from an other node with the same id is picked. This patch changes the way the last picked link is stored and stores a pointer to the link directly into bNodeLinkDrag struct instead. Differential Revision: https://developer.blender.org/D10590
2021-03-02Cleanup: spelling, minor correctionsCampbell Barton
Also use doxygen comments for sculpt functions.
2021-03-02Python API: Expose CurveMapping Reset View functionPatrick Busch
The Python API for the curve mapping widget offers the `update` function, but no way to reset the view to the clipping rectangle. This commit adds a blenkernel function for this operation, and exposes it to the CurvMapping RNA API. This allows addons to display a more user-friendly view of the data in this widget. Differential Revision: https://developer.blender.org/D10561