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-07-19Depsgraph: Cleanup, Make variable less ambiguous and more clearSergey Sharybin
2022-07-19Depsgraph: Make variable naming more clearSergey Sharybin
Disambiguate from nodes visibility flags.
2022-07-19EEVEE: use mipmaps of compressed textures (DDS)Ethan-Hall
Currently Blender generates mipmaps that override the existing ones. This patch disables generating new mipmaps for compressed textures. Reviewed By: fclem Differential Revision: https://developer.blender.org/D14459
2022-07-19Depsgraph: Cleanup, use nested namespace definitionSergey Sharybin
2022-07-19Depsgraph: Localize synchronization component visibility handlingSergey Sharybin
Move it from generic visibility handling to the synchronization component node implementation. Should be no functional changes.
2022-07-19Depsgraph: Cleanup, comments wrapping and spacing between linesSergey Sharybin
Should make it easier to read. No functional changes expected.
2022-07-19Depsgraph: Introduce operation code for visibility operationSergey Sharybin
No functional changes, just makes code more semantically clear.
2022-07-19Depsgraph: Cleanup, don't mic static function and anonymous namespaceSergey Sharybin
2022-07-19Depsgraph: Refactor evaluation into smaller reusable functionsSergey Sharybin
Should be no functional changes.
2022-07-19Depsgraph: Cleanup, use nested namespace definitionSergey Sharybin
2022-07-19Depsgraph: Make name and name tag optional in component nodeSergey Sharybin
Matches the builder API, making some code less verbose.
2022-07-19Depsgraph: Clarify comment in the component nodeSergey Sharybin
2022-07-19Depsgraph: Use single task pool during evaluationSergey Sharybin
Not sure why multiple pools were created: the pool should be able to handle two sets of tasks. Perhaps non-measurable improvement in terms of performance but this change simplifies code a bit.
2022-07-19Fix T99785: Make Principled Hair IOR input behave like other IOR slidersJesse Yurkovich
Was accidental regression in rBed9b21098dd27bf9364397357f89b4c2648f40c2 Remove the input slider's PROP_FACTOR subtype in favor of the default to align with other IOR sliders. This provides much better control when dragging the value with the mouse. Differential Revision: https://developer.blender.org/D15477
2022-07-19Fix T99737: Dropping files fails with WaylandCampbell Barton
Drop events ignored the cursor coordinates, under the assumption that cursor motion events would also be sent to update the cursor location. This depended on the behavior of the compositor, it failed for Sway but worked for Gnome-shell & River. Resolve by making use of the drop events cursor coordinates.
2022-07-19Cleanup: quiet compiler warningsCampbell Barton
2022-07-19Fix T99794: regression from uv unwrap selectedChris Blackbourn
Restore only_selected_faces flag inadvertently changed by c0e453233132 Differential Revision: https://developer.blender.org/D15480
2022-07-19Fix T99781: uv minimize stretch now unflips flipped facesChris Blackbourn
Add a small gradient to flipped faces proportional to length of edges. Differential Revision: https://developer.blender.org/D15475
2022-07-19Fix Text Editor highlight of assert and asyncHenrik Dick
Due to the ordering of the checks, assert and async were not highlighted in the editor, even though they were in the list of keywords. Differential Revision: http://developer.blender.org/D15483
2022-07-18Fix wrong alpha for scene linear byte images during texture paintingBrecht Van Lommel
Make the update logic consistent with the case where the initial texture is created. Also fixes a wrong assert. Thanks Clément for spotting this.
2022-07-18Context: implement an active_action property that returns a single action.Alexander Gavrilov
Although e.g. in the dopesheet there is no specific concept of active action, displaying panels requires singling out one action reference. It is more efficient and clearer to implement this natively in the context rather than using selected_visible_actions[0]. - In the Action Editor the action is taken from the header. - In the Dope Sheet the first selected action is chosen, because there is no concept of an active channel or keyframe. - In the Graph Editor the action associated with the active curve is used, which should also be associated with the active vertex. This case may be different from selected_visible_actions[0]. Differential Revision: https://developer.blender.org/D15412
2022-07-18Fix T99750: crash with file output node, after image colorspace saving changesBrecht Van Lommel
2022-07-18Fix T99742: crash when generating rigify rigs, after recent changesJun Mizutani
Differential Revision: https://developer.blender.org/D15473
2022-07-18Subdiv: remove unused GPU device choice, fix crash with libepoxy on initBrecht Van Lommel
openSubdiv_init() would detect available evaluators before any OpenGL context exists, causing a crash with libepoxy. This test however is redundant as we already check the requirements on the Blender side through the GPU API. To simplify things, completely remove the device detection in the opensubdiv module and reduce the evaluators to just CPU and GPU. The plan here is to move to the GPU module abstraction over OpenGL/Metal/Vulkan and so all these different backends no longer make sense. This also removes the user preference for OpenSubdiv compute device, which was not used for the new GPU subdivision implementation. Ref D15291 Differential Revision: https://developer.blender.org/D15470
2022-07-17Fix T99644: Anchored brush mode fails for negative brushesJoseph Eagar
The stroke code now supports raycasting the original mesh. This fixes anchored mode not working for negative brushes, which might move the mesh out of the initial mouse cursor position.
2022-07-17Sculpt: Fix scene spacing mode (phase 1)Joseph Eagar
The scene spacing code was failing to check if a raycast failed, which can happen when sculpting the edges of objects in negative mode. Note I removed what I suspect was a hack put in to fix this, spacing was clamped to 0.001 scene units. Scene spacing mode is actually quite broken, so it will be fixed in a series of phases.
2022-07-16Audaspace: minor formatting fix for last commit.Jörg Müller
2022-07-16Fix T99039: bpy.ops.sound.mixdown returns indecipherable errorColin Basnett
Fix for {T99039}. The problem was that `AUD_mixdown` and `AUD_mixdown_per_channel` were returning pointers to freed memory. Two key changes are made: 1. The return value of those functions now simply return a bool as to whether the operation succeeded, instead of an optional error string pointer. 2. The error string buffer is now passed into the function to be filled in case an error occurs. In this way, the onus of memory ownership is unamibiguously on the caller. Differential Revision: https://developer.blender.org/D15260
2022-07-16PyAPI: re-enable the "bgl" module for headless buildsCampbell Barton
Instead of removing the `bgl` module, set all it's functions to stubs so importing `bgl` or any of it's members doesn't raise an error. This avoids problems for scripts that import bgl but don't call it's functions when running in background mode.
2022-07-16Fix T99744: NULL pointer free with corrupt zSTD readingCampbell Barton
2022-07-16Fix error in assertion after 92a99c14965905e73f049bc1f92b597a903977fcCampbell Barton
2022-07-15Fix workbench background render broken after recent changes from D15463Brecht Van Lommel
For Eevee the light baking can initialize OpenGL earlier, but for workbench we can't assume the backend exists here already.
2022-07-15Fix Eevee backround render crash after recent changes from D15463Brecht Van Lommel
Backend initialization needs to be delayed until after the OpenGL context is created. This worked fine in foreground mode because the OpenGL context already exists for the window at the point GPU_backend_init_once was called, but not for background mode. Create the backend just in time in GPU_context_create as before, and automatically free it when the last context id discarded. But check if any GPU backend is supported before creating the OpenGL context. Ref D15463, D15465
2022-07-15Cleanup: compiler warningsBrecht Van Lommel
2022-07-15Fix compiler error in debug builds after 1cf465bbc331Julian Eisel
2022-07-15Fix GPU backend deleting resources without an active contextBrecht Van Lommel
This causes an assert with libepoxy, but was wrong already regardless. Refactor logic to work as follows: * GPU_exit() deletes backend resources * Destroy UI GPU resources with the context active * Call GPU_backend_exit() after deleting the context Ref D15291 Differential Revision: https://developer.blender.org/D15465
2022-07-15Fix overly noisy surface deform warning messageSergey Sharybin
An increased number of vertices is not a stopper for the surface deform modifier anymore. It might still be useful to expose the message in the UI, but printing error message to the console on every modifier evaluation makes real errors to become almost invisible. Differential Revision: https://developer.blender.org/D15468
2022-07-15Cleanup: VSE waveform drawingRichard Antalik
No functional changes.
2022-07-15Fix T99706: Crash rendering with headless buildsCampbell Barton
When rendering with headless builds, show an error instead of crashing. Previously GPU_backend_init was called indirectly from DRW_opengl_context_create, a new function is now called from the window manager (GPU_backend_init_once), so it's possible to check if the GPU has a back-end. This also disables the `bgl` Python module when building WITH_HEADLESS. Reviewed By: fclem Ref D15463
2022-07-15UI: make many modifier strings translatableDamien Picard
This includes: - new modifier names It mostly uses `N_` because the strings are actually translated elsewhere. The goal is simply to export them to .po files. Most of the new translations were reported in T43295#1105335. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D15418
2022-07-15Fix (unreported) LibOverride: invalid behaviors when creating (partial) ↵Bastien Montagne
overrides. The outliner would tagg all existing local IDs (for remap from linked reference data to newly created overrides) when creating a new override. This would become critical issue in case there is several existing copies of the same override hierarchy (leading to several hierarchies using the same override). Further more, BKE override creation code would not systematically properly remapp linked usages to new overrides one whithin the affected override hierarchy, leading to potential undesired remaining usages of linked data.
2022-07-15Render: camera depth of field support for armature bone targetsDamien Picard
This is useful when using an armature as a camera rig, to avoid creating and targetting an empty object. Differential Revision: https://developer.blender.org/D7012
2022-07-15Render: improve render border operator in image editorBrecht Van Lommel
* Snap border to pixels just outside the drawn border, to more easily select specific pixels by drawing a border inside them. * Support cropped border renders.
2022-07-15Cleanup: add utlity function to compute render resolutionBrecht Van Lommel
Instead of duplicating logic many times.
2022-07-15Fix T98061: uv resize with individual origins could break constrain to boundsChris Blackbourn
Fix unreported: Resize with Constrain To Bounds will now limit one shared scale value for both U and V instead of calculating separate scale values for each. To fix T98061, the individual origins (transdata->center) is now used when that mode is active. See also: 0e9367fc29bc Differential Revision: https://developer.blender.org/D15420
2022-07-15Fix: Move DRW_shgroup_add_material_resources(grp, mat) to after the ↵Martijn Versteegh
null-check for grp. Reviewed By: fclem Maniphest Tasks: T99646 Differential Revision: https://developer.blender.org/D15436
2022-07-15Fix T99606: Regression: TexCoordinate losing precision far away from originClément Foucault
Same root cause as T99128. The fix also needed to be done in another place.
2022-07-15GPU: Fix shader builder on hardware that does not have all featuresClément Foucault
2022-07-15Cleanup: GPU: Replace NULL by nullptr from C++ filesClément Foucault
2022-07-15Fix an increasing bottleneck when key press operator is too slowSergey Sharybin
The goal of this change is to fix an increasing bottleneck of the event queue handling when there is an operator bound to a key press event and is taking longer to finish than a key-repeat speed on the system. Practical example of when it happens is the marker tracking operator in a single-frame track mode. Quite often artists will hold down Alt-arrow to track a segment of footage which seems trivial to track. The issue arises when the Alt-arrow is released: prior to this change it is was possible that more frames will be tracked. It also seems that redraws are less smooth. It is a bit hard to make easily shareable computer-independent test case. Instead, a synthetic case can be reproduced by adding a 50 ms sleep in the `text_move_exec()`. In such synthetic case open a long text in the text editor and hold left/right arrow button to navigate the cursor. The observed behavior is that seemingly redraws happen less and less often and cursor travels longer and longer distances between redraws. The cursor will also keep moving after the buttons has been released. The proposed solution is to ignore sequential key-press events from being added to the event queue. This seems to be the least intrusive and the most safe approach: - If the operator is fast enough there will be no multiple press events in the queue in both prior and after of this change. - If the operator is slow enough, clicking the button multiple times (i.e. clicking arrow button 3 times in a heavy shot will change the scene frame by exactly 3 frames because no events are ignored in this case). - Only do it for key press events, keeping mouse and tabled behavior unchanged which is crucial for the paint mode. Note that this is a bit different from the key repeat tracking and filtering which is already implemented for keymaps as here we only want to avoid the event queue build-up and do want to ignore all repeat events. In other words: we do want to handle as many key presses as the operator performance allows it without clogging anything. A possible extension to this change could be a key press counter, so that instead of ignoring the event we merge it into the last event in the queue, incrementing some counter. This way if some operator really needs to know exact number of key repeats it can still access it. Differential Revision: https://developer.blender.org/D15444