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
2020-03-14Cleanup: use doxy sectionsCampbell Barton
2020-03-14UI: Toolbar iconsWilliam Reynish
- Add icons for Sculpt Cloth, Clay Thumb and Draw Face Sets, as well as GP Tint, Replace and Transform Fill tools - Tweak icons for Sculpt Rotate, Pinch, Multiplane Scrape, Inflate, Blob, Draw Sharp, based on feedback on Devtalk
2020-03-14Fix T73921: Eevee volume render test memory leak in MantaflowSebastián Barschkis
Fixed memory leak that showed up after the original issue (crash) had been fixed in 93ac4709ebe8. The fix ensures that light cache bakes free up GPU smoke textures and the smoke domain list correctly. This commit also removes the workaround (f3a33a92987f) that disabled light cache bakes for fluid objects.
2020-03-13GPencil: Don'r Replace color if vertex color is emptyAntonio Vazquez
The replace tools only must work over previously vertex painted.
2020-03-13Cleanup: USD, move some common code to an abstract superclassSybren A. Stüvel
The `check_is_animated()` function will be used by the upcoming Alembic exporter as well. There is nothing USD-specific in the function. No functional changes.
2020-03-13Fix T74699: File browser closing while loading crash.Bastien Montagne
Owner of filelisting job was changed, without proper update of all access/usages of that owner to reach the job, leading to failure of timer removal from the WM, and attempt to double-free the job... Caused by rB2c4dfbb00246ff.
2020-03-13Cleanup: `BKE_mesh_nomain_to_mesh`: Add assert that source mesh is indeed ↵Bastien Montagne
not in Main.
2020-03-13Cleanup: Comments of wmJobs callbacks.Bastien Montagne
2020-03-13Fix T74397: Crash after undoing quadriflow remesh on duplicate with armature ↵Sebastian Parborg
deform The issue was that we were creating temporary mesh copies and storing them in bmain and then later using BKE_mesh_nomain_to_mesh which would add them to bmain once more (duplicates). This would lead to crashes later as the custom data of the mesh could be trashed quite easily.
2020-03-13Fix T74686: Loading btx file in multires modifier is not workingSergey Sharybin
Was happening when object does not have CD_MDISPS allocated yet. Need to make sure totdisp and level is specified on CD_MDISPS data prior to loading (as the load expects them to be properly set).
2020-03-13Multires: Fix loosing sculpt data when using external BTX fileSergey Sharybin
2020-03-13Fix stereoscopy reference image drawing in the viewportDalai Felinto
Note: Without D6922 stereo is too broken to even test this patch. With D6922 + this patch the fullscreen modes work (anaglyph/interlace not yet).
2020-03-13GPencil: Fix UI typoAntonio Vazquez
2020-03-13Fix stereoscopy drawing for camera backgroundDalai Felinto
Part of the fix was to get gputexture to use an array to accomodate each eye. This takes care of viewports showing individual Left or Right views. For the combined view the fix was in overlay_image.c:camera_background_images_stereo_setup. Note 1: Referece images are still not supporting stereo. Note 2: For painting, and getting image bindcode I'm hardcording a single-view experience. Note 3: Without D6922 stereo is too broken to even test this patch. With D6922 + this patch the fullscreen modes work (anaglyph/interlace not yet). Differential Revision: D7143
2020-03-13Fluid: Potential fix for Eevee tests crashing with MantaflowSebastián Barschkis
Belongs to T73921. This commit fixes the crashes with light baking (disabled in f3a33a92987f). There is still a memory leak to be fixed though.
2020-03-13Potential fix for T74609: File Selector Crashes Showing Thumbnails.Bastien Montagne
Existing code was definitively giving possibility to access freed memory, although probably not on a super-common basis...
2020-03-13Multires: Fix Subdivide, Reshape and Apply BaseSergey Sharybin
This change fixes artifacts produced by these operations. On a technical aspect this is done by porting all of the operations to the new subdivision surface implementation which ensures that tangent space used to evaluate modifier and those operations is exactly the same (before modifier will use new code and the operations will still use an old one). The next step is to get sculpting on a non-top level to work, and that actually requires fixes in the undo system.
2020-03-13Multires: Increase default quality to 4Sergey Sharybin
Makes it work better "out of the box" for irregular topology like Suzanne mesh. There might be some performance impact on non-regular meshes, but those are not very common usecase for multires and for those its always possible to lower the quality if needed.
2020-03-13Subdiv: Fix loose geometry callbacks in certain conditionsSergey Sharybin
Loose vertices and vertices of loose edges callback was not working correct if some of other callbacks were set to NULL. Was caused by missing bitmask set in the callbacks which were set to NULL.
2020-03-13OpenSubdiv: Make non-full geometry less strict for sharpnessSergey Sharybin
Allow to mark individual vertices as infinitely sharp even if there is no full topology and no access to edges: infinite sharp vertices do not need connectivity information.
2020-03-13GPencil: Fix typo errorAntonio Vazquez
2020-03-13GPencil: Enable Lights ON to default object in 2D templateAntonio Vazquez
2020-03-13Python: add foreach_get and foreach_set methods to pyrna_prop_arrayBogdan Nagirniak
This allows fast access to various arrays in the Python API. Most notably, `image.pixels` can be accessed much more efficiently now. **Benchmark** Below are the results of a benchmark that compares different ways to set/get all pixel values. I do the tests on 2048x2048 rgba images. The benchmark tests the following dimensions: - Byte vs. float per color channel - Python list vs. numpy array containing floats - `foreach_set` (new) vs. `image.pixels = ...` (old) ``` Pixel amount: 2048 * 2048 = 4.194.304 Byte buffer size: 16.8 mb Float buffer size: 67.1 mb Set pixel colors: byte - new - list: 271 ms byte - new - buffer: 29 ms byte - old - list: 350 ms byte - old - buffer: 2900 ms float - new - list: 249 ms float - new - buffer: 8 ms float - old - list: 330 ms float - old - buffer: 2880 ms Get pixel colors: byte - list: 128 ms byte - buffer: 9 ms float - list: 125 ms float - buffer: 8 ms ``` **Observations** The best set and get speed can be achieved with buffers and a float image, at the cost of higher memory consumption. Furthermore, using buffers when using `pixels = ...` is incredibly slow, because it is not optimized. Optimizing this is possible, but might not be trivial (there were multiple attempts afaik). Float images are faster due to overhead introduced by the api for byte images. If I profiled it correctly, a lot of time is spend in the `[0, 1] -> {0, ..., 255}` conversion. The functions doing that conversion is `unit_float_to_uchar_clamp`. While I have an idea on how it can be optimized, I do not know if it can be done without changing its functionality slightly. Performance wise the best solution would be to not do this conversion at all and accept byte input from the api user directly, but that seems to be a more involved task as well. Differential Revision: https://developer.blender.org/D7053 Reviewers: JacquesLucke, mont29
2020-03-13GPencil: Avoid segment fault when use Simplify modifierAntonio Vazquez
The number of points of the evaluated stroke can be less than original or the original can use less points that evaluated.
2020-03-13Cleanup: USD, removed unused export job dataSybren A. Stüvel
The code was copied from the Alembic exporter, and some of the options are no longer used. Not updating the Alembic exporter itself, as this will be done in a much larger rewrite.
2020-03-13GPencil: Fix Noise modifier versioningAntonio Vazquez
The versioning was setting the factor for all modes without checking flags. Also cleanup some unused code.
2020-03-13Fix T74696: Segment fault in Noise modifier using Vertex GroupsAntonio Vazquez
2020-03-13Fix IDTypeInfo not having enough bits for ID filter flagBrecht Van Lommel
2020-03-13GPencil: Cleanup unneeded checkAntonio Vazquez
2020-03-13GPencil: Join Tint and Vertex Color modifierAntonio Vazquez
Both are doing almost the same and can be merged. This reduce complexity for user and less code to maintain. Reviewed By: mendio, pepeland, fclem Differential Revision: https://developer.blender.org/D7134
2020-03-13Fix info showing multi-line reports reversed (upside-down)Campbell Barton
Also, only show the icon once per report.
2020-03-13DeformMod: Performance by reusing buffersJeroen Bakker
The Deform modifiers was reallocating buffers that only fit the vertices of the inner loop. This patch first counts the maximum needed buffer and allocates one. When using the daily dweebs animation file the playback performance went from 0.66 fps to 0.93 fps. Reviewed By: sybren Differential Revision: https://developer.blender.org/D7132
2020-03-13Cleanup: pass const args (mostly Scene & RenderData)Campbell Barton
2020-03-12Fix boundary edges detection ignoring Face Set visibilityPablo Dobarro
If one of the faces connected to a vertex is hidden in the face sets, we can assume that the vertex is part of a boundary edge, so it should be cosidered like that in all automasking and edge detection functions. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7126
2020-03-12Fix flood fill operation not taking into account hidden verticesPablo Dobarro
The idea of the visibility system is that tools should behave like hidden vertices do not exist, so the flood fill operation should ignore hidden vertices for all operators. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7125
2020-03-12Use golden ratio conjugate for Face Sets hue generationPablo Dobarro
The face set ID is sequential, so implementing this was straightforward. Suggested by Jeroen Bakker Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7123
2020-03-12Fix Face Set operators not modifying sigle poly Face SetsPablo Dobarro
The face_set_set function which sets a face sets given a vertex index can ignore all modifications to hidden face sets, so we can skip all vertex visibility checks outside that function. This makes the code faster, simpler and fixes multiple bugs. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7122
2020-03-12Fix T74646: Pick a random face set to be rendered white when randomizing the ↵Pablo Dobarro
colors The previous solution was also working fine as the white face set has no meaning, but now it is a little bit more random. Also, bigger face sets have more chance of getting the white color. Reviewed By: jbakker Maniphest Tasks: T74646 Differential Revision: https://developer.blender.org/D7111
2020-03-12Fix T74648: Do not relax with 0 neighbors or no vertex normalPablo Dobarro
The mesh provided in the report has 0 area faces and overlapping vertices, causing the relax code to fail when calculating the plane to constraint the vertex movement. Now it works fine both in the brush and in the mesh filter. Reviewed By: jbakker Maniphest Tasks: T74648 Differential Revision: https://developer.blender.org/D7109
2020-03-12Fix mesh shrinking when using the relax mesh filter.Pablo Dobarro
If the relax mesh filter was used on a non manifold mesh with open boundaries, all the vertices were relaxed and the mesh was shrinking. This was an unintended behavior that was making the filter unusable with these meshes. The mesh filter is now initializing an automasking buffer using the same boundary automasking function from the brush code. Now edges are preserved and the relax filter works as it should. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7097
2020-03-12Fix memory leak in recent Cycles image texture refactorBrecht Van Lommel
2020-03-12GPencil: Move Vertex Paint mode to topbarAntonio Vazquez
It's more easy to find in the topbar
2020-03-12GPencil: Fix color management in Vertex Paint toolsAntonio Vazquez
The brush is using sRGB and need to be Linear
2020-03-12Fix T73049: Drag & drop on overlapping panels behaves incorrectlyJacques Lucke
Reviewers: brecht, Severin Differential Revision: https://developer.blender.org/D7024
2020-03-12Fix T74670: crash during copy paste of objects.Bastien Montagne
Embedded data should always be considered as outside of Main database here. Note that it's a bit of an edge case to decide whether those should always have their `LIB_TAG_NOMAIN` set too, or not? For now, let's keep things as they are here.
2020-03-12Expose 'is embedded data' ID flag to RNA.Bastien Montagne
Relevant currently for root node trees and master collections.
2020-03-12Fix T66505: Dope Sheet shows empty Grease Pencil/Annotation layersSybren A. Stüvel
The behaviour of GP layers is the same as annotation layers: they show in the dope sheet regardless of whether they have frames or not. This is easily resolved by adding some extra filtering.
2020-03-12Cleanup: simplified Grease Pencil animdata filterSybren A. Stüvel
Part of the function was following an "if-ok: do-this" pattern, and then mid-function switched to a "if-bad: skip" pattern. The function now just uses the latter. No functional changes.
2020-03-12Cleanup: add device_texture for images, distinct from other global memoryBrecht Van Lommel
There was too much image texture specific stuff in device_memory, and too much code duplication between devices.
2020-03-12Fix build error with recent OpenImageIO versionsBrecht Van Lommel