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-05-23Merge branch 'blender-v3.2-release'Clément Foucault
2022-05-23DRW: Fix signed/unsigned mismatches in shader codeJohannes J
Fix the following error messages on Blender startup since commit 308a12ac647d6f9b4ef2b6c403903e0aeb65a571. This commit fixes T98194. Reviewed By: fclem Differential Revision: https://developer.blender.org/D15007
2022-05-23Merge branch 'blender-v3.2-release'Clément Foucault
2022-05-23Fix T98128: EEVEE: Regression: Inverted surface normal on MacOS Intel GPUClément Foucault
This seems to be caused by the `!` used in conjunction with a macro. Using the macro directly as condition does not exhibit this issue.
2022-05-19Cleanup: spelling in comments & move doc-strings to headersCampbell Barton
2022-05-19Cleanup: format, reduce line length & strip trailing spaceCampbell Barton
2022-05-19EEVEE-Next: Fix error on curve prepass caused by velocity commitClément Foucault
2022-05-19EEVEE-Next: Fix display of compiling shader countdownClément Foucault
Also fix naming convention on public variable.
2022-05-19EEVEE-Next: Display error instead of crashing on unsupported hardwareClément Foucault
This message will remain in effect until we bump up the minimum hardware requirement.
2022-05-19EEVEE-Next: Fix memory leakClément Foucault
2022-05-19EEVEE-Next: Add Velocity moduleClément Foucault
This module allow tracking of object and geometry data accross time. This commit adds no user visible changes. It work in both viewport (*) and render mode, gives correct motion for any camera projection type and is compatible with displacement (**). It is a huge improvement upon the old EEVEE velocity which was only used for motion blur and only available in render. It is also an improvement for speed as the animated objects do not need to be rendered a 3rd time. The code is also much cleaner: no GPUVertBuf duplication, no GPUBatch amendment, no special cases for different geometry types, no DRWShadingGroup per object, no double buffering of velocity. The module is still work in progress as the final output may still be flawed. (*): Viewport support is already working but there might be some cases where mapping will fail. For instance if topology changes but not vertex count. (**): Displacement does not contribute to motion vectors. Surfaces using displacement will have the same motion vectors as if they were not displaced.
2022-05-17EEVEE-Next: Fix missing break in switch statementClément Foucault
2022-05-17EEVEE-Next: Add camera moduleClément Foucault
2022-05-15Cleanup: Clang tidyHans Goudey
2022-05-13Cleanup: spelling in comments, capitalize tagsCampbell Barton
Also add missing task-ID reference & remove colon after \note as it doesn't render properly in doxygen.
2022-05-12Merge branch 'blender-v3.2-release'Bastien Montagne
2022-05-12Fix T98071: Overlay: UV selection inverted bewteen vertex and edge selectClément Foucault
Self describing title. Also remove the layout inside the geometry shader as they are now generated by the backend.
2022-05-12Fix T98026 EEVEE: Refression Crash when rendering Cryptomatte passesClément Foucault
This was because the main `surface_vert.glsl` was changed to accomodate the needs of the `ShaderCreateInfo` but was still used by the cryptomatte shader. The fix is to include the same libraries as the material shaders and bypass `attrib_load()`.
2022-05-12Merge branch 'blender-v3.2-release'Jacques Lucke
2022-05-12Fix T97380 EEVEE: Weird motion-blur on curvesClément Foucault
This was caused by the `mb_data->obmat[]` being wrong because they are now shared between the particle system and the object. But Hair need the dupli parent matrix instead of the object matrix. Disabling `Show Emitter` option fixes the bug. To avoid this problem, request a different `EEVEE_ObjectMotionData` for particle systems using a different key pointer in the hash. This is a bit dirty but there is less code polution using this workaround. Differential Revision: https://developer.blender.org/D14911
2022-05-11Cleanup: use '_num' / '_count' suffix instead of '_ct'Campbell Barton
Use num & count (for counters), in drawing code, see: T85728.
2022-05-10Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-10Fix T97545 GPU: Crash caused by uncommented quote char in source stringClément Foucault
Some drivers completely forbid quote characters even in unused preprocessor directives. This patch adds a debug build check for all `.glsl` files that need to be manually handled. For shared headers with `#include` directives, we need to do runtime patching of the source to remove the quote. Also fix an instance of the quotes check failing in `eevee_next`.
2022-05-10Merge branch 'blender-v3.2-release'Clément Foucault
2022-05-10EEVEE: Fix missing CLOSURE_DEFAULTClément Foucault
2022-05-10Fix T97985 EEVEE: Shader mixing not working correctly when reusing shader nodesClément Foucault
This was caused by the `Closure` members being added to the final contribution more than once. The workaround is to clear the members once a closure has been added to the final contribution. I used `inout` on `Closure` inputs so that the render engine implementation of mix and add closure nodes can do its own thing. The nodegraph handling of inout was changed for this to work.
2022-05-09Fix T97983 EEVEE: Tangent Normal of Curves info behaves differently in EeveeClément Foucault
Curve tangent was correctly mistaken with curve normal. This patch fixes the name of the output in the glsl function and make curve attributes more explicit (with `curve_` prefix). This also improve the normal computation by making it per pixel to match cycles. Also ports the changes to eevee-next.
2022-05-09Merge branch 'blender-v3.2-release'Jeroen Bakker
2022-05-07EEVEE: Fix missing function implementation for volumetric materialsClément Foucault
This was leading to linking errors. Fixes T97779 Regression: World volume noise stopped working
2022-05-07Fix T97796 EEVEE: Regression: Alpha clipped materials rendered as alpha hashedClément Foucault
This was because the alpha clip thresholding was previously done in the material nodes codegen. Now it is the responsibility of the engine to implement it. This adds a loose uniform that is set by EEVEE itself to control the clip behavior.
2022-05-07Fix T97881 EEVEE: First Specular and SSS closure not contributing on alpha ↵Clément Foucault
blended material This was because the evaluation was still being deferred just like for the opaque case.
2022-05-06Merge branch 'blender-v3.2-release'Sergey Sharybin
2022-05-06DrawManager: Make instance data persistent.Jeroen Bakker
When resizing a viewport all engine instance data was cleared. This wasn't the intended design and lead to performance regressions in the image engine. This patch makes sure that the instance data isn't cleared when the viewport size changes. When using instance data, draw engines are responsible to update the textures accordingly. This could also reduce flickering/stalling when resizing the viewport in eevee-next. Fixes T95428. Reviewed By: fclem Maniphest Tasks: T95428 Differential Revision: https://developer.blender.org/D14874
2022-05-06Cleanup: spelling in comments, use doxygen commentsCampbell Barton
2022-05-05Merge branch 'blender-v3.2-release'Clément Foucault
2022-05-05Cleanup: EEVEE: Fix clang-tidy warnings and unused var warningClément Foucault
2022-05-05Cleanup: spelling in commentsCampbell Barton
2022-05-04Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-04License headers: add missing license headersCampbell Barton
Add missing license headers based on files in the same directory.
2022-05-03Merge remote-tracking branch 'origin/blender-v3.2-release'Kévin Dietrich
2022-05-03Fix T93179: geonodes UVs and Vertex colors do not work in EEVEEKévin Dietrich
Overwriting UV map or vertex color data in Geometry nodes will move the layers to another CustomData channel, and as such, will make attribute lookup fail from the UVMap and Vertex Color nodes in EEVEE as the CustomDataType will also be modified (i.e. no longer `CD_MTFACE` or `CD_MCOL`). As discussed in T93179, the solution is to use `CD_PROP_AUTO_FROM_NAME` so that the render engine is able to find the attributes. This also makes EEVEE emulate Cycles behaviour in this regard. `attr_load_uv` and `attr_load_color` are also removed in favor of the generic attribute API in the various GLSL shaders. Although `CD_PROP_AUTO_FROM_NAME` is now used even for UV maps, the active UV map is still used in case the attribute name is empty, to preserve the old behavior. Differential Revision: https://developer.blender.org/D13730
2022-05-03Fix T97543: Changing multipass images doesn't update the image.Jeroen Bakker
Code was partial migrated from the previous image engine. Missing multilayered images.
2022-05-03Fix T97543: Changing multipass images doesn't update the image.Jeroen Bakker
Code was partial migrated from the previous image engine. Missing multilayered images.
2022-05-03Cleanup: spelling in commentsCampbell Barton
2022-05-02EEVEE: Fix compiler warningClément Foucault
2022-05-02EEVEE: Fix compilation on MSVCClément Foucault
2022-05-02EEVEE: Rewrite: Implement nodetree support with every geometry typesClément Foucault
This commit introduce back support for all geometry types and all nodetree support. Only the forward shading pipeline is implemented for now. Vertex Displacement is automatically enabled for now. Lighting & Shading is placeholder. Related Task: T93220 # Conflicts: # source/blender/draw/engines/eevee_next/eevee_engine.cc # source/blender/gpu/CMakeLists.txt
2022-05-01GPUShaderCreateInfo: Add validation for overlapping vertex attributeClément Foucault
Those are usually not supported but some driver silently fix them and most just silently fail (rendering error).
2022-05-01External Engine: Reuse depth only shader from Basic engineClément Foucault
This removes the usage of `GPU_shader_create_from_info_name()`.
2022-05-01Basic Engine: Port depth shader (object selection) to shaderCreateInfoClément Foucault
This should have no functional changes.