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
2018-09-18GPUShader: Manually validate sampler countClément Foucault
This happens on NVidia GPUs, using more textures than the maximum allowed by the gl will NOT trigger a linking issue (maybe because of bindless texture implementation?). So in this case we manually count the number of samplers per shader stage and compare it against the GL limit. We discard the shader if the sampler count is too high. This shows the user something is wrong with the shader.
2018-09-16Fix T56817: Assert because of invalid framebufferClément Foucault
2018-09-15Cleanup: use r_ prefix for return argsCampbell Barton
2018-09-15GPUTexture: Fix problem with glGenerateMipmapClément Foucault
Fix T56789: There was issue with certain driver with glGenerateMipmap and GPU_DEPTH_COMPONENT24. In this case we just create a complete texture with mipmaps manually without downsampling / initializing the data.
2018-09-14GPU module: Initial implementation of the `gpu.shader` submodule.mano-wii
Differential Revision: https://developer.blender.org/D3688
2018-09-14GPUBuffers: Rework support for pbvh grids + fast navigateClément Foucault
Flat shaded grids are now rendered as a long triangle strip with degenerate triangles. Smooth shaded grids are not changed. Also add back fast navigate. The only difference with 2.79 is that fast navigate + flat shading will show slitly "incorrect" smooth face. But that's too much effort to fix for what it is.
2018-09-12GPU: Remove residue of OpenSubdivSergey Sharybin
Was done more like a hack on top of old drawing pipeline. Should be re-implemented to fit new draw manager closer.
2018-09-12Cleanup: use uint/uchar types in GPUCampbell Barton
2018-09-11GPUMaterial: Fix issue with coloramp and constant interpolationClément Foucault
It was not respecting the clamp to edge texture param because we use texelFetch directly in this case.
2018-09-11Followup for previous PBVH commitSergey Sharybin
Didn't realize the index buffer is stored once in a BVH and same pointer is reused. Surprisingly, simple files were fixed with the previous fix. Now disabled the optimization all together, and it was simpler to just completely remove all residue of the code. It is likely to be a different implementation anyway, so no need to try to keep code in a semi-broken state.
2018-09-11FIx/workaround wrong number of primitives in PBVG grid buffersSergey Sharybin
Nodes can have different number of grids, so can not so simply re-use index buffer across nodes. For now allow re-using buffer if number of grids matches. The issue is, number of grids is probably almost never matches, so in order to have this optimization working need more tricks. Maybe we can "instance" index buffers?
2018-09-11Cleanup: remove unused GPU code.Brecht Van Lommel
2018-09-11PBVH: Fix miossing normals for gridsSergey Sharybin
2018-09-11GPU: utility function to unregister presetsCampbell Barton
2018-09-10Eeevee: update to match recent voronoi GLSL features for Cycles.Charlie Jolly
Differential Revision: https://developer.blender.org/D3680
2018-09-10Fix assert when toggling Xray mode after going to Solid and lookedev/eeveeClément Foucault
2018-09-10Cleanup: More variables unused in releaseSergey Sharybin
2018-09-07UI: move toolbar arrow closer to button edgeCampbell Barton
Could overlap icons.
2018-09-06CMake: add missing headersCampbell Barton
2018-09-03Fix T56544: Crash on startup with Radeon + Win 7Clément Foucault
Testing GLEW_ARB_texture_gather is not sufficient in this case. We need to test if GL_ARB_texture_gather is defined in the shader, which is always true on some NVIDIA drivers who does not support it... So trying to make everything work.
2018-09-02Cleanup: comment blocksCampbell Barton
2018-08-30Cleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)Dalai Felinto
2018-08-29Cleanup: add file doxy commentsCampbell Barton
2018-08-24Cleanup: Remove debug printfClément Foucault
2018-08-24Sculpt: Optimize Mask Overlay drawingClément Foucault
* Remove support for diffuse color in the pbvh buffers. * Upload raw data to GPU. * Only draw nodes that have mask data when drawing the overlay. This should fix T56466
2018-08-23UI: Optimize the area border drawingClément Foucault
It is was not really a bottleneck but it was triggering my OCD when 1/3rd of the drawcalls in a normal scene were basically only caused by this.
2018-08-22Object Mode: Add back spot cone displayClément Foucault
2018-08-22Paint Overlay: Fix blending of the brush overlayClément Foucault
2018-08-22GPU: Fix issue with multiple Geometry node.Clément Foucault
2018-08-22DRW: Fix background image displayClément Foucault
This make the workbench draw everything in the background routine just like eevee. This is because the workbench uses floating point buffers too and rendering background to this buffer makes it incorrect without proper color management. This could be improved because in xray the background is not blended but dithered as it's drawn after the main pass.
2018-08-22GPUMaterial: Geometry Node: Add support for parametric outputClément Foucault
This supports meshes and hairs too. Matches cycles output. This adds barycentric coords to the GPUBuiltin enum which will also be used for the wireframe node.
2018-08-17Fix T55722 : Blender 2.8 crashes on startup on old Nvidia cardsClément Foucault
2018-08-17GPUFramebuffer: Fix wrong stencil clearingClément Foucault
2018-08-14GPUShader: Remove some of the unused shadersClément Foucault
keeping GPU_SHADER_SMOKE until other occurences are removed.
2018-08-14Fix gpu building after cleanupDalai Felinto
Broken since: a3c9f4de7041993ace15078e9943dc2e2c7c1fff
2018-08-14Cleanup: remove unused basic shader, we use many specialized shaders now.Brecht Van Lommel
2018-08-14GPUShader: Fix previous "old Nvidia" fix commitClément Foucault
Note to myself, next time, better check the fix before pushing it. GL_ARB_texture_gather is defined if there is support for the extension not only when the extension is enabled. Do this check ourself with GPU_ARB_texture_gather define. Original fix 822de6e9e1b8
2018-08-14Cleanup: GPU codegen: remove most of legacy codeClément Foucault
A lot of code in codegen was used by previous GLSL system. Now most of it is not used due to all the things being written from scratch in 2.8 and we can clean most of it. As a side not this make the system a bit less flexible (no support for cubemaps, preview image, etc...) but can be extended again.
2018-08-14Cleanup: Rename GPU_* functions to make more senseClément Foucault
* Remove GPU_link_changed which is unused. * Remove all GPU link function that are not used anymore. * GPU_uniform_buffer is now GPU_uniform. * GPU_texture_ramp is now GPU_color_band. * GPU_uniform is now GPU_constant.
2018-08-14Fix T55802 shader compile bug with texture gather on old Nvidia cardClément Foucault
The extension GL_ARB_texture_gather is reported to be supported and does not trigger an error when enabled but the textureGater functions are not defined. Workaround is to disable the use of this extension on such systems.
2018-08-10GPUMaterial: Fix color ramp node with constant interpolationClément Foucault
Color ramp with constant interpolation must bypass texture filtering and use nearest neighboor sampling in order to appear correctly sharp. This patch use a GLSL hack to use nearest sampling on thoses particular color band.
2018-08-10GPUMaterial: Group all colorband texture togetherClément Foucault
This lower the use of texture samplers slots and let users use more real textures in their shaders. This patch also make the ramp texture 16 bit floating point. Meaning you can now use value greater than one in your color ramps. With the limit of 128 colorband per shader (a color band being either a color ramp, a wavelength node or a curve node (and maybe wavelength node in the future)). Only drawback with the current implementation is that it does not remove colorband from pruned GPUNodes but it shouldn't really matter in practice. This should fix T56010
2018-08-09Eevee: Principled BSDF: Add support for the sheen parameterClément Foucault
This is a rough (but fast) approximation that still match cycles reference in common case. In practice, it's just adding more of the diffuse light computed for the diffuse contribution.
2018-08-08Eevee: Use "constant folding" for the principle shaderClément Foucault
This is more like a static optimisation when some parameters are set to 1.0 or 0.0. In theses case we use a more optimized version of the node. This also revisit the transmission parameter behaviour to make it closer to cycles.
2018-08-08GPUMaterial: Fix Material appear broken when using sliders to tweak propsClément Foucault
This was likely caused by some sort of race condition where the drawing thread would request the state of the shader before the shader has been compiled.
2018-08-08Eevee: Remove some of the non-necessary uniformsClément Foucault
The remaining ones are from the attributes linear/srgb switches and from nodes that should be pruned before running their _gpu function.
2018-08-03GPUShader: Fix warning in release build.Clément Foucault
2018-08-02GPUShader: Add name for debugging & identifying shaders.Clément Foucault
2018-08-01GPUMaterial: Fix assert when shader failed to compile.Clément Foucault
2018-08-01GPUMaterial: Make Mapping node use UBO storageClément Foucault
This means tweaking parameter is now interactive and does not need to recompile the shaders.