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
path: root/source
AgeCommit message (Collapse)Author
2022-10-05DRW: Split ViewProjectionMatrix in order to increase precisionClément Foucault
This also removes the need to compute the persmat and saves some memory from the `ViewInfos` struct. This is needed to allow multiview support. Initial testing found no major performance regression during vertex heavy workload. Test file: {F13610017} Results: | Platform | Master | Split Matrix| | Linux + Mesa + AMD W6600 | 48 fps | 47 fps | | Macbook Pro M1 | 50 fps | 51 fps | | Linux + NVidia 1080Ti | 51 fps | 52 fps | | Linux + Radeon Vega 64 | 25.6 fps | 26.7 fps | Increased precision when far from origin: {F13610024} {F13610025} Reviewed By: jbakker Differential Revision: https://developer.blender.org/D16125
2022-10-05Mesh: Skip some domain interpolations for single valuesIliya Katueshenock
Completely skip the work of interpolating domains for single values for many to and from combinations. Similar to 535f50e5a6a248b7aa74b59, but slightly more complex because of the possibility of loose elements on some mesh domains. From D16054, with added comments.
2022-10-05Cleanup: Use generic array for mesh domain interpolation resultIliya Katueshenock
Instead of declaring a typed array inside the static type block. This generates slightly less code and should have the same performance. From D16054
2022-10-05Revert "Geometry Nodes: Add index input to Edge Vertices node"Hans Goudey
Unfortunately this commit changed behavior in a fundamental way that can't be addressed without larger changes. Previously the position outputs were evaluated on the edge domain and then interpolated to the context domain, which could be useful for some rudimentary mesh smoothing. After the commit they were just evaluated at the specified index, which looks practically random when evaluated on a different domain. We may need a new node that doesn't have the implicit behavior in the future. This reverts commit 4ddc5a936e07129aaf94ed7d188b8f5f5ea14085.
2022-10-05I18n: disambiguate a few messagesDamien Picard
- Active Track (NLA vs movie clip) - New (file) - Object Index (loop cut) - Object Index (render pass) - Proxy Storage (sequence) - Rim (Solidify modifier) - Roughness (particle children) - Spaces (text whitespace) - Out (sequencer wipe transition) Also make new asset tag name translatable. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D16067
2022-10-05I18n: extract dynamic enum itemsDamien Picard
These item names and descriptions never got extracted because they're not in the RNA until the proper context occurs, and so the extraction script never even knew about them. The properties are mostly located in the fluids UI. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D15994
2022-10-05Fix T101405: Deleting a baked action results in an error.Bastien Montagne
RNA code to create new actions did not properly remove the extra user set by default, as done in other `new` callbacks of other ID types. NOTE: Mask ID had the same issue, also fixed in this commit. NOTE: At some point this needs to be properly fixed, default super-low level ID creation code should simply not add a 'default' user, this is extremely bad design and forces higher-level code to do all kind of extra work to get rid of it half of the time, in very unclear and confusing ways and places.
2022-10-05BKE_Main: Add clear separation between 'temp' mains and global main.Bastien Montagne
Blender is using more and more temporary Main data-base (historically for reading linked data, but also now when resyncing liboverrides, for temp data in asset code, etc.). This commit aims at making this a bit more formal and defined, by: * Adding a dedicated flag in Main struct to mark a Main as global. * Adding some API to replace, or temporarily swap the current global Main (`G_MAIN`) by another one. NOTE: Having to temporarily replace `G_MAIN` is a workaround for the limitation of current RNA, ideally this should be fixed in RNA itself, but for now at least having an API helps tracking those cases (since this is potentially risky operation). This work is also a preparation for more usages of temp mains in the near future (Asset Brushes and its presets system e.g. will most likely use temp mains too). Reviewed By: brecht Differential Revision: https://developer.blender.org/D15977
2022-10-05Fix T101613: Muted Mix node wrongly connects to Factor socketCharlie Jolly
T101613: Muting/ctrl+x deleting the new mix node in Float mode passes through the wrong input. Fix by setting no_muted_links() on Factor sockets.
2022-10-05Fix T101306: crash when calling Delete command for Library OverridePhilipp Oeser
Was not passing user_data to id_override_library_delete_hierarchy_fn. Also correct a wrong assert. Greenlit by @mont29 in T101306. Should also go into 3.3 LTS.
2022-10-05LineArt: Fix "No intersection" flicker.YimingWu
The flicker was caused by the failure for checking both triangles for flags. Now fixed.
2022-10-05Fix order of include-guard & C++ extern blockCampbell Barton
2022-10-05Fix error in 6b76381e0a52cf15513087e470a4a4c07471acc6Campbell Barton
Missed flipping arguments for caller.
2022-10-05Fix app-template settings being used for non-template preferencesCampbell Barton
Saving non app-template preferences would use add-ons and other app-template settings to write the default preferences if there was no existing user preferences file saved.
2022-10-05App Template: quiet warning when existing preferences don't existCampbell Barton
Suppress warning when saving app-template preferences. Check if the preferences exist before attempting to read them, while harmless it looked as if something went wrong.
2022-10-05Docs: improve doc-strings for blend file IOCampbell Barton
- Document the behavior of app-template IO for preferences. - Add doxy-sections for each kind of blend file IO. - Clarify BKE_blender_userdef_app_template_data_swap doc-string.
2022-10-05Cleanup: Remove unused includesHans Goudey
2022-10-05Fix: Crash when reininitializing empty generic arrayHans Goudey
Noticed this while developing new code that used GArray.
2022-10-05Geometry Nodes: Add soft min for points node radius inputHans Goudey
Also remove an unnecessary cast.
2022-10-04Cleanup: VSE: Rename `val` to `timeline_frame`Richard Antalik
2022-10-04Cleanup: Add docstrings to `SEQ_time.h`Richard Antalik
2022-10-04Cleanup: VSE code readabilityRichard Antalik
Add function `SEQ_time_content_end_frame_get` to get content end frame. New function is shorthand for `SEQ_time_start_frame_get() + SEQ_time_strip_length_get()`.
2022-10-04Fix: Crash versioning transfer node with animation dataHans Goudey
This versioning needs to be done after linking in order to affect animation data which might not be loaded in the regular "do_versions" loop. Animation data is removed in `nodeRemoveNode`. Fixes T101439
2022-10-04Cleanup: remove unused members from RenderResultBrecht Van Lommel
2022-10-04UI: Avoid unnecessary label in set curve normal nodeHans Goudey
"Mode" is obvious and isn't worth cutting off the text.
2022-10-04Fix: Bump subversion after forward compatibility breakageHans Goudey
c3b6e372542f9fb0ff23 change node ID names. Bump the subversion and the min file subversion so older versions get warnings opening newer files.
2022-10-04Fix T101583: Issues applying modifier to mesh with shape keysHans Goudey
The wrong mesh was used to read the position attribute. Also, there was always a warning about missing shape keys when that wasn't the case.
2022-10-04Fix: UI: Warning for description with period at endHans Goudey
The last period is added automatically, for better or worse.
2022-10-04BLI: Unroll vector loops for better performance on GCCHans Goudey
On GCC, the loops created by `BLI_VEC_OP_IMPL` were not always unrolled, leading to branching. For `attribute_math::mix4<float3>`, this lead to a significant performance regression compared to its older `interp_v3_v3v3v3v3` counterpart. Instead of a using macros to create the for loops, use variadic templates to manually unroll them. The compiler might do it anyway (I didn't observe any effect on Clang in my tests), but there should be no reason not to unroll these small loops, and making it explicit and removing use of macros seems better. On a Ryzen 3700x, this commits doubles the performance of Catmull Rom curve position evaluation (from 18-19ms to around 9-10ms). Differential Revision: https://developer.blender.org/D16136
2022-10-04Fix T101233: Crash on deleting the object in outliner due to null pointer accessPratik Borhade
After rB188f7585a183 deleting the object results in crash due to null pointer access if collections are filtered out Reviewed by: mont29 Differential Revision: https://developer.blender.org/D16031
2022-10-04Always initialize MaterialPass (Fixes a crash in mscv)Miguel Pozo
Differential Revision: https://developer.blender.org/D16134
2022-10-04Fix T101447: Hold split not working correctlyRichard Antalik
Caused by incorrect conflict resolution in commit 302b04a5a3fc0e76.
2022-10-04Fix T101499: Do not allow unlinking objects from linked collections.Bastien Montagne
2022-10-04Cleanup: Remove commented out code in ssr_lib.glsl.Jeroen Bakker
2022-10-04Fix T101438: Wrong LOD selection after clamping the mip value (Nvidia)Miguel Pozo
Fix for T101438 Clamping the mip seems to always set it to 9.0. I couldn't find an alternative way to avoid triggering the error (ie. min(mip, 9.0)). In any case, the results with this patch applied look the same to the (correct) ones on AMD. And, since clamping the max mip to a hardcoded value could result in resolution-depended behavior, I guess disabling the clamp should be ok anyway. Reviewed By: fclem Maniphest Tasks: T101438 Differential Revision: https://developer.blender.org/D16129
2022-10-04Animation: Update tooltips to be more readableJames
Change some wording of tooltips for readability, in animation-related areas (drivers, keying sets, animation channel visibility). Reviewed By: sybren Differential Revision: https://developer.blender.org/D16131
2022-10-04Fix T101559: Rain Test Animation demo crashes Blender 3.3Bastien Montagne
Update to liboverride creation code to add support of keeping active object forgot to consider case when there is no known/given view layer. NOTE: due to differences in code, fix for 3.3 will be a bit different.
2022-10-04New viewlayer deferred resync code: add utils to ensure resync of whole ↵Bastien Montagne
Scene and Main. Similar to existing `BKE_main_collection_sync` and `BKE_scene_collection_sync`, in some cases code does not have access to a specific view layer, and/or does not know exactly which view layer needs to be in sync, or just need the full data to be up to date.
2022-10-04Cleanup: rename BKE_appdir_folder_id_version, improve doc-stringsCampbell Barton
Rename BKE_appdir_folder_id_version to BKE_appdir_resource_path_id_with_version because BKE_appdir_folder_id and BKE_appdir_folder_id_version didn't accept compatible arguments. Also add notes to GHOST_getSystemDir & GHOST_getUserDir that BKE_appdir_resource_path_id(..) should be used instead (in most cases).
2022-10-04Support environment variables to override USER & SYSTEM resource pathsCampbell Barton
Even though individual USER/SYSTEM paths could be set using environment variables, it wasn't possible to override the USER or SYSTEM paths. This meant the result of `bpy.utils.resource_path('USER')` & `bpy.utils.resource_path('SYSTEM')` could still be used by scripts, making the Blender session potentially the default USER directory (even when `BLENDER_USER_CONFIG`, `BLENDER_USER_SCRIPTS` & `BLENDER_USER_DATAFILES` all point elsewhere). Resolve by adding environment variables: - BLENDER_USER_RESOURCES - BLENDER_SYSTEM_RESOURCES These will be used for `bpy.utils.resource_path('USER')` & `bpy.utils.resource_path('SYSTEM')`, as well as a basis for user & system directories, unless those environment variables are set (`BLENDER_USER_*` or `BLENDER_SYSTEM_*`). Resolves issue raised by T101389. Example usage & output: {P3225} Reviewed By: brecht Ref D16111
2022-10-04Cleanup: remove unnecessary includes from sculpt_paintCampbell Barton
2022-10-04Cleanup: formatCampbell Barton
2022-10-04Cleanup: undeclared function warningCampbell Barton
2022-10-04Cleanup: correct argument size for plane in planeProjectionCampbell Barton
2022-10-04Sculpt: Visibility bugfixesJoseph Eagar
* Unhide all is no longer part of face_set_change_visibility. * Implemented a few visibility API methods for PBVH_BMESH * Fixed bug with unhide all not freeing all multires grid_hidden bitmaps.
2022-10-04Sculpt: implement Reveal All for PBVH_BMESHJoseph Eagar
2022-10-04Cleanup: Fix sign conversion warning in BMesh logHans Goudey
2022-10-04Cleanup: replace UNUSED macro with commented args in C++ codeHans Goudey
This is the conventional way of dealing with unused arguments in C++, since it works on all compilers. Regex find and replace: `UNUSED\((\w+)\)` -> `/*$1*/`
2022-10-04Sculpt: Fix T101430: Blank stroke undo steps corrupt dyntopoJoseph Eagar
Blank brush strokes never have an oppurtunity to initialize a sculpt undo step, which results in blank global undo steps. These confuse DynTopo's internal BMLog undo stack. Note: I tried having the stroke operator return OPERATOR_CANCELLED, but this didn't prevent the undo push (which is done automatically due to the presence of OPTYPE_UNDO in the operator flags). I might investigate removing the flag, but that might cause other problems.
2022-10-04Sculpt: Add debug code to print sculpt undo stack.Joseph Eagar