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-09-06IDManagement: better debug checks in `owner_get` callbacks.Bastien Montagne
Simplify and make more efficients checks in collection one (missed these in yesterday's commit rBcd49fee74114), add some to ShapeKey's one.
2022-09-06Merge branch 'blender-v3.3-release'Brecht Van Lommel
2022-09-06Fix T100842: Display Texture Paint UVs option in UV editor not workingBrecht Van Lommel
In 8cf52e8226cb we assumed that the UV IBO's are only needed in edit mode, however the UV lines also need to work in texture paint mode. So prefer to use bmesh when available to fix the original bug, but don't assume the face is hidden when there is no bmesh. Differential Revision: https://developer.blender.org/D15895
2022-09-06Update DRW testsGermano Cavalcante
And remove retest of `GPU_SHADER_3D_LINE_DASHED_UNIFORM_COLOR`.
2022-09-06GPU/DRW: Fix testClément Foucault
Regression introduced in rB755e728a9840
2022-09-06Merge branch 'blender-v3.3-release'Philipp Oeser
2022-09-06Fix T100747: Cannot add "String" attribute to meshPhilipp Oeser
Caused by {rB31365c6b9e4c}. The new API `CustomDataAttributeProvider` just did not support `CD_MASK_PROP_STRING`. While strings dont perform nicely in their current form, still add support back for the API. Adding Strings to the supported types seems to survive just fine, see attached example file. Maniphest Tasks: T100747 Differential Revision: https://developer.blender.org/D15851
2022-09-06GL: Require a minimum of 8 ssbo slot per shader stageClément Foucault
Otherwise we disable this feature. This is because some driver does not support any vertex storage buffers but still support 8 ssbo in fragment shader.
2022-09-06DRW: remove consistent debug buffer bindClément Foucault
This avoids the overhead of debug drawing when not debugging anything or even not using the new draw manager.
2022-09-06Cleanup: early exit when the active layer disallows procedural accessCampbell Barton
Once the active layer index is reached, there is no need to keep searching. Return early instead.
2022-09-06Cleanup: Remove use of designated initializers in C++ codeChris Blackbourn
Does not compile on Windows.
2022-09-06Cleanup: spelling in comments, formatting, move comments into headersCampbell Barton
2022-09-06ShaderBuilder: Fix compilation error due to recent changes.Jeroen Bakker
Added CustomData_get_layer to stub.
2022-09-06Cleanup: Move uvedit_islands to c++Chris Blackbourn
Differential Revision: https://developer.blender.org/D15870
2022-09-06GPU: remove 'GPU_SHADER_2D_LINE_DASHED_UNIFORM_COLOR'Germano Cavalcante
The only difference between `GPU_SHADER_2D_LINE_DASHED_UNIFORM_COLOR` and `GPU_SHADER_3D_LINE_DASHED_UNIFORM_COLOR` is that in the vertex shader the 2D version uses `vec4(pos, 0.0, 1.0)` and the 3D version uses `vec4(pos, 1.0)`. But VBOs with 2D attributes work perfectly in shaders that use 3D attributes. Components not specified are filled with components from `vec4(0.0, 0.0, 0.0, 1.0)`. So there is no real benefit to having two different shader versions.
2022-09-06GPU: remove 'GPU_SHADER_3D_IMAGE_MODULATE_ALPHA'Germano Cavalcante
`GPU_SHADER_3D_IMAGE_MODULATE_ALPHA` can be seamlessly replaced by `GPU_SHADER_3D_IMAGE_COLOR` with no real harm done.
2022-09-05Cleanup: Remove unused functionHans Goudey
This had a specific use case relating to the `CurveEval` type which shouldn't be necessary anymore.
2022-09-05GPU: convert 'GPU_SHADER_2D_IMAGE_COLOR' to 3DGermano Cavalcante
3D shaders work in both 2D and 3D viewports. This shader is a good candidate to be exposed in Python.
2022-09-05GPU: remove 'GPU_SHADER_2D_SMOOTH_COLOR'Germano Cavalcante
The only real difference between `GPU_SHADER_2D_SMOOTH_COLOR` and `GPU_SHADER_3D_SMOOTH_COLOR` is that in the vertex shader the 2D version uses `vec4(pos, 0.0, 1.0)` and the 3D version uses `vec4(pos, 1.0)`. But VBOs with 2D attributes work perfectly in shaders that use 3D attributes. Components not specified are filled with components from `vec4(0.0, 0.0, 0.0, 1.0)`. So there is no real benefit to having two different shader versions. This will simplify porting shaders to python as it will not be necessary to use a 3D and a 2D version of the shaders. In python the new name for '2D_SMOOTH_COLOR' and '3D_SMOOTH_COLOR' is 'SMOOTH_COLOR', but the old names still work for backward compatibility.
2022-09-05GPU: remove 'GPU_SHADER_2D_IMAGE'Germano Cavalcante
The only real difference between `GPU_SHADER_2D_IMAGE` and `GPU_SHADER_3D_IMAGE` is that in the vertex shader the 2D version uses `vec4(pos, 0.0, 1.0)` and the 3D version uses `vec4(pos, 1.0)`. But VBOs with 2D attributes work perfectly in shaders that use 3D attributes. Components not specified are filled with components from `vec4(0.0, 0.0, 0.0, 1.0)`. So there is no real benefit to having two different shader versions. This will simplify porting shaders to python as it will not be necessary to use a 3D and a 2D version of the shaders. In python the new name for '2D_IMAGE' and '3D_IMAGE' is 'IMAGE', but the old names still work for backward compatibility.
2022-09-05GPU: remove 'GPU_SHADER_2D_FLAT_COLOR'Germano Cavalcante
The only real difference between `GPU_SHADER_2D_FLAT_COLOR` and `GPU_SHADER_3D_FLAT_COLOR` is that in the vertex shader the 2D version uses `vec4(pos, 0.0, 1.0)` and the 3D version uses `vec4(pos, 1.0)`. But VBOs with 2D attributes work perfectly in shaders that use 3D attributes. Components not specified are filled with components from `vec4(0.0, 0.0, 0.0, 1.0)`. So there is no real benefit to having two different shader versions. This will simplify porting shaders to python as it will not be necessary to use a 3D and a 2D version of the shaders. In python the new name for '2D_FLAT_COLOR'' and '3D_FLAT_COLOR' is 'FLAT_COLOR', but the old names still work for backward compatibility.
2022-09-05GPU: remove 'GPU_SHADER_2D_UNIFORM_COLOR'Germano Cavalcante
The only real difference between `GPU_SHADER_2D_UNIFORM_COLOR` and `GPU_SHADER_3D_UNIFORM_COLOR` is that in the vertex shader the 2D version uses `vec4(pos, 0.0, 1.0)` and the 3D version uses `vec4(pos, 1.0)`. But VBOs with 2D attributes work perfectly in shaders that use 3D attributes. Components not specified are filled with components from `vec4(0.0, 0.0, 0.0, 1.0)`. So there is no real benefit to having two different shader versions. This will simplify porting shaders to python as it will not be necessary to use a 3D and a 2D version of the shaders. In python the new name for '2D_UNIFORM_COLOR'' and '3D_UNIFORM_COLOR' is 'UNIFORM_COLOR', but the old names still work for backward compatibility. Differential Revision: https://developer.blender.org/D15836
2022-09-05GPencil: Use correct index for start point and refactor updateAntonio Vazquez
The last commit offset the start point by 1. Also, remove the update because is better to do this in each operator that need it.
2022-09-05UI: Corrected Scaling of AREAMINXHarley Acheson
Minimum horizontal area size should be scaled by UI resolution. See D15865 for more details. Differential Revision: https://developer.blender.org/D15865 Reviewed by Brecht Van Lommel
2022-09-05Cleanup: Unused variable, compiler warningHans Goudey
2022-09-05Mesh: Remove redundant custom data pointersHans Goudey
For copy-on-write, we want to share attribute arrays between meshes where possible. Mutable pointers like `Mesh.mvert` make that difficult by making ownership vague. They also make code more complex by adding redundancy. The simplest solution is just removing them and retrieving layers from `CustomData` as needed. Similar changes have already been applied to curves and point clouds (e9f82d3dc7ee, 410a6efb747f). Removing use of the pointers generally makes code more obvious and more reusable. Mesh data is now accessed with a C++ API (`Mesh::edges()` or `Mesh::edges_for_write()`), and a C API (`BKE_mesh_edges(mesh)`). The CoW changes this commit makes possible are described in T95845 and T95842, and started in D14139 and D14140. The change also simplifies the ongoing mesh struct-of-array refactors from T95965. **RNA/Python Access Performance** Theoretically, accessing mesh elements with the RNA API may become slower, since the layer needs to be found on every random access. However, overhead is already high enough that this doesn't make a noticible differenc, and performance is actually improved in some cases. Random access can be up to 10% faster, but other situations might be a bit slower. Generally using `foreach_get/set` are the best way to improve performance. See the differential revision for more discussion about Python performance. Cycles has been updated to use raw pointers and the internal Blender mesh types, mostly because there is no sense in having this overhead when it's already compiled with Blender. In my tests this roughly halves the Cycles mesh creation time (0.19s to 0.10s for a 1 million face grid). Differential Revision: https://developer.blender.org/D15488
2022-09-05Cleanup: Fix unused variable warningsHans Goudey
2022-09-05Cleanup: Remove unused code for VSE waveform drawingRichard Antalik
2022-09-05Fix VSE: accidentally commented out codeRichard Antalik
`DEG_id_tag_update` was commented out in `sequencer_meta_toggle_exec()`. Tagging does not affect functionality now, but it should be done.
2022-09-05Fix T81002: Images drawn with the Python gpu module no longer draw on top in ↵Germano Cavalcante
the Image Editor This reverts commit 32d4a67017ecf4af75a9bfde885526550a6534ba thus fixing T81002 again. And in order not to break T81212 (again) a different fix was implemented. Reviewed By: brecht Differential Revision: https://developer.blender.org/D15840
2022-09-05Cleanup: make formatBrecht Van Lommel
2022-09-05GPencil: Fix bug in set start api functionAntonio Vazquez
The point of the second stroke was duplicated.
2022-09-05GPencil: Improve previous commit error checkingAntonio Vazquez
Better check if the strokes has more points. A 0 or 1 point stroke never need to set start point.
2022-09-05Cleanup: Add parameter auto_flip documentationAntonio Vazquez
2022-09-05GPencil: Small code cleanupAntonio Vazquez
2022-09-05IDMAnagement: Add owner ID pointer to embedded ones.Bastien Montagne
Add a dedicated `owner_id` pointer to ID types that can be embedded (Collections and NodeTrees), and modify slightly come code to make handling those more safe and consistent. This implements first part of T69169. Reviewed By: brecht Differential Revision: https://developer.blender.org/D15838
2022-09-05EEVEE: Fix attributes node on Alpha Clip/Hashed materialsClément Foucault
This was cause by a missing implementation of some post processing attribute functions. Leading to unresolved reference.
2022-09-05I18n: translate untitled file namesDamien Picard
When saving, the default file name is "untitled" regardless of selected language. This can be translated, like many graphical applications do. This applies to: - blend file - alembic file - collada file - obj file - usd file - rendered image - grease pencil export - subtitles export - other Python exports through ExportHelper Reviewed By: mont29 Differential Revision: https://developer.blender.org/D15868
2022-09-05Merge branch 'blender-v3.3-release'Jacques Lucke
2022-09-05Fix T100796: wrong tangents on bezier splines with duplicate points and handlesJacques Lucke
Differential Revision: https://developer.blender.org/D15880
2022-09-05I18n: fix translation of status barDamien Picard
- Use the proper context (Operator, since that is what the cursor keymap status uses) - Add a few missing message extraction tags Reviewed By: mont29 Differential Revision: https://developer.blender.org/D15867
2022-09-05GPencil: New BKE function to set stroke start pointAntonio Vazquez
This function allows to set the start point for cyclic strokes. The function is required by a new modifier and operator that are currently under development.
2022-09-05Fix T100820: Crash renaming modifier with visibility driverSergey Sharybin
2022-09-05Merge branch 'blender-v3.3-release'Clément Foucault
2022-09-05Fix T100649: Regression: Environment texture is stretched when added to meshClément Foucault
The new code was not using the correct default attribute. Add access to `g_data.P` through `node_tex_coord_position()` to replace the old `GPU_builtin(GPU_VIEW_POSITION)` which was used before. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D15862
2022-09-05Fix T100775: Regression: EEVEE world environment is stretched when using ↵Clément Foucault
orthographic view It was using normalized vector instead of `viewCameraVec` which account for orthographic views. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D15861
2022-09-05Fix T100788 Regression: EEVEE wrong normal map on backfacesClément Foucault
This was caused by rB07cf3ce92fa2. It was missing a sign flip.
2022-09-04Cleanup: Clarify multi-socket input sortingHans Goudey
The multi-socket input sorting was used for two purposes: moving links to the proper positions when dragging a new link, and resetting the multi-input indices on the links when removing a link. They are now separated into two functions, and the sorting when making a group node that didn't accomplish anything is removed (in that case a proper implementation would copy the indices from the original exterior sockets).
2022-09-04Cleanup: Replace recursive quadratic node link mute operationHans Goudey
The previous implementation iterated over all links multiple times recursively. Instead, use the node tree topology cache, only iterate over all links once, and use a stack to propagate the mute upsteam and downstream.
2022-09-03Cleanup: Deduplicate node link intersection testHans Goudey