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-05GLState: Use unsigned long long instead of unsigned long for shiftsClément Foucault
This fix a compilation warning on msvc.
2020-09-05Cleanup: clang-formatCampbell Barton
2020-09-05Cleanup: spellingCampbell Barton
2020-09-05GLState: Fix compilation warning on MSVCClément Foucault
2020-09-05GLTexture: Fix undefined behavior when binding textures the first timeClément Foucault
2020-09-05GLDebug: Trim NVidia debug outputClément Foucault
These buffer detailed infos are not needed unless going deep into perf. profiling, in which case you can still disable this compile option. This makes user report log much more readable.
2020-09-05GLTexture: Add Feedback loop checkClément Foucault
The check is better than before as we take into consideration the attached mip level.
2020-09-05GLTexture: Add direct state access supportClément Foucault
2020-09-05GLState: Add texture multibind and remove redundant bindsClément Foucault
2020-09-05GPUDebug: Only enable resource checking in debug modeClément Foucault
2020-09-05GLTexture: Add validation for empty slots before drawingClément Foucault
This is to have better error detection in debug builds. This is not a replacement for a full check like in renderdoc but it might catch some issues early on.
2020-09-05Cleanup: GPUTexture: Clean framebuffer attachmentClément Foucault
2020-09-05GLTexture: Add back texture proxy checkClément Foucault
Cleanup the feature itself: - Check 3D textures size against the correct limit. - Add check for compressed textures.
2020-09-05GPUTexture: Add support for samplersClément Foucault
This just add back the support. This commit also includes a bit of cleanup. # Conflicts: # source/blender/gpu/GPU_texture.h
2020-09-05GPUTexture: GL Backend IsolationClément Foucault
This is a massive cleanup needed for vulkan support T68990. It provides: - More meaningful enums with conversion functions. - Less hacky supports of arrays and cubemaps (all considered layered). - More inline with the stateless design of vulkan and modern GL. - Methods Fallbacks are using framebuffer functions that are wrapped instead of implementing inside the texture module. What is not in there: - API change. - Samplers support (breaks a few effects). # Conflicts: # source/blender/gpu/GPU_texture.h
2020-09-05GPUFramebuffer: Encapsulate single attachement clearClément Foucault
This is in preparation of using it to clear single texture. Also includes minor cleanups about not using tex target in assert and adding enum operators.
2020-09-05GPUTexture: Add skeleton of the new GLTexture classClément Foucault
2020-09-02Cleanup: spelling, rename attachement -> attachmentCampbell Barton
2020-09-02Cleanup: spellingCampbell Barton
2020-09-01Cleanup: GLFrameBuffer: Reduce indentationClément Foucault
2020-09-01GLFramebuffer: Avoid calling method on a partially destroyed GLContextClément Foucault
This avoid an ASAN runtime error.
2020-09-01Fix T80328 Commit introduced build warnings in WindowsClément Foucault
2020-09-01Cleanup: GPUContext: Remove unused functionsClément Foucault
2020-09-01GPU: Move UBO binding validation to GL backendClément Foucault
This also make the validation quicker by tracking the currently bound slots.
2020-09-01GL: Fix two GLerrorClément Foucault
The gizmo one was only reproducible in debug builds. The GLImmediate one was only affecting amdpro drivers when --debug-gpu was enabled.
2020-09-01GLImmediate: Use CL_CHECK_ERRORClément Foucault
This provides a bit more debugging info on MacOS.
2020-09-01GL: Move MacOS debug callback to gl_debug.ccClément Foucault
And format to use the same callback as standard debugging layer.
2020-09-01GPUDebug: Reformat GL debug callbacks and move them to GL backendClément Foucault
Now the callbacks are setup for each debug context. The formating has been reworked to be less verbose and make errors and warnings stand out from the notifications. Errors are most of the time sufficiently explicit in their message. This also remove the support for AMD_debug_output which is 10 years old. This is related to the Vulkan port T68990.
2020-09-01Cleanup: GPU: Remove GPU_draw_primitive and default_vao_Clément Foucault
These are not used anymore and can be replicated using the GPUBatch API.
2020-08-31Cleanup: GPU: Remove unused attr_binding and primitive codeClément Foucault
2020-08-31GPUImmediate: GL backend isolationClément Foucault
This is part of the Vulkan backend task T68990. This is mostly a cleanup, however, there is a small change: We don't use a special Vertex Array binding function for Immediate anymore and just reuse the one for batches. This might create a bit more state changes but this could be fixed easily if it causes perf regression. # Conflicts: # source/blender/gpu/intern/gpu_context.cc
2020-08-31GLContext: Fix framebuffer deletion to GPUContextClément Foucault
This has more meaning as it's the base class who holds the pointer. # Conflicts: # source/blender/gpu/opengl/gl_context.cc
2020-08-31Clang Tidy: Fix readability-delete-null-pointer warningsHans Goudey
2020-08-30GPUShader: Improve shader compilation logClément Foucault
- Print shader type (fragment, vertex, geom) - Support for Apple + intel error format. - Handle formatting a bit more gracefully.
2020-08-30EEVEE: Fix broken rendering caused by SSR + Alpha blended materialClément Foucault
This was affecting Mesa drivers as well as AMD pro driver. But it might have been noticeable on other config too. This was introduced by rBa9f2ebb21508.
2020-08-30GPUState: Move Scissor and Viewport state to framebufferClément Foucault
This way it is way clearer what each viewport state is. There is no more save and reset. The scissor test is also saved per framebuffer. The only rule to remember is that the viewport state (size and origin) is reset for both the viewport and scissor when a texture is attached or detached from an attachment slot.
2020-08-30GPUContext: Update internal framebuffer size when activating contextClément Foucault
This is to ensure the FrameBuffer extents are always up to date.
2020-08-30Cleanup: GPUContext: Remove default_framebuffer_Clément Foucault
This is now handled by FrameBuffer wrapping.
2020-08-30GPUFrameBuffer: GL backend isolationClément Foucault
This is related to the Vulkan port T68990. This is a full cleanup of the Framebuffer module and a separation of OpenGL related functions. There is some changes with how the default framebuffers are handled. Now the default framebuffers are individually wrapped inside special GLFrameBuffers. This make it easier to keep track of the currently bound framebuffer state and have some specificity for operations on these framebuffers. Another change is dropping the optimisation of only configuring the changed attachements during framebuffers update. This does not give any benefits and add some complexity to the code. This might be brought back if it has a performance impact on some systems. This also adds support for naming framebuffers but it is currently not used.
2020-08-26Cleanup: spellingCampbell Barton
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-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-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-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.