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-06-08Fix: Incorrect curves and pointcloud bounding boxesHans Goudey
The generic bounds utility used an incorrect initial value. The value cannot be zero-initialized, because that breaks the case where all values are greater than zero.
2022-06-08LibOverride: Make 'image/movieclip user` properties editable.Bastien Montagne
2022-06-08Fix (unreported) missing rna path for some background image properties.Bastien Montagne
RNA camera code did not handle path for its image/movieclip users sub-data, and moviclip RNA struct definition did not have a rna path function at all.
2022-06-08RNA nodetree: improve ImageUser path helper.Bastien Montagne
Refactor the code, and optimize it slightly (no need e.g. to check for nodes when the nodetree is of a type that cannot have image user nodes).
2022-06-08Curves: use radius of middle point to determine curve shapeJacques Lucke
See {rBb69aad60bda23a53482b2c2ae98715c23a715bc8} for more details.
2022-06-08Fix: incorrect curve parameter for catmull rom curvesJacques Lucke
2022-06-08Fix: Heap buffer overflow in new curves set type nodeHans Goudey
2022-06-08Curves: Port set type node to new data-blockHans Goudey
This commit ports the "Set Spline Type" node to the new curves type. Performance should be improved in similar ways to the other refactors from the conversion task (T95443). Converting to and from Catmull Rom curves is now supported. There are a few cases where a lot of work can be skipped: when the number of points doesn't change, and when the types already match the goal type. The refactor has a few other explicit goals as well: - Don't count on initialization of attribute arrays when they are first allocated. - Avoid copying the entire data-block when possible. - Make decisions about which attributes to copy when changing curves more obvious. - Use higher-level methods to copy data between curve points. - Optimize for the common cases of single types and full selections. - Process selected curves of the same types in the same loop. The Bezier to NURBS conversion is written by Piotr Makal (@pmakal). Differential Revision: https://developer.blender.org/D14769
2022-06-08Fix T98624: Curve Pen NURBS extrusion creates duplicatesDilith Jayakody
The initial point count check was only being done for Bezier curves. This revision fixes T98624 by adding the check for NURBS curves as well. Reviewed By: HooglyBoogly Maniphest Tasks: T98624 Differential Revision: https://developer.blender.org/D15140
2022-06-08Fix T98620: Video sequencer screen corruption occurs when resizing.Jeroen Bakker
Added Windows/Intel GPU to the list of work-a-rounds. This will reduce the performance when using Intel GPUs on all platforms.
2022-06-08Cleanup: Move sculpt_automasking.c to c++Joseph Eagar
2022-06-08Fix T98565: remove unused BRUSH_PAINT icon definitionPhilipp Oeser
This could spam the console with errors (potentionally slowing down in cases). Was added in rBeae36be372a6, but not used. Maniphest Tasks: T98565 Differential Revision: https://developer.blender.org/D15113
2022-06-08Cleanup: Remove unnecessary namespace specificationHans Goudey
2022-06-08Cleanup: Use const variables/pointersHans Goudey
2022-06-08Attributes: Use names instead of layers for some functionsHans Goudey
This mirrors the C++ attribute API better, separates the implementation of attributes from CustomData slightly, and makes functions simpler, clearer, and safer. Also fix an issue with removing an attribute caused by 97712b018df71c meant the first attribute with the given type was removed instead of the attribute with the given name.
2022-06-08Fix: Improve poll for convert attribute operatorHans Goudey
Converting an attribute does not work from edit mode because there is no attribute API implemented for BMesh, so disable the operation in that mode and add a poll message.
2022-06-08Fix T98618: Drivers don't automatically update when changing active cameraSergey Sharybin
Active camera is a property of Scene, so need to take scene changes into account for such drivers to work reliably. The fix covers all the common cases of such configurations, but some of them might not be yet fully supported. Mainly cases when the target ID is not covered by the copy-on-write mechanism. There is a fuller explanation available in the code for the ease of reading by the future generations. Differential Revision: https://developer.blender.org/D15146
2022-06-08Correct missing doxy-sections in 1269bcce810d064612f7f38642440ee22d0fb007Campbell Barton
2022-06-08Cleanup: use doxy sections for wayland listenersCampbell Barton
2022-06-08CMake: optionally disable OBJ, STL & GPencil SVG supportCampbell Barton
The following CMake options have been added (enabled by default), except for the lite build configuration. - WITH_IO_STL - WITH_IO_WAVEFRONT_OBJ - WITH_IO_GPENCIL (for grease pencil SVG importing). Note that it was already possible to disable grease pencil export by disabling WITH_PUGIXML & WITH_HARU. This is intended to keep the lite builds fast and small for building, linking & execution. Reviewed By: iyadahmed2001, aras_p, antoniov, mont29 Ref D15141
2022-06-08GHOST/Wayland: draw a software-cursor when wrapping cursor motionCampbell Barton
As Wayland doesn't support moving the cursor, draw a cross-hair cursor at the location used by Blender. Without this, the cursor was locked at the location where grab started, making some actions unusable since the cursor location was invisible. Resolves T77311.
2022-06-08GHOST/Wayland: non-wrapping grab no longer locks the cursorCampbell Barton
Grab which didn't wrap would lock the cursor, making actions such as resizing areas lock the cursor in-place. Confine the cursor to the window instead. This behavior was also used for X11 when grabbing the cursor was first supported but could lock the system if Blender froze while grabbing so it was disabled [0]. For Wayland this shouldn't be a problem as compositors implement grab in a way that prevents the client from locking the system. [0]: 3e3d2b7a4cfc38f673bdeb48707b95c7bd50049a
2022-06-07BLI: Math: Add description and test to `ceil_to_multiple` and `divide_ceil`Clément Foucault
I took the decision to assert on unexpected value as the behavior of these functions are not consistent across the whole integer domain.
2022-06-07UI: Curves Sculpt density + smooth brushesDalai Felinto
More information in the svn log. But basically the smooth brush is re-using the previous one we had for hair, and the density is representing the hair root points that are removed to reach the desired density. Those brushes are used by D15134.
2022-06-07IME Cleanup: Removal of BLT_lang_is_ime_supportedHarley Acheson
Removal of BLT_lang_is_ime_supported which is always returns true and is no longer needed. See D11800 for more details. Differential Revision: https://developer.blender.org/D11800 Reviewed by Campbell Barton
2022-06-07Cleanup: Use const pointers in attribute APIHans Goudey
2022-06-07Fix: Incorrect logic in attribute search functionHans Goudey
If a geometry does not have CustomData for a certain domain, it may still have CustomData on other domains. In that case we need to continue to the other domains instead of returning. This worked for meshes because the domains are all at the start of the `info` array. It didn't work for curves.
2022-06-07Merge branch 'blender-v3.2-release'Clément Foucault
# Conflicts: # source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl
2022-06-07BLI: Math: Add `math::divide_ceil` and `math::ceil_to_multiple`Clément Foucault
`math::divide_ceil` is just the vector implementation of `divide_ceil_u`. `math::ceil_to_multiple` is similar but finaly multiply by the divisor. It is handy to handle tile buffers resolutions.
2022-06-07Fix T98647: EEVEE: Camera Data Node's View Vector BrokenClément Foucault
Fix regression and remove duplicated computation.
2022-06-07Fix EEVEE: Shader error when using volume temperature or color attributesClément Foucault
This bug was unreported. This was triggering a linking error caused by the vertex shader not having a local version of `attr_load_temperature_post` and `attr_load_color_post`.
2022-06-07Fix T98091: EEVEE: Volume: Crash caused by non-present gridClément Foucault
This was caused by the `copy_m4_m4` trying to copy the `object_to_texture` from `drw_grid` which was `nullptr`. Fixing this also exposed that rendering such volumes (without any valid grid attributes) is not supported and we should follow what Cycles does. Differential Revision: https://developer.blender.org/D15147
2022-06-07CustomData: Add function to free a named layerHans Goudey
This can be useful to avoid unnecessary boilerplate in various users of the CustomData API. Split from D14685 and D14769.
2022-06-07Fix T98621: Image does not update when tweaking strip propertiesRichard Antalik
Problem was caused by `startdisp` and `enddisp` still being used after changes implemented in rB7afcfe111aac.
2022-06-07Nodes: Show node description in Node add menuMonique Dewanchand
Though no nodes have descriptions currently, this patch makes it possible to add descriptions that display in the add menu, for custom node systems and existing builtin nodes. Differential Revision: https://developer.blender.org/D14963
2022-06-07Fix T98626: Mesh Deform modifier stops working on a linked collection upon undo.Bastien Montagne
Regression from rBb66368f3fd9c, we still need to store all data on undo writes, since overrides are not re-applied after undo/redo.
2022-06-07Curves: use root/tip radius of the first curve in the viewportJacques Lucke
Viewport drawing does not support a per point radius attribute yet. Instead, it has a fixed set of radius parameters that are used for all curves in the same object. Now those radii are retrieved from the radius attribute of the points on the first curve. This allows users to control the radius of curves to some degree until proper per-point radius is supported.
2022-06-07Fix: Make renaming attributes check uniqueness on all domainsMartijn Versteegh
This function only checked for uniqueness in the current domain, while attribute names should be unique among all domains within a geometry. Differential Revision: https://developer.blender.org/D15144
2022-06-07Marker drawing: don't restore GPU line widthSybren A. Stüvel
Adhere to the documented use of `GPU_line_width()` and don't restore the previously set line width.
2022-06-07Curves: fix transforms in Add brushJacques Lucke
Symmetry should be applied in the space of the curves object, not in the space of the surface object.
2022-06-07Cleanup: remove dead codeJacques Lucke
2022-06-07Fix drawing increments after running Spin gizmoGermano Cavalcante
Caused by {ea182deeb9cdd2a9137e98eb0072f57c0fb1e09f}.
2022-06-07Cleanup: potential dereferencing of a NULL pointerGermano Cavalcante
If `cancel` is `false`, `NULL` `inter` pointer dereferencing could occur. Currently I haven't found a case where this can happen. But it's best to avoid.
2022-06-07Cleanup: spelling in comments, minor formatting tweaksCampbell Barton
2022-06-07Cleanup: note that checking only the left modifiers isn't a mistakeCampbell Barton
2022-06-07Add Instance Offset operators to Collections property panelSybren A. Stüvel
Add three operators to the Collections properties panel: - `object.instance_offset_to_cursor`, which is already available from the Object properties panel. The operator works on the active collection, though, so it's weird to not have it in the Collections panel. - `object.instance_offset_from_object` is a new operator, which performs the same operation as above, but then based on the active object's evaluated world position. - `object.instance_offset_to_cursor` is also new, and performs the opposite of the first operator: it moves the 3D cursor to the collection's instance offset. The first two operators make it easier to set the instance offset. The last operator makes it possible to actually see the offset in the 3D viewport; drawing it using some overlay could also work, but that would be more effort to get right, and then snapping the 3D cursor would still be useful. The operators are placed in a popup menu, as to not clutter the interface too much with various buttons. Reviewed By: dfelinto, eyecandy Differential Revision: https://developer.blender.org/D14966
2022-06-07Keymap: use both left/right modifier keysCampbell Barton
Use both left/right modifier keys for: - Fly Mode. - Walk Mode. - Area Split. - Sculpt Detail Map. - Sculpt Expand. - Standard Modal Map Resolves T98638.
2022-06-07LibOverride: Attempt to improve handling of cyclic deps between libraries.Bastien Montagne
Those cyclic dependencies (lib_A depends on a texture from lib_B, which links geometry from lib_A) are bad, but previous code did not always helped much in idendtifying to actuall issue point. Now, reduce maximum 'recursion' level to 100 (this should already never be reached in practice), and additionally report warnings when reaching level 90, so that user gets more context data to identify more easily the culprit.
2022-06-07Cycles: Useful Metal backend debug & profiling functionalityMichael Jones
This patch adds some useful debugging & profiling env vars to the Metal backend: - `CYCLES_METAL_PROFILING`: output a per-kernel timing report at the end of the render - `CYCLES_METAL_DEBUG`: enable per-dispatch tracing (very verbose) - `CYCLES_DEBUG_METAL_CAPTURE_KERNEL`: enable programatic .gputrace capture for a specified kernel index Here's an example of the timing report with `CYCLES_METAL_PROFILING` enabled: ``` --------------------------------------------------------------------------------------------------- Kernel name Total threads Dispatches Avg. T/D Time Time% --------------------------------------------------------------------------------------------------- integrator_init_from_camera 657,407,232 161 4,083,274 0.24s 0.51% integrator_intersect_closest 1,629,288,440 681 2,392,494 15.18s 32.12% integrator_intersect_shadow 751,652,291 470 1,599,260 5.80s 12.28% integrator_shade_background 304,612,074 263 1,158,220 1.16s 2.45% integrator_shade_surface 1,159,764,041 676 1,715,627 20.57s 43.52% integrator_shade_shadow 598,885,847 418 1,432,741 1.27s 2.69% integrator_queued_paths_array 2,969,650,130 805 3,689,006 0.35s 0.74% integrator_queued_shadow_paths_array 593,936,619 379 1,567,115 0.14s 0.29% integrator_terminated_paths_array 22,205,417 155 143,260 0.05s 0.10% integrator_sorted_paths_array 2,517,140,043 676 3,723,579 1.65s 3.50% integrator_compact_paths_array 648,912,748 155 4,186,533 0.03s 0.07% integrator_compact_states 20,872,687 155 134,662 0.14s 0.29% integrator_terminated_shadow_paths_array 374,100,675 438 854,111 0.16s 0.33% integrator_compact_shadow_paths_array 503,768,657 438 1,150,156 0.05s 0.10% integrator_compact_shadow_states 37,664,941 202 186,460 0.23s 0.50% integrator_reset 25,165,824 6 4,194,304 0.06s 0.12% film_convert_combined_half_rgba 3,110,400 6 518,400 0.00s 0.01% prefix_sum 676 676 1 0.19s 0.40% --------------------------------------------------------------------------------------------------- 6,760 47.27s 100.00% --------------------------------------------------------------------------------------------------- ``` Reviewed By: brecht Differential Revision: https://developer.blender.org/D15044
2022-06-07Cleanup: Correct commentsHans Goudey