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
2021-09-29Fix T91802: vertex color layer name collides with itselfJacques Lucke
Vertex colors are already included in `mesh.attributes`. So they don't have to be added to the collision checks separately.
2021-09-29Fix T91767: crash when instancing geometry coming from modifierJacques Lucke
The issue was that the `GeometrySet` that comes from the modifier does not have full ownership of the mesh for legacy reasons to avoid copies. Calling `ensure_owns_direct_data` makes sure that the geometry set actually owns the geometry so that it can be instanced.
2021-09-29Geometry Nodes: instance on points in instancesJacques Lucke
For consistency with other nodes, we also want to process all instances in the Points input independently. This allows for more efficient instancing of many objects but also leads to nested instancing. All instances are processed in their local space, so that instances don't have to be realized. Differential Revision: https://developer.blender.org/D12660
2021-09-29Fix/bypass doversion for wire new colorsDalai Felinto
Some cases were not covered by the original doversion in 4a0ddeb62bb. For now we make it always change the wire color regardless of whether it was changed before or not. This do a subversion bump.
2021-09-29UV: Pack to closest/active UDIMSiddhartha Jejurkar
Implements T78397 Extends the functionality of pack islands operator to allow packing UVs to either the closest or active UDIM tile. This provides 2 new options for packing UVs : * Closest UDIM: Selected UVs will be packed to the UDIM tile they were placed on. If not present on a valid UDIM tile, the UVs will be packed to the closest UDIM in UV space * Active UDIM: Selected UVs will be packed to the active UDIM image tile In case, no image is present in the UV editor, then UVs will be packed to the tile on the UDIM grid where the 2D cursor is located. Reviewed By: campbellbarton Maniphest Tasks: T78397 Ref D12680
2021-09-29UV Editor: Grid and snapping improvementsSiddhartha Jejurkar
Implements T89789, T89792, custom grid (described as dynamic grid in T78389) and UV grid snapping (T78391) Replaces the default UV editor grid with 2 new types of grid : * Custom grid: Allows the user to create an NxN grid, where the value of N is specified by the user. * Subdividing grid: Subdivides the UV editor grid when the user zooms in the viewport and vice versa when zooming out. UV snapping improvements : * Increment snapping: Increment values for snapping are calculated based on which grid type is being used in the UV editor (subdividing or custom). In general the increment value is equal to the distance between 2 visible grid lines. * Absolute grid snap: New toggle added to increment snapping option in the UV editor, allows UV grid snapping during translation. Reviewed By: campbellbarton Ref D12684
2021-09-29Fix T91237: Wrong Editors could sync animation 'Visible Range'Philipp Oeser
This was reported for the Outliner. It was possible to set 'show_locked_time' on any space (via python, not sure if there are other ways to achieve this). Navigating in an animation editor obviously ruined the layout in certain Editors that are not made for this. Now restrict syncing to editors that support it well (the ones that have this setting exposed in their menus) and prevent setting this in RNA. Maniphest Tasks: T91237 Differential Revision: https://developer.blender.org/D12512
2021-09-29Cleanup: Add constructor for AttributeFieldInputHans Goudey
2021-09-29Cleanup: Compositor: Migrate color nodes to new socket builderAaron Carlisle
2021-09-29UI: Update Levels NodesAaron Carlisle
- Instead of making the enum expanded leave it in menu form. - Use full words instead of letters. Differential Revision: https://developer.blender.org/D12686
2021-09-29Nodes: Fix compositor viewer nodes having wrong alpha channelAaron Carlisle
Default should be black image with an alpha value of 1.
2021-09-29Cleanup: Compositor: Migrate most output nodes to new socket builderAaron Carlisle
This migrates most nodes except for the file output node. This node requires dynamic sockets so its implementation will be more involved.
2021-09-29Cleanup: Simplify compositor Z Combine operation conversionAaron Carlisle
2021-09-29Fix: Knife undo with no cut segments leftCian Jinks
Now if a user presses the knife tool undo key when there are no more cut segments to undo, the operator exits. Previously, it did nothing.
2021-09-29Cleanup: Make formatAaron Carlisle
2021-09-29Cleanup: Compositor: Migrate most input nodes to new socket builderAaron Carlisle
This migrates most nodes except for the image/render layer nodes. These nodes require dynamic sockets so their implementation will be more involved.
2021-09-29Cleanup: sort cmake file listsCampbell Barton
2021-09-29Cleanup: trailing space, newlines at EOFCampbell Barton
2021-09-29Cleanup: use C comments for plain textCampbell Barton
2021-09-29Cleanup: spelling in commentsCampbell Barton
2021-09-28Cleanup: Removed redundant if macroCian Jinks
2021-09-28Geometry Nodes: Fields version of attribute proximity nodeHans Goudey
Add a fields-aware implementation of the attribute proximity node. The Source position is an implicit position field, but can be connected with a position input node with alterations before use. The target input and mode function the same as the original node. Patch by Johnny Matthews with edits from Hans Goudey (@HooglyBoogly). Differential Revision: https://developer.blender.org/D12635
2021-09-28Compositor: Full frame Glare nodeManuel Castilla
Part of T88150.
2021-09-28Cleanup: Remove XRange and YRange in CompositorManuel Castilla
Mostly unused and originally meant for areas with positive values. With canvas compositing areas position may be negative.
2021-09-28Compositor: Add support for canvas compositingManuel Castilla
This commit adds functionality for operations that require pixel translation or resizing on "Full Frame" mode, allowing to adjust their canvas. It fixes most cropping issues in translate, scale, rotate and transform nodes by adjusting their canvas to the result, instead of the input canvas. Operations output buffer is still always on (0,0) position for easier image algorithm implementation, even when the canvas is not. Current limitations (will be addressed on bcon2): - Displayed translation in Viewer node is limited to 6000px. - When scaling up the canvas size is limited to the scene resolution size x 1.5 . From that point it crops. If none of these limitations are hit, the Viewer node displays the full input with any translation. Differential Revision: https://developer.blender.org/D12466
2021-09-28Compositor: Replace resolution concept by canvasManuel Castilla
This is a code refactor in preparation of supporting canvas compositing. See {D12466}. No functional changes, all canvases are at (0,0) position matching tiled implementation. Differential Revision: https://developer.blender.org/D12465
2021-09-28Fix error in previous commitGermano Cavalcante
`v_other` -> `v_step`
2021-09-28Fix flag wrongly set in 'BM_face_split_edgenet_connect_islands'Germano Cavalcante
Sometimes the `use_partial_connect` option could trigger the assert: ``` BLI_assert(!BM_elem_flag_test(l_iter->v, VERT_NOT_IN_STACK)); ``` This can happen when `v_delimit->e` is not part of edgenet, so `v_other` will not have the flag.
2021-09-28Cleanup: convert compositor nodes to c++Aaron Carlisle
- Many cleanups of to use list base - Some variable changes These change is needed to migrate to the new socket builder API Reviewed By: manzanilla Differential Revision: https://developer.blender.org/D12366
2021-09-28Cleanup: Sort node types alphabeticallyHans Goudey
2021-09-28Geometry Nodes: Field version of curve reverse nodeJohnny Matthews
The updated version has a selection input as a field and does not realize instances implicitly. Differential Revision: https://developer.blender.org/D12506
2021-09-28Fix potential render tests error with invalid utf-8 charactersBrecht Van Lommel
In general should not happen, but better to report the actual error instead of the Python test code failing.
2021-09-28Geometry Nodes: Remove experimental option for fieldsJacques Lucke
This enables fields as the official workflow for geometry nodes. While many features are converted to use fields rather than the old attribute workflow, many are not yet converted. In that case, the unconverted nodes are still accessible with an experimental option. In the coming weeks the rest of the nodes will be converted. Differential Revision: https://developer.blender.org/D12672
2021-09-28Fix build without Cycles HIP deviceBrecht Van Lommel
2021-09-28Geometry Nodes: Use factor slider for distribution density factorHans Goudey
Though the factor isn't so useful to adjust by itself, and is mostly useful when used with a field connected, the slider from 0 to 1 can help to make it clear that it's just used as a multiplier for the max density after distribution. Differential Revision: https://developer.blender.org/D12654
2021-09-28Fix VS2017 compile error in String to Curves nodeErik Abrahamsson
Because of a bug in VS2017 codecvt is replaced with Blender BLI functions to convert from UTF8 to UTF32. Differential Revision: https://developer.blender.org/D12655
2021-09-28Cycles: add HIP device support for AMD GPUsBrian Savery
NOTE: this feature is not ready for user testing, and not yet enabled in daily builds. It is being merged now for easier collaboration on development. HIP is a heterogenous compute interface allowing C++ code to be executed on GPUs similar to CUDA. It is intended to bring back AMD GPU rendering support on Windows and Linux. https://github.com/ROCm-Developer-Tools/HIP. As of the time of writing, it should compile and run on Linux with existing HIP compilers and driver runtimes. Publicly available compilers and drivers for Windows will come later. See task T91571 for more details on the current status and work remaining to be done. Credits: Sayak Biswas (AMD) Arya Rafii (AMD) Brian Savery (AMD) Differential Revision: https://developer.blender.org/D12578
2021-09-28Geometry Nodes: Mesh Point Cloud Conversion NodesHans Goudey
This commit adds nodes to do direct conversion between meshes and point clouds in geometry nodes. The conversion from mesh to points is helpful to instance once per face, or once per edge, which was previously only possibly with ugly work-arounds. Fields can be evaluated on the mesh to pass them to the points with the attribute capture node. The other conversion, point cloud to mesh vertices, is a bit less obvious, though it is still a common request from users. It's helpful for flexibility when passing data around, better visualization in the viewport (and in the future, cycles), and the simplicity of points. This is a step towards T91754, where point clouds are currently combined with meshes when outputing to the next modifier after geometry nodes. Since we're removing the implicit behavior for realizing instances, it feels natural to use an explicit node to convert points to vertices too. Differential Revision: https://developer.blender.org/D12657
2021-09-28Geometry Nodes: Only show attribute toggle for field inputsHans Goudey
Change the toggle to switch between an attribute and a single value to only display for inputs that are fields, as determined statically by the field inferencing added in rB61f3d4eb7c7db7. This means the field inferencing must be calculated on file load, since it's used in the UI. Differential Revision: https://developer.blender.org/D12623
2021-09-28Geometry Nodes: Run nodes once on unique instance dataHans Goudey
As described in T91672, often it can be much more efficient to run each node only on the unique geometry of the instances, rather than realizing all instances and potentially processing redundant data. Sometimes the performance difference can be completely smooth vs. completely unusable. Geometry nodes used to hide that choice from users by always realizing instances, but recently we have decided to expose it. So this commit makes nodes run once per unique reference in the entire tree of nested instances in their input geometries, continuing the work started in rB0559971ab377 and rBf94164d89629f0d2. For the old behavior, a realize instances node can be added before the nodes, which is done in the versioning code. Differential Revision: https://developer.blender.org/D12656
2021-09-28Fix T89400: Possible to delete objects used by overrides of collections.Bastien Montagne
This should not be allowed in general, added some initial call to check when user is allowed to delete a data to search for mandatory override usages...
2021-09-28Geometry Nodes: Move more nodes to legacyHans Goudey
- Curve to Points: Needs output sockets - Curve Endpoitns: Needs the same output sockets - Edge Split: Should have a selection input instead - Subdivision Surface: Should not use "crease" implicitly All new versions of these nodes should also not implicitly realize instances.
2021-09-28VSE: fix versioning code to the new maximum zoom level (128)Dalai Felinto
Since we bumped the number of channels to 128, I forgot to doversion the editors. So new files (new editors) would have this right, but not existing files. Fixup to: 8fecc2a8525467ee2fbbaae16ddbbc10b3050d46
2021-09-28Cleanup: asset catalog, remove obsolete TODOSybren A. Stüvel
No functional changes.
2021-09-28Cleanup: asset catalogs, move file header definition to constantSybren A. Stüvel
Define the standard catalog definition file header in a constant, separating it from the function that writes the entire file. No functional changes.
2021-09-28Geometry Nodes: don't realize instances in Instance on Points nodeJacques Lucke
Part of T91672.
2021-09-28Fix T91393: Duplicating an action with python crashes Blender.Bastien Montagne
Own mistake when making NLA overridable, instead of assuming things about the ID owner of the animation data being processed, properly return and use the one found by `ED_actedit_animdata_from_context`.
2021-09-28Fix: Fluid/Cloth/DynamicPaint: Only share pointcaches in CoW case.Bastien Montagne
Particle copying code was already properly sharing pointcache between orig data and its copy only when `LIB_ID_COPY_SET_COPIED_ON_WRITE` is set, do the same for the other point cache users. Using `LIB_ID_CREATE_NO_MAIN` here is waaaaaaay to much wide scope for such a dangerous/advanced behavior, that kind of things has to be strictly restricted in scope.
2021-09-28Cleanup: asset catalog service, remove obsolete `write_to_disk` functionSybren A. Stüvel
Remove `AssetCatalogService::write_to_disk()` function. It has been superseded by `write_to_disk_on_blendfile_save()`; the handful of test functions that called the old function have been adjusted to use the new one. No functional changes to Blender itself.
2021-09-28Fix wrong update with shadow catcher and transparent filmSergey Sharybin
This change fixes an issue when scene has a shadow catcher and film is configured to be transparent. Starting viewport render and making the background non-transparent will cause bad memory access (wrong render and possibly crash). Film passes depends on transparency of background, so check for this. Demo file: F10650585 Differential Revision: https://developer.blender.org/D12666