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-06-14Fix T98813: crash with GPU subdiv in edit mode and instanced geometryBrecht Van Lommel
Instancing with geometry nodes uses just the evaluated Mesh, and ignores the Object that it came from. That meant that it would try to look up the subsurf modifier on the instancer object which does not have the subsurf modifier. Instead of storing a session UUID and looking up the modifier data, store a point to the subsurf modifier runtime data. Unlike the modifier data, this runtime data is preserved across depsgraph CoW. It must be for the subdiv descriptor contained in it to stay valid along with the draw cache. As a bonus, this moves various Mesh_Runtime variables into the subsurf runtime data, reducing memory usage for meshes not using subdivision surfaces. Also fixes T98693, issues with subdivision level >= 8 due to integer overflow. Differential Revision: https://developer.blender.org/D15184
2022-06-14Fix T98866: GPU subdiv crash in edit mode with loose geometryKévin Dietrich
The BMesh case was missing when extracting the loose edges flags used for display, so the code was crashing on unitialized `MEdge` pointer.
2022-06-13Cleanup: fix various typosBrecht Van Lommel
Found via codespell -q 3 -S ./intern,./extern -L ans,ba,bording,datas,eiter,fiter,hist,inout,lod,ot,parm,parms,pixelx,pres,te Contributed by luzpaz. Differential Revision: https://developer.blender.org/D15155
2022-06-13Fix T98735: GPU subdiv displays normals for all elementsKévin Dietrich
The normals flags were not setup properly which made normals for all elements (vertices, faces) to be drawn when using the normals overlay. Also remove usage of uints for the flag in the APIs.
2022-06-10Cleanup: Clang tidyHans Goudey
2022-06-09Cleanup: use C-style comments, add missing doxy sectionCampbell Barton
2022-06-09Cleanup: spelling in comments & variablesCampbell Barton
2022-06-09Cleanup: formatCampbell Barton
2022-06-09Cleanup: quiet warningsCampbell Barton
2022-06-08Sculpt: PBVH Draw Support for EEVEEJoseph Eagar
This patch adds support for PBVH drawing in EEVEE. Notes: # PBVH_FACES only. For Multires we'll need an API to get/cache attributes. DynTopo support will be merged in later with sculpt-dev's DynTopo implementation. # Supports vertex color and UV attributes only; other types can be added fairly easily though. # Workbench only sends the active vertex color and UV layers to the GPU. # Added a new draw engine API method, DRW_cdlayer_attr_aliases_add. Please review. # The vertex format object is now stored in the pbvh. Reviewed By: Clément Foucault & Brecht Van Lommel & Jeroen Bakker Differential Revision: https://developer.blender.org/D13897 Ref D13897
2022-06-08Curves: use radius of middle point to determine curve shapeJacques Lucke
See {rBb69aad60bda23a53482b2c2ae98715c23a715bc8} for more details.
2022-06-08Cleanup: Remove unnecessary namespace specificationHans Goudey
2022-06-07Cleanup: Use const pointers in attribute APIHans Goudey
2022-06-07Merge branch 'blender-v3.2-release'Clément Foucault
# Conflicts: # source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl
2022-06-07Fix EEVEE: Shader error when using volume temperature or color attributesClément Foucault
This bug was unreported. This was triggering a linking error caused by the vertex shader not having a local version of `attr_load_temperature_post` and `attr_load_color_post`.
2022-06-07Fix T98091: EEVEE: Volume: Crash caused by non-present gridClément Foucault
This was caused by the `copy_m4_m4` trying to copy the `object_to_texture` from `drw_grid` which was `nullptr`. Fixing this also exposed that rendering such volumes (without any valid grid attributes) is not supported and we should follow what Cycles does. Differential Revision: https://developer.blender.org/D15147
2022-06-07Curves: use root/tip radius of the first curve in the viewportJacques Lucke
Viewport drawing does not support a per point radius attribute yet. Instead, it has a fixed set of radius parameters that are used for all curves in the same object. Now those radii are retrieved from the radius attribute of the points on the first curve. This allows users to control the radius of curves to some degree until proper per-point radius is supported.
2022-06-07Cleanup: spelling in comments, minor formatting tweaksCampbell Barton
2022-06-07Cleanup: Correct commentsHans Goudey
2022-06-07Cleanup: Fix missing-braces warning in draw managerSergey Sharybin
Good side effect of the change is that it makes it so that the size of an array is more likely to be calculated at a compile time. More ideally we'll be using bli::Array instead of the bare array, but that is outside of the scope of this change.
2022-06-07Cleanup: spelling in comments, additional white spaceCampbell Barton
2022-06-06Fix Windows compiler errorAntonio Vazquez
This error was introduced in 176d7bcc2eb47b9820861037f90a7fb26de8c9a0 Fix provided by @deadpin
2022-06-05Cleanup: Comments and formatting in mesh extract headersHans Goudey
Also remove accidentally committed WIP commented code.
2022-06-05Cleanup: Move remaining mesh draw code to C++Hans Goudey
After this commit, all mesh data extraction and drawing code is in C++, including headers, making it possible to use improved types for future performance improvements and simplifications. The only non-trivial changes are in `draw_cache_impl_mesh.cc`, where use of certain features and macros in C necessitated larger changes. Differential Revision: https://developer.blender.org/D15088
2022-06-04Cleanup: Use const for retrieved custom data layersHans Goudey
2022-06-03Merge remote-tracking branch 'origin/blender-v3.2-release'Kévin Dietrich
2022-06-03Fix T98571: corrupted face selection drawing with GPU subdivisionKévin Dietrich
Simple typo in rB55e3930b253e.
2022-06-03Cleanup: clang-formatRichard Antalik
2022-06-03Constraints: introduce wrapper functions to access target lists.Alexander Gavrilov
Instead of directly accessing constraint-specific callbacks in code all over blender, introduce two wrappers to retrieve and free the target list. This incidentally revealed a place within the Collada exporter in BCAnimationSampler.cpp that didn't clean up after retrieving the targets, resulting in a small memory leak. Fixing this should be the only functional change in this commit. This was split off from D9732. Differential Revision: https://developer.blender.org/D13844
2022-06-03Cleanup: DRW: Overlay: Make simple fragment shaders localClément Foucault
This avoids reusing gpu shader files that have different requirements.
2022-06-02Cleanup: DRW: Added basic_ prefix to all *.glsl files in basic/shadersClément Foucault
This is needed to avoid potential naming collision with other engines.
2022-06-02Cleanup: DRW: Added overlay_ prefix to all *.glsl files in overlay/shadersClément Foucault
This is needed to avoid potential naming collision with other engines
2022-06-02EEVEE-Next: Fix compilation of hair domain materialsClément Foucault
Also fix formating of `curves_attribute_element_id` which was copy pasted. # Conflicts: # source/blender/draw/engines/eevee_next/shaders/eevee_attributes_lib.glsl
2022-06-02Cleanup: DRW: Added overlay_ prefix to all *_info.hh files in overlayClément Foucault
2022-06-01Cleanup: '*' prefix C-comment blocksCampbell Barton
2022-06-01Cleanup: spelling in comments, use doxy sectionsCampbell Barton
2022-06-01Cleanup: use 'e' prefix for enum typesCampbell Barton
- CustomDataType -> eCustomDataType - CustomDataMask -> eCustomDataMask - AttributeDomain -> eAttrDomain - NamedAttributeUsage -> eNamedAttrUsage
2022-06-01Merge remote-tracking branch 'origin/blender-v3.2-release'Kévin Dietrich
2022-06-01Fix T98526: broken corner attributes with GPU subdivisionKévin Dietrich
Although reusing the same patch coordinate for all corner pointing the same vertex works for interpolation vertices, it does work for interpolation face varying attributes. So we need to keep the original patch coordinates around for face varying interpolation. This was caused by the previous fix (a5dcae0c641604c033f852e41841f58460c40069).
2022-06-01Merge branch 'blender-v3.2-release'Joseph Eagar
2022-06-01GPU subdiv: Fix edit mode vertex color not being uploaded properlyJoseph Eagar
Also cleaned up the code a tad bit. Note that I found two more bugs: * GPU subdivision attribute interpolation is producing visual artifacts. * "Show on cage" mode for subdivision surface just shows black colors.
2022-05-31Merge remote-tracking branch 'origin/blender-v3.2-release'Kévin Dietrich
2022-05-31Fix T97877: broken shadows with GPU subdivisionKévin Dietrich
Issues stems from the mesh not being watertight. This was caused by floating point precision issues when evaluating patch coordinates at patch boundaries (loops/corners in different patches pointing to the same vertex). To fix this we ensure that all loops pointing to the same vertex share the same patch coordinate. This keeps code simple, and does not require to track precision issues in floating point math all over the place.
2022-05-31Cleanup: tabs to spaces for CMake files & sort file-listsCampbell Barton
2022-05-30Cleanup: Clang tidyHans Goudey
Mostly duplicate includes, also use nullptr, and using default member initializers.
2022-05-30Cleanup: make formatDalai Felinto
2022-05-30Cleanup: fix various typosBrecht Van Lommel
Contributed by luzpaz Differential Revision: https://developer.blender.org/D15057
2022-05-27Merge remote-tracking branch 'origin/blender-v3.2-release'Kévin Dietrich
2022-05-26Fix T98385: Color attributes not working with GPU subdivisionKévin Dietrich
Contrary to coarse extraction, GPU extraction uses the same buffer for the coarse data, only the final GPU buffer needs to be offset.
2022-05-26Fix T98392: GPU subdivision crash with knife toolsKévin Dietrich
The face dots normals may not be always requested, thus leading to a crash by null pointer dereference.