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
2020-09-25Fix T81126: Assert going to Texture Paint workspace without a UVMapJeroen Bakker
Assert happened as it could not create uv batches without an UVMap. Solution is to only request those batches when the UVMaps are available.
2020-09-25Fix T81157: Eevee MotionBlur steps setting make ao pass darkerJeroen Bakker
Issue introduced by 68651534c263 due to an incorrect merge/rebase It was resetting the AO buffer every time the time step happened.
2020-09-22Fix T81026: Image Editor: Alpha (like Bloom) not showing properlyJeroen Bakker
With the new image editor drawing there were was some mutual exclusive functionality. When rendering the alpha was shown correctly or the pure emissive colors were shown correctly, but never both. The cause of this is that the image_gpu did not used the correct alpha mode when generating gpu textures for non-images (render results, compositors viewer) The implementation always checked the alpha_mode. Alpha mode is an attribute for images, but aren't set for non images. This patch adds a more detailed check to ensure that the gpu texture is premultiplied. The issue has been tested using several bug report files and production files. Reviewed By: Brecht van Lommel Differential Revision: https://developer.blender.org/D8978
2020-09-22Fix T81013: Weight Paint Overlay XRay fails with clippingPhilipp Oeser
When introduced in rB1ca1744c29e2, the Weight Paint Overlay XRay's corresponding depth pass was not considering clipping planes. Maniphest Tasks: T81013 Differential Revision: https://developer.blender.org/D8970
2020-09-21Cleanup: correct naming IMAGE_Z_DEPTHJeroen Bakker
IMAGE_DEPTH is used for bit depth.
2020-09-19Cleanup: consistent TODO/FIXME formatting for namesCampbell Barton
Following the most widely used convention for including todo's in the code, that is: `TODO(name):`, `FIXME(name)` ... etc.
2020-09-19Cleanup: spellingCampbell Barton
2020-09-19EEVEE: Add support for GGX Multi-scatterClément Foucault
Based on http://jcgt.org/published/0008/01/03/ This is a simple trick that does *not* have a huge performance impact but does work pretty well. It just modifies the Fresnel term to account for the multibounce energy loss (coloration). However this makes the shader variations count double. To avoid this we use a uniform and pass the multiscatter use flag inside the sign of f90. This is a bit hacky but avoids many code duplication. This uses the simplification proposed by McAuley in A Journey Through Implementing Multiscattering BRDFs and Area Lights This does not handle area light differently than the IBL case but that's already an issue in current implementation. This is related to T68460. Reviewed By: brecht Differential Revision: https://developer.blender.org/D8912
2020-09-18Sculpt: Render Mask and Face Sets with modifiers activePablo Dobarro
This removes the limitation of the sculpt overlays not being visible with modifiers active. Reviewed By: fclem Maniphest Tasks: T68900 Differential Revision: https://developer.blender.org/D8673
2020-09-18Overlay: Fade Inactive GeometryPablo Dobarro
This implements a new overlay that blends the bakground color over the objects that are not in the same mode as the active object, making them fade with the background. This is especially needed for sculpt mode as there is no other overlay or indication in the viewport to display which object is active. This is intended to be used with D7510 in order to have a faster workflow when sculpting models with multiple objects. Reviewed By: fclem Differential Revision: https://developer.blender.org/D8679
2020-09-18LookDev: Lock HDRI rotation to ViewPablo Dobarro
This adds an option for the HDRI rotation to follow the view rotation. When this option is enabled, this allows EEVEE materials to be used as matcaps for sculpting and painting. This has an extra performance cost when orbiting around the model as the lookdev cache needs to be recalculated, but in my test it is barely noticeable. Reviewed By: fclem Differential Revision: https://developer.blender.org/D8566
2020-09-18GPencil: Implement Holdout materialsAntonio Vazquez
This new feature allows to use the strokes as an eraser of any stroke below. This is very handy to open holes in filled areas. After running some tests, we have decided to keep the additive effect of the holdout color. To get clean holdout areas, just move the color to black to remove any additive effect. To have additive effect can be used in situations like tint slightly a transparent window with blue to simulate the glass. See T79878 for more details Differential Revision: https://developer.blender.org/D8932
2020-09-18Fix T80927: UV Edges Not Visible When Repeat Image ActiveJeroen Bakker
When repeat image was active the image was drawn in the foreground making most uv overlays not visible. This change creates a shared defined value for repeating and not repeating images.
2020-09-17Cleanup: warning (missing-braces)Campbell Barton
2020-09-16Fix T79315 Normals Overlays broken with hidden geometryClément Foucault
Was caused by non-initialized variables before a return inside the vertex shader.
2020-09-16Cleanup: silence [-Wmissing-braces] warning.Ankit Meel
Introduced in {rBd6525e8d133b787655bdb2c2fcef218591a457c3} Compiler: Apple LLVM version 10.0.1 (clang-1001.0.46.4) Target: x86_64-apple-darwin18.7.0 Thread model: posix ``` source/blender/draw/engines/image/image_shader.c:46:13: warning: suggest braces around initialization of subobject [-Wmissing-braces] } e_data = {0}; /* Engine data */ ^ {} 1 warning generated. ``` Reviewed By: jbakker Differential Revision: https://developer.blender.org/D8873
2020-09-16Fix T78653 Workbench: Broken Depth of Field in Viewport (Mac OSX)Clément Foucault
The output layout was wrong and it's a mistery why it works on most implementations since it's clearly a wrong usage. Thanks @sebbas for helping narrowing down the issue.
2020-09-16Fix T80800: Active UVMap DrawingJeroen Bakker
Regression introduced by D8234. In stead of using the active uv map, the render uv map was drawn. This change will use the active uv map.
2020-09-16Fix T80825: UV Editor UV GridJeroen Bakker
Regression introduced by D8234.
2020-09-16Fix T75061 Grease Pencil: MacOS: broken Gradient and TextureClément Foucault
There is a driver bug that makes all the end of the structure unreadable. Workaround this by just declaring a vec4 an unpacking manually.
2020-09-15Liquid Simulation Display Options (GSoC 2020)Sriharsha Kotcharlakot
All the changes made in the branch `soc-2020-fluid-tools` are included in this patch. **Major changes:** === Viewport Display === - //Raw voxel display// or //closest (nearest-neighbor)// interpolation for displaying the underlying voxel data of the simulation grids more clearly. - An option to display //gridlines// when the slicing method is //single//. ==== Grid Display ==== - Visualization for flags, pressure and level-set representation grids with a fixed color coding based on Manta GUI. ==== Vector Display ==== - //**M**arker **A**nd **C**ell// grid visualization options for vector grids like velocity or external forces. - Made vector display options available for external forces. ==== Coloring options for //gridlines// ==== - Range highlighting and cell filtering options for displaying the simulation grid data more precisely. - Color gridlines with flags. - Also, made slicing and interpolation options available for Volume Object. Reviewed By: JacquesLucke, sebbas Differential Revision: https://developer.blender.org/D8705
2020-09-15Fix T80787: Fix White edges when rendering transparent smokeJeroen Bakker
The UV/Image editor was doing interpolation including over the alpha value what makes will render incorrectly when interpolating between pure emissive colors and pre multiplied colors. This change disabled the interpolation.
2020-09-15Revert "Image Editor: Make Rendering of Pure Emissive Colors Optional"Jeroen Bakker
This reverts commit f492c8d488b7eb2166ca894e10a8128a1678a885.
2020-09-15Fix T80746: Image blur in compositor creates halo from alphaJeroen Bakker
When applying alpha, an alpha of 0.0 was always ignored, creating the Halo
2020-09-15Image Editor: Make Rendering of Pure Emissive Colors OptionalJeroen Bakker
There are some areas that don't handle pure emissive colors well. For example erasing alpha using 2d or 3d painting. Or blurring an image in the compositor. This patch makes the rendering of pure emissive colors optional. In the side panel of the Image editor it can still be enabled when needed. There currently isn't a better place to store it as it is related on how the image (or a layer of the image) is created. A future design needs to make sure that the full workflow is supported.
2020-09-15Fix Unreported: Repeat Image RegressionJeroen Bakker
Regression introduced by c6210f9bacdb. The vertex shader still used the old value for the SIMA_DRAW_FLAG_DO_REPEAT.
2020-09-15Workbench: Depth Of Field: Fix regression in look and avoid implicit castClément Foucault
This is a fixup to rB7710de26d0d768734977769af4a278b262f4da51
2020-09-15Workbench: Depth Of Field: Fix undefined behavior with using texelFetchClément Foucault
On MacOS + Intel Iris Graphics 6100 (may affect other config too), the texelFetch operation bypass the base mip setting of the texture object. Using textureLod with lod = 0.0 ensure the lowest (after clamping) mip will always be selected. Also disable the texture filtering for this sampler to avoid unecessary fetches. This should fix T78653 Blender 2.83 broken Depth of Field in Viewport
2020-09-14Fix T80770: UV Image Editor: Display Texture Paint UVs Not WorkingJeroen Bakker
When developing the image draw engine I wasn't aware of this option. But now it is back.
2020-09-14DrawManager: Resolve Assert in Image EngineJeroen Bakker
Tiled texture uses different texture structure than normal textures. Normally we add dummy textures and use them, but I found it cleaner to have 2 shaders and use the correct shader.
2020-09-14Fix T80603 Workbench: Inverted alpha when renderingClément Foucault
This was caused by a left over DRWPass->state modification that made the subsequent samples redraw without Blending enabled. This led to incorrect blending. The fix is to use the new API for pass instancing.
2020-09-13Fix T80023 Invisible objects or glitches with object 'in front' + 'X-ray'Clément Foucault
Rendering only to the depth buffer seems to need a valid fragment shader with a color output on some platform.
2020-09-13CleanUp: Code foldingJeroen Bakker
Incorrect code folding in recent commit
2020-09-13Cleanup: spelling, update function name in commentsCampbell Barton
2020-09-12GPU: Add Image Load Store extension supportClément Foucault
This wraps the functionality used to speedup EEVEE volumetrics. This touches the rendering code of EEVEE as it should fix a mis-usage of the GL barrier. The barrier changed type and location, removing an unused barrier.
2020-09-11Cleanup: make formatJacques Lucke
2020-09-11Image Editor: Smooth Wire User PreferencesJeroen Bakker
The old image editor has an option to enable the smooth wire drawing. This option was stored per editor and disabled by default. This patch connects the smooth wires in the UV/Image editor to `User Prefereces -> Viewport -> Quality -> Smooth Wire [] Overlay`. The old option is left in place and will be removed when the old image editor drawing code will be removed before BCon 3.
2020-09-11Use DrawManager for Image/UV EditorJeroen Bakker
This project moves the current UV/Image editor drawing to the draw manager. Why would we do this: **Performance**: Current implementation would draw each texel per time. Multiple texels could be drawn per pixel what would overwrite the previous result. You can notice this when working with large textures. Repeat image drawing made this visible by drawing for a small period of time and stop drawing the rest. Now the rendering is fast and all repeated images are drawn. **Alpha drawing**: Current implementation would draw directly in display space. Giving incorrect results when displaying alpha transparent images. This addresses {T52680}, {T74709}, {T79518} The image editor now can show emission only colors. See {D8234} for examples. **Current Limitations** Using images that are larger than supported by your GPU are resized (eg larger than 16000x16000 are resized to 8k). This leaves some blurring artifacts. It is a low priority to add support back of displaying individual pixels of huge images. There is a design task {T80113} with more detail. **Implementation overview** Introduced an Image Engine in the draw module. this engine is responsible for drawing the texture in the main area of the UV/Image editor. The overlay engine has a edit_uv overlay which is responsible to draw the UV's, shadows and overlays specifically for the UV Image editor. The background + checker pattern is drawn by the overlay_background. The patch will allow us to share overlays between the 3d viewport and UV/Image editor more easily. In most cases we just need to switch the `pos` with the `u` attribute in the vertex shader. The project can be activated in the user preferences as experimental features. In a later commit this will be reversed. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8234
2020-09-10Fix T79737: ERROR ACCESS VIOLATION when switching to eevee rendered viewAristotelis Dossas
This prevents Blender from crashing when switching to rendered view and the grid_data is NULL in the lightcache (due to possible corruption), by switching to the fallback lightcache. The fix extends the solution for possible corruption in the cube_data as well. Fix T79737 Reviewed By: fclem Differential Revision: https://developer.blender.org/D8835
2020-09-10Cleanup: spellingCampbell Barton
2020-09-08Cleanup: DRW: Replace 0 by NULL in GPU_context_create callsClément Foucault
This was left from a previous refactor.
2020-09-08GPUFramebuffer: Make GPU_framebuffer_read_depth more flexibleClément Foucault
This is to make use of it in selection code.
2020-09-07GPU: Rename gpu_extensions to gpu_capabilitiesClément Foucault
This makes more sense as this module has more to it than just GL extensions.
2020-09-07EEVEE: Try to allocate the lightcache and use fallback if failureClément Foucault
This is to remove an explicit opengl dependence to GPU_extension.
2020-09-07EEVEE: Shaders testsJeroen Bakker
This will add the remaining static shaders to the eevee shader test suite. - Downsampling - GGX LUT generation - Mist - Motion Blur - Ambient Occlusion - Render Passes - Screen Raytracing - Shadows - Subsurface - Volumes Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8779
2020-09-07Cleanup: spellingCampbell Barton
Also correct wrapped lines of example code in threads.cc.
2020-09-06GPUVertBuf: Make GPUVertBuf private to the GPU moduleClément Foucault
This is just a cleanup to isolate the internals of the vertbuf. This adds some getters to avoid refactor of existing code.
2020-09-05Cleanup: spellingCampbell Barton
2020-09-05GPUTexture: Change texture creation APIClément Foucault
This is to modernize the API: - Add meaningful name to all textures (except DRW textures). - Remove unused err_out argument: only used for offscreen python. - Add mipmap count to creation functions for future changes. - Clarify the data usage in creation functions. This is a cleanup commit, there is no functional change. # Conflicts: # source/blender/gpu/GPU_texture.h
2020-09-05Cleanup: GPUTexture: Remove use of GPU_texture_create_nDClément Foucault
Use creation + update function instead.