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-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-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-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-07Cleanup: spelling in comments, additional white spaceCampbell Barton
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-05-30Cleanup: fix various typosBrecht Van Lommel
Contributed by luzpaz Differential Revision: https://developer.blender.org/D15057
2022-05-25Merge branch 'blender-v3.2-release'Bastien Montagne
2022-05-25Fix T98365: Overlay: Blender 3.2.0 Beta crashes on startupClément Foucault
This was caused by a wrong mass rename on a piece of code used only on older hardware.
2022-05-24Cleanup: make formatJacques Lucke
2022-05-24EEVEE: support Curves attributes renderingKévin Dietrich
This adds support to render Curves attributes in EEVEE. Each attribute is stored in a texture derived from a VBO. As the shading group needs the textures to be valid upon creation, the attributes are created and setup during its very creation, instead of doing it lazily via create_requested which we cannot rely on anyway as contrary to the mesh batch, we do cannot really tell if attributes need to be updated or else via some `DRW_batch_requested`. Since point attributes need refinement, and since attributes are all cast to vec4/float4 to account for differences in type conversions between Blender and OpenGL, the refinement shader for points is used as is. The point attributes are stored for each subdivision level in CurvesEvalFinalCache. Each subdivision level also keeps track of the attributes already in use so they are properly updated when needed. Some basic garbage collection was added similar to what is done for meshes: if the attributes used over time have been different from the currently used attributes for too long, then the buffers are freed, ensuring that stale attributesare removed. This adds `CurvesInfos` to the shader creation info, which stores the scope in which the attributes are defined. Scopes are stored as booleans, in an array indexed by attribute loading order which is also the order in which the attributes were added to the material. A mapping is necessary between the indices used for the scoping, and the ones used in the Curves cache, as this may contain stale attributes which have not been garbage collected yet. Common utilities with the mesh code for handling requested attributes were moved to a separate file. Differential Revision: https://developer.blender.org/D14916
2022-05-23Cleanup: GPU: Remove `gpu_shader_common_obinfos_lib.glsl`Clément Foucault
This has been replaced by `draw_object_infos`.
2022-05-23Fix T98251: EEVEE: Regression: Wrong normalmaps on scaled objectsClément Foucault
This was caused by a missing `normalize`.
2022-05-23Cleanup: GPU: Remove `gpu_shader_common_obinfos_lib.glsl`Clément Foucault
This has been replaced by `draw_object_infos`.
2022-05-23Fix T98251: EEVEE: Regression: Wrong normalmaps on scaled objectsClément Foucault
This was caused by a missing `normalize`.
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