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-01-24Cleanup: spelling in commentsCampbell Barton
2022-01-24Cleanup: avoid positional struct initializationCampbell Barton
When moving to C++ field for initialization was removed. Favor assignments to field names as it reads better and avoids bugs if files are ever re-arranged as well as mistakes (see T94784). Note that the generated optimized output is identical with GCC11.
2022-01-23Geometry Nodes: Triangulate Node - Add Selection InputJohnny Matthews
This adds a selection field input to the node, faces that are selected and meet the minimum vertex count threshold will be triangulated. Differential Revision: https://developer.blender.org/D13804
2022-01-23Geometry Nodes: Relative Handle Position ModeJohnny Matthews
Add a boolean option to have the Curve Handle Position input node return the position of the handle relative to each point position. Differential Revision: https://developer.blender.org/D12947
2022-01-23Cleanup: separate function for Alembic edge crease readingKévin Dietrich
2022-01-23Fix Cycles crash collecting render statsKévin Dietrich
2022-01-23Cleanup: Improvements to mesh to bmesh conversionHans Goudey
- Use `Array` and `Span` instead of raw pointers. - Declare variables in smaller scope. - Use references instead of pointers.
2022-01-22Fix T94760: Crash building BMesh when opening fileHans Goudey
A large polygon in the file from the report caused `alloca` to exceed the maximum stack size, causing a crash. Instead of using `alloca`, use `blender::Array` with an inline buffer. Based on a patch by Germano Cavalcante (@mano-wii). Differential Revision: https://developer.blender.org/D13898
2022-01-22LineArt: Option to keep contour when using face mark filtering.YimingWu
When enabled, it will keep contour around the object instead of hide them by rule of face mark, so the object can always have full contour while filtering out some of the feature lines inside certain regions. Reviewed By: Antonio Vazquez (antoniov), Aleš Jelovčan (frogstomp) Differential Revision: https://developer.blender.org/D13847
2022-01-22LineArt: Back face cullingYimingWu
Option to discard back faced triangles, this speeds up calculation especially for when you only want to show visible feature lines. Reviewed By: Antonio Vazquez (antoniov), Aleš Jelovčan (frogstomp) Differential Revision: https://developer.blender.org/D13848
2022-01-22LineArt: Noise tolerant chaining.YimingWu
Instead of splitting it at each occlusion change, it tolerates short segments of "zig-zag" occlusion incoherence and doesn't split the chain at these points, thus creating a much smoother result. Reviewed By: Antonio Vazquez (antoniov), Aleš Jelovčan (frogstomp) Differential Revision: https://developer.blender.org/D13851
2022-01-22BMesh: merge normal and tessellation calculation on undoCampbell Barton
This gives a modest speedup as calculating tessellation and face normals at the same time can be more efficiently multi-threaded. Also avoids calculating face normals twice, oversight in d590e223daf6e20d462f2b197d32606d69873051.
2022-01-22Fix linking in debug modeCampbell Barton
b7878a4d457a59d4a42f8ac0f428ea336562d75a seems to have caused linking issues building debug mode on Linux. Using extern "C" resolves.
2022-01-22Cleanup: Move bmesh_mesh_convert.c to C++Hans Goudey
Useful for a simpler bug fix, code clarity, and easier possible optimizations in the future.
2022-01-22Fix T13879 new OBJ exporter not saving files with Unicode characters.Aras Pranckevicius
Need to use BLI_fopen instead of fopen.
2022-01-22Cleanup: Use references, const variablesHans Goudey
2022-01-22Curves: Improve accuracy and clarity of NURBS knots calculationLaurynas Duburas
This commit improves NURBS knot generation by adding proper support for the combination of the Bezier and cyclic options. In other cases the resulting knot doesn't change. This cyclic Bezier knot is used to create accurate accurate "Nurbs Circle", "Nurbs Cylinder" primitives. "Nurbs Sphere" and "Nurbs Torus" primitives are also improved by tweaking the spin operator. The knot vector in 3rd order NURBS curve with Bezier option turned on (without cyclic) is changed in comparison to previous calculations, although it doesn't change the curve shape itself. The accuracy of the of NURBS circle is fixed, which can be checked by comparing with mesh circle. Tessellation spacing differences in circular NURBS is also fixed, which is observable with the NURBS cylinder and sphere primitives. These were causing seam-like effects. This commit contains comments from Piotr Makal (@pmakal). Differential Revision: https://developer.blender.org/D11664
2022-01-22Fix T94974: Invalid normals in edit modeHans Goudey
Normal layers currently aren't stored in the undo step mesh storage, since they are not stored in files at all. However, the edit mesh expects normals to be fully calculated, and does not keep track of a dirty state. This patch updates the normals in the BMesh created by loading an undo step. Another option would be calculating the normals on the undo mesh first, which might be better if Mesh normal calculation is faster than BMesh calculation, but the preferred method to access vertex normals fails in this case, because the mesh runtime mutexes are not initialized for undo-state meshes. Differential Revision: https://developer.blender.org/D13859
2022-01-22Fix T94967: Sculpt mode crashes with missing normalsHans Goudey
From an error in rBcfa53e0fbeed, the vertex normals in `SculptSession` seem to be used, but in the case when no "pbvh" is used, the value of the pointer is never assigned. Normals were not generally dirty before this "ensure" function with regular sculpting operations, so this addition shouldn't have any cost. Differential Revision: https://developer.blender.org/D13854
2022-01-22Fix T95097: Attribute Capture node UI inconsistencyHans Goudey
All other nodes with data type and domain choices have the domain below the data type. Generally that order makes sense, because it's consistent with nodes that have no domain drop-down.
2022-01-22Fix: Applying object transform can create normal layersHans Goudey
Because this operator is used on original objects, it's best to tag the normals dirty instead of explicitly calculating them, to avoid unnecessarily storing normal layers on an original object (since they might have to be recalculated during evaluation anyway). There may be other places this change is helpful, but being conservative is likely better for now. Related to T95125
2022-01-21Build: update macOS for FreeType library with woff2 supportBrecht Van Lommel
Ref D13448, T93161
2022-01-21Fix std::optional value() build error on older macOS SDKBrecht Van Lommel
No longer happens on the buildbot, but for users building with an older Xcode we still need to avoid using value().
2022-01-21Distribute Points on Faces: Fix missing minimum value for density socketAaron Carlisle
Negative number density is not a part of this reality.
2022-01-21Fix new OBJ exporter to handle instancing.Howard Trickey
The new OBJ exporter did not handle object instances. The fix is to use a dependency graph iterator, asking for instances. Unfortunately that iterator makes a temporary copy of instance objects that does not persist past the iteration, but we need to save all the objects and meshes to write later, so the Object has to be copied now. This changed some unit tests. Even though the tests don't have instancing, the iterator also picks up some Text objects as Mesh ones (which is a good thing), resulting in two more objects in the all_objects.obj file output.
2022-01-21cmake/win: Platform update for freetype 2.11.0Ray Molenkamp
freetype now depends on brotli
2022-01-21deps/win: fix typo in brotli.cmakeRay Molenkamp
it was harvesting to the zstd folder which is not where these libs ought to be.
2022-01-21Fix: Object selection delay with many objectsRUben
With object collection properties open there was a huge delay when switching active objects in a large scene, (~10k objects, ~5m vertices). This is due to a non-optimal function to query all the collections the object is in. To solve this the code can be simplified by using `bpy.types.Object.users_collection` This returns all the collections the object is in removing the need to compute this in python.
2022-01-21Cmake/Deps: Freetype 2.11.0 / brotli 1.0.9Ray Molenkamp
The UI team requested adding woff2 support to freetype. this required a new dependency brotli. This changes adds brotili to the builder and bumps freetype to version 2.11.0 As freetype now depends on other libraries, for consistency all use of ${FREETYPE_LIBRARY} in cmake has been updated to use ${FREETYPE_LIBRARIES} adjustments have been made in the windows platform file, all other platforms use cmake's FindFreeType.cmake which already sets this variable. reviewed by: brecht Differential Revision: https://developer.blender.org/D13448
2022-01-21UI: Clarify Active Movie Clip tooltipAaron Carlisle
See T92299
2022-01-21Geometry Nodes: new Scale Elements nodesJacques Lucke
This node can scale individual edges and faces. When multiple selected faces/edges share the same vertices, they are scaled together. The center and scaling factor is averaged in this case. For some examples see D13757. Differential Revision: https://developer.blender.org/D13757
2022-01-21Geometry Nodes: Flip Faces NodeAlan Babu
Currently there is no way to flip normals in geometry nodes. This node makes that possible by flipping the winding order of selected faces. The node is purposely not called "Flip Normals", because normals are derived data, changing them is only a side effect. The real change is that the vertex and edge indices in the face corners of every selected polygon are reversed, and face corner attribute data is reversed. While there are existing utilities to flip a polygon and its custom data, this node aims to process an attribute's data together instead of processing all attributes separately for each index. Differential Revision: https://developer.blender.org/D13809
2022-01-21Geometry Nodes: Mesh Island Node - Rename Index SocketJohnny Matthews
Rename 'Index' Socket to 'Island Index' to make it more consistent with 'Island Count' Differential Revision: https://developer.blender.org/D13893
2022-01-21Geometry Nodes: New Output for Number of Mesh IslandsJohnny Matthews
Adds a second output to the Mesh Islands node that shows the total number of islands as a field. Differential Revision: https://developer.blender.org/D13700
2022-01-21Cycles: add pointcloud implementation for Metal RTBrecht Van Lommel
This is not currently working, with an internal compiler error. However we are currently using BVH2 instead of Metal RT. So this has no effect for users, it's being committed to avoid the code getting outdated. Ref T92573, T92212 Differential Revision: https://developer.blender.org/D13632
2022-01-21Fix error in previous commit.Jeroen Bakker
2022-01-21GPU: Disable create info for 2d image overlay merge.Jeroen Bakker
This shader needs to use the same interface as the OCIO shader. On Linux and Windows this seems to be the case. On MacOS however there is a mismatch that makes the overlay texture to be completely black when switching to workbench in the Shader workspace. This is just a temporarily work-around as this should be solved. Due to the poor GPU debugging facilities on Mac we haven't been able to pin-point the root cause.
2022-01-21Attributes: add operator to convert generic attributes to other typesJacques Lucke
Editing of generic attributes on the original objects in edit modes is still very limited. However, when applying a geometry nodes modifier that generates new attributes. These attributes will show up in the Attributes panel. Currently, our exporters are not capable of exporting generic attributes. Therefore, for the time being, a work around is to apply geometry nodes and then convert a generic attribute to a task specific attribute like a uv map, vertex group or vertex color layer. Once more parts of Blender support generic attributes, this will become less important. Currently, only meshes are supported by the operator. However, it would be relatively easy to extend it to other geometry types. Differential Revision: https://developer.blender.org/D13838
2022-01-21.obj: simplify templates in FileHandler, add commentsAnkit Meel
- Remove redundant template from `FormattingSyntax`. - Replace one enable_if with static assert for readability - Add comments No functional change expected. Reviewed by: jacqueslucke Differential Revision: https://developer.blender.org/D13882
2022-01-21GPU: Remove unused resources in shader create info.Jeroen Bakker
When adding the shader create infos some additional resources where defined that doesn't exist in the shader itself. This commit will remove them.
2022-01-21Cleanup: struct/class mismatch.Jeroen Bakker
2022-01-21UI: exclude "Undo History" from menu searchCampbell Barton
Undo history was showing in menu search since converting undo history to a menu from a popup, see: 0e1bb232e68ce71f4c3dd331ed6331665238a065.
2022-01-21Fix T95078: Setting digits as modifier in keymap doesn't workCampbell Barton
Allow any non-modifier keyboard events to be used. Note that the existing check for >= EVT_AKEY allowed NDOF and other non-keyboard events (including modifiers, which didn't work).
2022-01-21Cleanup: event type values & definesCampbell Barton
- Use defines instead of magic numbers for F-Key & NDOF range checks. - Use explicit values for NDOF event types. - Minor clarification to doc-strings. - Use doxy-sections.
2022-01-21Fix: Node link drag search doesn't list shader socketsHans Goudey
Shader sockets were only available when dragging from inputs.
2022-01-21Fix T93711: Cycles diffuse/glossy baking does not write alphaBrecht Van Lommel
With the change to use render passes internally the alpha channel got lost. Add support for these render passes to output an alpha channel for baking.
2022-01-21Cleanup: Resolve unused variable warning, make function staticHans Goudey
2022-01-21Fix Python API docs build errorHans Goudey
There is probably a better solution that's possible, but the few other things I tried didn't work, and the build error should be resolved for the buildbots. This is similar to the "breaks" in the namespace for functions declared in `ED_node.h`.
2022-01-20Fix T94457: random result using sky texture in light objectBrecht Van Lommel
Still not well defined, but should not longer use uninitialized values that gave different results between CPU/GPU and subsequent renders.
2022-01-20Fix T94698: artifacts in light passes with mixed volumes and surfacesBrecht Van Lommel