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-02-11File headers: SPDX License migrationCampbell Barton
Use a shorter/simpler license convention, stops the header taking so much space. Follow the SPDX license specification: https://spdx.org/licenses - C/C++/objc/objc++ - Python - Shell Scripts - CMake, GNUmakefile While most of the source tree has been included - `./extern/` was left out. - `./intern/cycles` & `./intern/atomic` are also excluded because they use different header conventions. doc/license/SPDX-license-identifiers.txt has been added to list SPDX all used identifiers. See P2788 for the script that automated these edits. Reviewed By: brecht, mont29, sergey Ref D14069
2022-01-06Cleanup: spelling in commentsCampbell Barton
2021-12-09Cleanup: move public doc-strings into headers for 'gpu'Campbell Barton
Ref T92709
2021-10-01GPU: set 'GL_PACK_ALIGNMENT' 1 as defaultGermano Cavalcante
This fixes T91828. The current value of `GL_PACK_ALIGNMENT` may result in crash in the `gpu` module if the buffer is not aligned. Differential Revision: https://developer.blender.org/D12720
2021-07-03Cleanup: consistent use of tags: NOTE/TODO/FIXME/XXXCampbell Barton
Also use doxy style function reference `#` prefix chars when referencing identifiers.
2021-01-04Cleanup: docy comments beginning with '/**' don't end with '**/'Campbell Barton
2020-11-06Cleanup: Clang-Tidy, modernize-redundant-void-argSergey Sharybin
2020-11-06Cleanup: Clang-Tidy, readability-redundant-member-initSergey Sharybin
2020-11-05Fix T80842 Grease Pencil: Subtract mode is not working as expectedClément Foucault
The blend equation was not set correctly inside the GL Module since the refactor.
2020-11-04Fix T67832: Camera Background Images View TransformJeroen Bakker
This patch will apply the view transform when a movie clip is used as camera background image. It does this by rendering the image in the color buffer when it needs the view transform. For other images it uses the overlay buffer. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D7067
2020-10-09Revert "Revert "BGL: Workaround broken bgl usage caused by GPU refactor""Clément Foucault
This reverts commit f23bf4cb109cb8f39f873c4f80acbec3f33b098c.
2020-10-08Revert "BGL: Workaround broken bgl usage caused by GPU refactor"Clément Foucault
This reverts commit f12b0373f322b710b9fa5cebb67bdf363ff90e9f.
2020-10-08BGL: Workaround broken bgl usage caused by GPU refactorClément Foucault
This directly adress the issues caused by rB536c2e0ec916. Since the state tracking is done at a lower level, using the bgl functions needs to be safegarded by the state manager. The current workaround is to bypass `apply_state` when inside a callback that used a `bgl` function. Related to T80730. This fix T81003. Also this fix the default blend equation for callbacks. Fixes T80169 T81289.
2020-09-12GPU: Fix wrong state before python callbacksClément Foucault
This was caused by a missing state apply. We force the GPUState to be set after the callbacks to avoid desync between our state tracker and the real gl state. This fixes some issues but a better general fix for all BGL would be better. This fix T80297 2.91 texture alpha is not transparent
2020-09-12Cleanup: GPU: Rename GPUStateManager to StateManager to follow styleClément Foucault
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-11GPUState: Fix missing changed program point size stateClément Foucault
Also avoid a case where size is zero and making it impossible to change it back. This fix T80664 Tiny node sockets
2020-09-10GPUState: Fix Point Size issuesClément Foucault
The point size was not updated in the right branch and setting the point size via GPU_point_size was effectively disabling its use.
2020-09-10GL: Wrap extension support inside GLContextClément Foucault
This makes it possible to disable all the extensions when forcing workarounds. Also it will allow future options to selectively disable each extension to know which one is buggy.
2020-09-10GL: Add fallback debug layerClément Foucault
This is to improve debugging on older hardware that may not support 4.3 debug capabilities (like Macs). This avoids sprinkling glGetErrors manually. This might still be needed to find the root cause since not all functions are covered. This overrides the functions pointers that GLEW have already init. This is only enabled if using --debug-gpu option and the debug extension are not available. This also cleanup the usage of GLContext::debug_layer_support and use wrapper to set object labels.
2020-09-08GPUState: Encapsulate glPixelStorei inside the GLStateManagerClément Foucault
Part of the Vulkan task T68990 Isolate the last remaining gl functions.
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-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: Add Feedback loop checkClément Foucault
The check is better than before as we take into consideration the attached mip level.
2020-09-05GLState: Add texture multibind and remove redundant bindsClé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-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-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-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-19GPUState: Fix signed / bitfield conversion leading to wrong enum valueClément Foucault
This was creating drawing issues on windows builds.
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: Make use of GPUStateStack classClément Foucault
This isolate most GL calls to the GL backend. Still a few remains.
2020-08-18GPUState: Add GL backend and state tracking but do not use itClément Foucault
This is just the backend work. It is not plugged in yet because it needs more external cleanup/refactor.