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-10-19Spelling: It's Versus ItsHarley Acheson
Corrects incorrect usage of contraction for 'it is', when possessive 'its' was required. Differential Revision: https://developer.blender.org/D9250 Reviewed by Campbell Barton
2020-10-14GL: FrameBuffer: Set GL_FRAMEBUFFER_SRGB if neededClément Foucault
This makes possible to rebind the same GPUFrameBuffer to enable or disable sRGB encoding transform.
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-10-07GPU: Avoid blit operation modifying the wrong framebuffer during restoreClément Foucault
At the end of `GPU_framebuffer_blit` when `prev_fb->bind(true);` is called, the `context_->active_fb` was not in sync and lead to the wrong framebuffer being modified by bind function. This fix T81055 SSS light is missing from the diffuse light render pass
2020-10-02Cleanup: trailing spaceCampbell Barton
2020-10-01Cleanup: avoid applying offset to null pointerCampbell Barton
Based on D9069 by @ankitm.
2020-09-25Fix T80998: DDS Image files are not displayed correctlyJeroen Bakker
Blender 2.91 only. Due to recent refactoring the compressed texture formats missed the conversion to its GL counterpart.
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-15Cleanup: spellingCampbell Barton
2020-09-14Cleanup: GLShader: Use span and default constructor instead of vector(0)Clément Foucault
2020-09-14Cleanup: GPUDebug: Use Vector instead of custom stackClément Foucault
2020-09-14GL: Make use of the new debug layerClément Foucault
This makes replay analysis inside renderdoc much easier by using the new debug group functionality.
2020-09-14GL: Fix linking errors being useless.Clément Foucault
Now they will at least show the shader name
2020-09-12Fix remaining GL calls/type preventing from building due to recent cleanupClément Foucault
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-12Cleanup: Remove GLEW dependencies outside of GL moduleClé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-11Cleanup: spelling, correct commentsCampbell Barton
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-09Cleanup: GPU: Replace multiple checks by GLContext::debug_layer_supportClément Foucault
2020-09-08GLSamplers: Add debug object labelClément Foucault
This makes it easier to see what each sampler is supposed to be.
2020-09-08GLBackend: Fix gl error inside the mip rendering workaround detectionClément
This was caused by an incorrect mipmap size. Also add debug checks for good mesure.
2020-09-08GLContext: Fix clang warning about using overrideClément
2020-09-08GLFrameBuffer: Fix mass renaming issueClément
The context might be partialy freed, so use gpu::Context instead of GLcontext.
2020-09-08GPUContext: Move GPUContext to gpu::Context for more consistencyClément Foucault
This makes the GPUContext follow the same naming convention as the rest of the module. Also add a static getter for extra bonus style (no need for casts): - Context::get() - GLContext::get()
2020-09-08GPUTexture: Remove unused functions and avoid GPU_texture_opengl_bindcodeClément Foucault
This is a cleanup.
2020-09-08GPUImmediate: Make activation / deactivation implicitClément Foucault
This avoids unecessary complexity. Also makes the GPUImmediate threadsafe by using a threadlocal imm variable.
2020-09-08GPUState: Encapsulate glPixelStorei inside the GLStateManagerClément Foucault
Part of the Vulkan task T68990 Isolate the last remaining gl functions.
2020-09-08GPUState: Encapsulate glFlush and glFinish inside the GLContextClément Foucault
Part of the Vulkan task T68990 Isolate the few remaining gl functions.
2020-09-08Cleanup: consistent syntax for doxygen parametersCampbell Barton
Also use back-slash instead of '@'.
2020-09-08GPUQuery: GL Backend isolationClément Foucault
This is part of the Vulkan task T68990. This introduce a new GLQueryPool for managing queries in an implementation agnostic manner. This modify the GPU selection query to use this new object. This also make use of blender::Vector for better code quality. No real functionnal change.
2020-09-07Cleanup: GLBackend: Move buf_free and tex_free to GLContextClément Foucault
This makes it easier to follow. Also removes the GL related functions inside gpu_context.cc.
2020-09-07GPUCapabilities: Isolate GL memory statisticsClément Foucault
This is part of the Vulkan task T68990 This is a simple cleanup.
2020-09-07GPUCapabilities: Isolate GL_STEREO to GLContextClément Foucault
This is part of the Vulkan task T68990 This is a simple cleanup.
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-07GPUExtensions: GL backend isolationClément Foucault
This is part of the Vulkan task T68990. This commits changes a few things: - Rename extensions to capabilities (but left the file name untouched). - Cubemap mip render workaround detection is rewritten using gl commands to avoid using the GPU API before initialization. - Put all the capabilities that are only relevant for the GL backend inside GLContext as static variables. - Cleanup the names of the limit variables. - Separate all GL related workaround search inside the GL module.
2020-09-07GPUPlatform: GL backend isolationClément Foucault
Part of the vulkan implementation T68990. Pretty straight forward. Just move the GL code inside the GLBackend and make the GPUPlatformGlobal a class object.
2020-09-07GPU: Fix clang tidy warningsClément Foucault
2020-09-07GPUVertBuf: GL Backend IsolationClément Foucault
Part of the Vulkan port T68990 This makes a few changes in how the data is being handled by the backend to allow more flexibility in the future. The overall code logic is left unchanged.
2020-09-07GPUVertBuf: Rename GPUVertBuf to VertBuf and add some gettersClément Foucault
to avoid more typecasts.
2020-09-06GLTexture: Fix crash with --debug-gpu on windows + nvidiaClément Foucault
The combination of DSA + CubeMap seems to not please this driver.
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-06Cleanup: GLBackend: Fix missing override keywords producing warningsClément Foucault