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
2022-10-13Mesh: Move runtime data out of DNAHans Goudey
This commit replaces the `Mesh_Runtime` struct embedded in `Mesh` with `blender::bke::MeshRuntime`. This has quite a few benefits: - It's possible to use C++ types like `std::mutex`, `Array`, `BitVector`, etc. more easily - Meshes saved in files are slightly smaller - Copying and writing meshes is a bit more obvious without clearing of runtime data, etc. The first is by far the most important. It will allows us to avoid a bunch of manual memory management boilerplate that is error-prone and annoying. It should also simplify future CoW improvements for runtime data. This patch doesn't change anything besides changing `mesh.runtime.data` to `mesh.runtime->data`. The cleanups above will happen separately. Differential Revision: https://developer.blender.org/D16180
2022-10-13Point Cloud: Support applying modifiersHans Goudey
The geometry nodes modifier can now be applied on point cloud objects. This is basically a copy of the logic from 96bdd65e740e669ece and 538da79c6d17a6e660a9.
2022-10-13Fix T101776: wrong logic for GLX setSwapIntervalCampbell Barton
Regression in 93e4b15767cf958d5a07ba6acce25438f244bf22.
2022-10-13Fix T101779: Incorrect app_id on WaylandCampbell Barton
Using the title as the app_id prevented the proper icon being used under KDE-Plasma.
2022-10-13Cleanup: Use correct blenkernel namespace for mesh functionsHans Goudey
2022-10-13Draw: Add missing TBB define to draw moduleHans Goudey
Allows improving performance with BLI_task.hh in draw extraction code. Threading added in c15a63d21eae49ffd improved performance by 3-4x for me, but didn't make a difference until now.
2022-10-13Cleanup: Remove deprecated socket variablesHans Goudey
Last used in 62421470ee09fb70f343e.
2022-10-12Fix T95683: FFmpeg seeking is brokenRichard Antalik
According to information I gathered, ffmpeg seeks internally using DTS values instead of PTS. In some files DTS and PTS values are offset and ffmpeg fails to seek correctly to keyframe located before requested PTS. This issue become evident after hardcoded preseek of 25 frames was removed and effort went into more precise seeking to improve performance. It was thought, that this is bug in ffmpeg code, but after reading some discussions, I don't think it is considered as such by their developers, see below: http://ffmpeg.org/pipermail/ffmpeg-devel/2018-March/226354.html https://trac.ffmpeg.org/ticket/1189 Best solution seems to be to add small preseek value possibly at detriment of performance, so 3 frames of preseek are applied. Number 3 was chosen experimentally. Performance impact seems to be insignificant with this change. Reviewed By: zeddb Differential Revision: https://developer.blender.org/D15847
2022-10-12Nodes: Add "Legacy" to legacy node UI names, skip in searchHans Goudey
Currently there is no way to tell that these node types are deprecated in the UI. This commit adds "(Legacy)" to the end of the names. It also makes it simple to skip these in the various node searches more automatically than before. Fixes T101700 Differential Revision: https://developer.blender.org/D16223
2022-10-12Fix T101711: Curve to points node sometimes skips initializing radiusHans Goudey
Don't add the radius attribute to point clouds by default, since not having a radius attribute should be a valid state. The radius is only set when a radius attribute also exists on curves.
2022-10-12Cycles: Use 0.01m as default point cloud radiusHans Goudey
Currently Cycles uses zero as a default radius when no "radius" attribute exists. This is more confusing than helpful. Instead, use the same default radius as EEVEE and Workbench.
2022-10-12Cleanup: Decrease variable scope in UI region popup codeHans Goudey
2022-10-12Cycles: Enable MNEE on Metal (macOS >= 13)Michael Jones
This patch enables MNEE on macOS >= 13. There was an inefficiency in the calculation of spill requirements, fixed as of macOS 13. This patch also adds a temporary inlining workaround for a Metal compiler bug which causes `mnee_compute_constraint_derivatives` to behave incorrectly. Reviewed By: brecht Differential Revision: https://developer.blender.org/D16235
2022-10-12Cleanup: EEVEE-Next: Add precision to commentClément Foucault
2022-10-12DRW: View: Expose matrices through interfaceClément Foucault
2022-10-12DRW: Wrappers: Add TextureRef to wrap around GPUTexture pointersClément Foucault
This adds the possibility to use the C++ API for other GPUTexture.
2022-10-12DRW: Fix gl error related to incorrect uniform sizeClément Foucault
2022-10-12Cleanup: DRW: Improve state_stencil documentationClément Foucault
2022-10-12Cleanup: Use const vertex pointer argumentHans Goudey
2022-10-12Cleanup: Reduce variable scope in vertex group mirror operatorHans Goudey
Combined with the previous cleanup, this would have prevented T101773.
2022-10-12Cleanup: Remove macro usage in vertex group mirror operatorHans Goudey
Avoiding a few lines of duplication is not worth the confusion and worse debugging experience of macros.
2022-10-12Fix T101773: Mirror Vertex Weights operator brokenHans Goudey
2022-10-12Fix T101679: Duplicate objects are created when 'Make' override is called on ↵Bastien Montagne
existing override in 3DView When the active selected object in the 3DView is already a local liboverride, only perform the 'clear system flag' process on selected objects, there is no point in trying to create an override out of it.
2022-10-12ImageEngine: Clamp image data to fit half float range.Jeroen Bakker
When image data exceeds half float ranges values are set to +/- infinity that could lead to artifacts later on in the pipeline. Color management for example. This patch adds a utility function `IMB_gpu_clamp_half_float` that clamps full float values to fit within the range of half floats. This fixes T98575 and T101601.
2022-10-12Cleanup: minor edits to recent wayland/libdecorCampbell Barton
Remove asserts committed by accident & simplify preprocessor checks.
2022-10-12GHOST/Wayland: only require libdecor when running in gnome-shellCampbell Barton
- Support switching between libdecor and xdg_shell at run-time. - Require libdecor when using gnome-shell, otherwise use xdg_shell. - Gnome-shell detection checks for a gtk_shell* interface which isn't ideal however it's not possible to check server-side-decorations are supported without first creating a window. - Unload Wayland libraries when Wayland fails to load.
2022-10-12Cleanup: Simplify node insert after drag codeHans Goudey
- Give functions and variables more descriptive names - Use references for arguments - Use tree topology cache to avoid iterating over all links - Group related code together
2022-10-12Cleanup: use 'u' prefixed unsigned typesCampbell Barton
2022-10-12Cleanup: use function style casts for C++, format & spellingCampbell Barton
2022-10-12Cleanup: use commented arguments for unused args in C++Campbell Barton
2022-10-12Cleanup: Convert two nodes files to C++Hans Goudey
2022-10-12Cleanup: Comment formatting in BMesh operatorHans Goudey
2022-10-12Cleanup: Remove link drag search operations for socket templatesHans Goudey
Besides texture nodes, which aren't supported anyway, we don't have any builtin nodes that still use the socket template system, so this can be removed.
2022-10-12Cleanup: Reduce indentation in node attach operatorHans Goudey
2022-10-12UV: add grid shape source to the uv editor, and add new "pixel" optionChris Blackbourn
This change is part of a wider set of changes to implement Grid and Pixel snapping in the UV Editor. This particular change adds a new third option, `pixel grid`, to the previous grid options, `dynamic grid` and `fixed grid`. Maniphest Tasks : T78391 Differential Revision: https://developer.blender.org/D16197
2022-10-12Fix T90782: add uv pack option to specify margin as a fractionChris Blackbourn
A refactor of the margin calculation of UV packing, in anticipation of multiple packing methods soon becoming available. Three margin scaling methods are now available: * "Add", Simple method, just add the margin. [0] (The default margin scale from Blender 2.8 and earlier.) * "Scaled", Use scale of existing UVs to multiply margin. (The default from Blender 3.3+) * "Fraction", a new (slow) method to precisely specify a fraction of the UV unit square for margin. [1] The "fraction" code path implements a novel combined search / secant root finding method which exploits domain knowledge to accelerate convergence while remaining robust against bad input. [0]: Resolves T85978 [1]: Resolves T90782 Differential Revision: https://developer.blender.org/D16121
2022-10-12Nodes: Change Mix node link drag weightingCharlie Jolly
This lowers the search weight for color-specific mix functions on non-color sockets. Reported in blender.chat by simonthommes Differential Revision: https://developer.blender.org/D16228
2022-10-11Cleanup: Move draw_cache_impl_volume.c to C++Hans Goudey
2022-10-11Sculpt: Fix mask from cavity not redrawing viewport with modifiersJoseph Eagar
2022-10-11Sculpt: Fix T101595: sculpt_attribute_update_refs called in wrong placeJoseph Eagar
Needs to go after the assignment to ob->sculpt->pbvh, not before.
2022-10-11Sculpt: Fix T101718: Automasking crash with new texture paintJoseph Eagar
* 'Original coordinates' mode can't be used in image paint mode (it does nothing in this case anyway). * SCULPT_automasking_factor_get now returns 1.0 if a PBVH_REF_NONE vertex reference is passed in.
2022-10-11Fix T101709: Proportional editing being disabled in NLA Editor redo panelGermano Cavalcante
Do not save the "use_proportional_edit" property if it is not supported. This prevents it from being automatically disabled. And hide "use_proportional_edit" in `SPACE_NLA`
2022-10-11deps_builder: add missing openpgl config fileRay Molenkamp
harvesting openpgl_Exports-debug.cmake was missing for windows in the build script, and we manually added it to svn when openpgl landed when we realized it was missing. This fixes the issue at the root of the problem, so the file will not be missing for future updates.
2022-10-11Fix T101601: Compositor/Set cryptomatte alpha to 1.Alaska
Cryptomatte uses alpha node, which was altered to by default apply the alpha. This patch changes it back to replacing the alpha. Reviewed By: jbakker Maniphest Tasks: T101601 Differential Revision: https://developer.blender.org/D16165
2022-10-11Cleanup: Add missing include for parallel reductionOmar Emara
The parallel reduction file didn't include its own header, which can yield "no previous declaration" warnings. This patch includes the header to fix the warning.
2022-10-11Cleanup: Remove unused spreadsheet geometry cache itemHans Goudey
2022-10-11Fix SVG tests: Add missing fileSergey Sharybin
2022-10-11Beginning of automated SVG regression testSergey Sharybin
This commit contains the CTest integration. Starting with the very simple tests for the recent fixes in the io_corve_svg addon which were related on closing path. The idea is to use same framework as what we use for render tests to make it easily visible what aspect of SVG changed or broke. In order to achieve this both .blend and .svg files are used. The .svg file defines the exact subject of test, and the .blend file defines camera, and possibly material. The longer term idea is to have a number of atomic tests for a specific SVG features to help isolating problematic areas, as well as a more comprehensive tests to perform QA.
2022-10-11Fix linker order of X11 and Wayland libsSebastian Parborg
For some compiler and linker configurations, linking would fail as the wayland libs were linked at a high level and not at the actual code where they were needed. After talking to Campbell, we decided to clean up this part and now only link both the X11 and Wayland libs where they are used.
2022-10-11Realtime Compositor: Implement variable size bokeh blurOmar Emara
This patch implements the variable size blur option in the Bokeh Blur node. The implementation is different from the CPU one in that it also takes the Bounding Box input into account, which is ignored for some reason for the CPU. Additionally, this implementation does not do the optimization where the search radius is limited relative to the maximum value in the size texture. That's because the cost of computing the maximum is not worth it for most use cases. The reference implementation does three unexpected things that are replicated here nonetheless. First, the center bokeh weight is always ignored and assumed to be 1. Second the size of the center pixel is taken into account. Third, a unidimensional distance is used instead of a 2D euclidean one. Those need to be considered independently. Differential Revision: https://developer.blender.org/D16185 Reviewed By: Clement Foucault