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-08-30GPUFramebuffer: Make GPUFrameBuffer an opaque typeClément Foucault
This is in preparation of the Framebuffer GL backend. This is a just changing types and moving some code. No logic is changed... almost... it just removes the context attach. i.e: `gpu_context_add/remove_framebuffer()` This is not needed for now and was even disabled in release. This is part of T68990.
2020-08-30GPUState: Fix missing writemask encapsulationClément Foucault
This was the last remaining.
2020-08-28GPU: Fix Segmentation Fault Freeing Failed ShaderJeroen Bakker
The CPP Shader class does not initialize the interface attribute. What will crash when deleting the shader. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8740
2020-08-28Revert "GPU: Fix Segmentation Fault Freeing Failed Shader"Jeroen Bakker
This reverts commit c28432680971f54ebe95cc953606a3a4d3bc5c7c.
2020-08-28Fix T80160: Workbench shadows are brokenJeroen Bakker
In recent refactoring {a9f2ebb21508} an issue was introduced that the opengl rasterizer would be disabled when only writing to a stencil buffer. This fix adds stencil writing to the write mask and set it. This makes the write map not evaluate to GPU_WRITE_NONE and the rasterizer will be enabled in `GLStateManager::set_write_mask`. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8743
2020-08-28GPU: Fix Segmentation Fault Freeing Failed ShaderJeroen Bakker
The CPP Shader class does not initialize the interface attribute. What will crash when deleting the shader. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D8740
2020-08-26Cleanup: spellingCampbell Barton
2020-08-25Fix T79494 Refrence Image reflects object after source got deletedClément Foucault
Silly typo was causing the error texture to not be bound.
2020-08-25GPUState: Move state limits getter to the area they belongClément Foucault
This fix a GL_INVALID_VALUE error on startup due to 0.0f max line width. Also moves the max anisotropy filter to the sampler creation. This reduces code fragmentation.
2020-08-25Fix T79811 MacOS: Edit Mode - vertex/edge/face selection is missingClément Foucault
The VAO reconfiguration from the offset workaround was not working.
2020-08-25GPU: Fix compilation issue caused by rBb43f4fda19b9Clément Foucault
2020-08-25GL: Add error checking functionClément Foucault
This is to ease the debugging process on Apple GL implementation.
2020-08-25GPUSelect: Avoid assert caused by clearing without a depth maskClément Foucault
This should not cause any problem since the depth test is required in order to draw to the depth buffer and this is not altered by this change. To be on the safe side, we still restor the mask after altering it.
2020-08-24T79811 MacOS: Edit Mode - vertex/edge/face selection is missingClément Foucault
This is quite embarassing... it was returning the base instance instead of the correct vao. No wonder that it was causing crash and at most drawing issues.
2020-08-24Fix T79896 Awful performance with Dyntopo onClément Foucault
Regression caused by rB9443da6166f5. Forgot to clear the flag.
2020-08-24GPUState: Fix scissor state being overwritten when changing scissor boundsClément Foucault
Fix T79899 viewport artifacts when sculpting
2020-08-23Fix T80034 Crash using material panel on 2.91.0 alphaClément Foucault
This was caused by a NULL name.
2020-08-23Cleanup: GPU: Use explicit clear value in GPU_clear* commandsClément Foucault
This replace `GPU_clear()` by `GPU_clear_color()` and `GPU_clear_depth()`. Since we always set the clear value before clearing, it is unecessary to track the clear color state. Moreover, it makes it clearer what we clear the framebuffer to.
2020-08-23GPUFramebuffer: Use GPUState to temporary change write mask in clear fnClément Foucault
This avoid breaking sync of the state object. Also avoid more hazard.
2020-08-23GPUState: Expose Stencil mask and testClément Foucault
This is to be used by framebuffer clearing.
2020-08-22Fix T79971 Regression: Transform Gizmos doesnt work anymoreClément Foucault
This changes the state of occlusion queries quite a bit. Now scissors is explicitely disabled and we enabled color write. I still don't understand why we now need this. This patch is just trial and error on an affected setup. Note that on the same computer, renderdoc was not able to capture the regression (the regression did not manifest during capture). Regression likely introduced by rB5f414234ddea
2020-08-21Cleanup: spellingCampbell Barton
2020-08-21GPUShader: Fix linking working even if one shader compilation failedClément Foucault
Linking without valid shaders works on some drivers. Avoid this case by forcing linking step to return false.
2020-08-21Cleanup: GPU: Update classes commentsClément Foucault
This should avoid confusion about what is a class and what is an opaque pointer.
2020-08-21GPUShader: Make GPUShader* an opaque pointer to blender::gpu::ShaderClément Foucault
This avoids the misleading inheritance. Also cleanup by setting the blender::gpu::Shader as active shader to avoid some casting.
2020-08-21GPUShader: Fix NULL string used as shader name.Clément Foucault
The shader name is required with the latest changes.
2020-08-21GPUUniformBuf: GL backend isolationClément Foucault
This is in preparation of vulkan backend. We move all opengl functionnalities behind an abstract class. This also cleansup the "dynamic" ubo create and rename it to `GPU_uniformbuf_from_list()` Contains, no functional change. Part of T68990 Vulkan support.
2020-08-21GPUUniformBuf: Rename struct and change API a bitClément Foucault
This follows the GPU module naming of other buffers. We pass name to distinguish each GPUUniformBuf in debug mode. Also remove DRW_uniform_buffer interface.
2020-08-20Cleanup: Clang Tidy: Resolve readability-delete-null-pointer errorHans Goudey
2020-08-20GPUShaderInterface: Fix use after free crashClément Foucault
2020-08-20GPUState: Use state setters inside selection codeClément Foucault
This fixes T79945 Gizmos don't work in Edit Mode
2020-08-20GPUState: Use explicit depth test enumClément Foucault
2020-08-20GPUShaderInterface: GL backend isolationClément Foucault
2020-08-20GPU: Use GPUShader setters for uniforms removing uses of ShaderInterfaceClément Foucault
2020-08-19GPUState: Fix signed / bitfield conversion leading to wrong enum valueClément Foucault
This was creating drawing issues on windows builds.
2020-08-19GPUShader: Fix apple clang warningsClément Foucault
2020-08-19Cleanup: spellingCampbell Barton
2020-08-18Cleanup: GPUState: Remove GPU_state_init()Clément Foucault
2020-08-18GPUState: Use GPU_viewport to set viewport state in GPU_framebufferClément Foucault
also fix a small issue in GPU_texture_clear.
2020-08-18GPUState: Port default state to StateManager constructorClément Foucault
2020-08-18Cleanup: DRW: Use GPUState instead of raw opengl callsClément Foucault
Should not break anything! Huh!
2020-08-18GPUState: Only apply state before drawingClément Foucault
2020-08-18Cleanup: GPUState: Remove stack from the state manager and rename itClément Foucault
2020-08-18GPUState: Remove gpuPushAttr/gpuPopAttrClément Foucault
And use manual save/restore mechanism. The stack method is not used so much to be considered useful.
2020-08-18GPUState: Make use of GPUStateStack classClément Foucault
This isolate most GL calls to the GL backend. Still a few remains.
2020-08-18Cleanup: GPUState: remove double GPU_blend callsClément Foucault
2020-08-18GPUState: GPU_blend final API renamingClément Foucault
We now use GPU_blend for enabling / disabling blending and explicitly set the blend equation.
2020-08-18Cleanup: GPUState: remove use of GPU_blend_set_funcClément Foucault
2020-08-18Cleanup: GPUState: Replace blend func separate by enumClément Foucault
2020-08-18Cleanup: GPU: Move towards an explicit Blend stateClément Foucault
This make use of the GLStateStack functions for: - `GPU_blend()` - `GPU_blend_set_func()` - `GPU_blend_set_func_separate()` The goal is to unify them using an explicit state setting. This will remove the need to use obscure blend functions