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-12Cleanup: GPU: Rename GPUStateManager to StateManager to follow styleClément Foucault
2020-09-12Cleanup: GPU: Remove unused GPU_debugClé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-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-11Fix T80327 UI: Glitches in UI drawingClément Foucault
This was caused by an uninitialized variable that was left unchanged when calling GPU_vertformat_clear.
2020-09-10GPUBatch: Do not unbind shader after drawing.Clément Foucault
This allows subsequent redraw to work just like before. However a better safeguard system against setting the uniforms in the wrong shader would be nice to have.
2020-09-10GPUImmediate: Fix wrong resize of immBatchAtMostClément Foucault
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-08DrawManager: Fixed memory leak in test casesJeroen Bakker
Memory leak is introduced as test cases reinitializes the GPU stack. Added a call to GPU_backend_exit to fix this. In GPU_backend_exit the GPU backend was destroyed but the pointer wasn't reset for reuse. This patch also clears the pointer to be reused.
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-08GPU: Cleanup implementation castsClément Foucault
- Use the syntactic wrap/unwrap method to make code more readable. - Update comment about hidden struct behind opaque types. - Cleanup GPUDrawList type.
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-08GPU: Select Pick: Remove last GL callClément Foucault
This is part of the Vulkan task T68990 This is just a cleanup.
2020-09-08GPUFramebuffer: Make GPU_framebuffer_read_depth more flexibleClément Foucault
This is to make use of it in selection code.
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-07GPUTexture: Bump GPU_TEX_MAX_FBO_ATTACHEDClément Foucault
This was causing an assert when using `--debug-gpu-force-workarounds`
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-07Cleanup: GPUVertBuf: Replace TRUST_NO_ONE by BLI_asserts and ifdef DEBUGClé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-07Cleanup: spellingCampbell Barton
Also correct wrapped lines of example code in threads.cc.
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-06GPUIndexBuf: GL backend IsolationClément Foucault
This is part of the Vulkan backend task T68990. There is no real change, only making some code re-organisation. This also make the IndexBuf completely abstract from outside the GPU module.
2020-09-06Cleanup: GPU: Rename GPU_element to GPU_index_bufferClément Foucault
Makes it follow the functions names.
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-05Cleanup: GPUFramebuffer: Remove unused variableClément Foucault
2020-09-05Cleanup: GPUTexture: Move debug messages outside of creation functionClément Foucault
# Conflicts: # source/blender/gpu/intern/gpu_framebuffer.cc
2020-09-05GPUTexture: Change texture creation APIClément Foucault
This is to modernize the API: - Add meaningful name to all textures (except DRW textures). - Remove unused err_out argument: only used for offscreen python. - Add mipmap count to creation functions for future changes. - Clarify the data usage in creation functions. This is a cleanup commit, there is no functional change. # Conflicts: # source/blender/gpu/GPU_texture.h
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: Implement back 3D texture resizeClément Foucault
But this time implement it outside the texture module. This makes more sense as only the volume textures need this feature.
2020-09-05Cleanup: GPUTexture: Clean framebuffer attachmentClément Foucault
2020-09-05Cleanup: GPUFrameBuffer: Use Texture class instead of gl callsClé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-05GPUTexture: Remove bind to edit callsClément Foucault
This is going to be unecessary after the GPU opengl texture backend refactor. For now add a save/restore mechanism to leave the state untouched. Also remove some calls where the caller would bind to particular binding point and set the shader uniform.