Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-08-18 | GPUShader: GL backend isolation | Clément Foucault | |
2020-08-18 | Cleanup: GPU: Replace Batch uniform by shader uniform using macro | Clément Foucault | |
This is a first step into removing uniforms from GPU_batch and Imm. | |||
2020-08-18 | Fix T77564: VSE (and compositor background) lost stereoscopy preview | Clément Foucault | |
Issue introduced on fe045b2b77dc6d7f0b552619fe824b496d34db6c. Since the stereoscopy compositing (anaglyph, ...) is only done for viewports the VSE preview and compositor need to use viewports. Reviewed by: dfelinto Differential Revision: https://developer.blender.org/D8472 | |||
2020-08-18 | Merge branch 'blender-v2.90-release' | Clément Foucault | |
2020-08-18 | GPUTexture: Extend CUBE_MAP_ARRAY_ARB proxy workaround to all Apple gpus | Clément Foucault | |
Related to T79716 | |||
2020-08-18 | GPU: Avoid invalid GL API usage | Clément Foucault | |
Drawing with 0 sized buffer is prohibited. | |||
2020-08-18 | Fix T79782 GPU: Crash cause by shadow batch reference | Clément Foucault | |
After drawing, the batch could be reset and draw again using other parameters. Avoid having to track references by setting the batch pointer to NULL after drawing. | |||
2020-08-18 | Fix T79568 EEVEE: Film transparent not working | Clément Foucault | |
Since world shader use the same standard output and are considered opaque, we need to set alpha as holdout. | |||
2020-08-17 | Cleanup: header order, trailing space | Campbell Barton | |
2020-08-17 | Cleanup: spelling | Campbell Barton | |
2020-08-13 | GPU: Fix MSVC warning | Clément Foucault | |
2020-08-13 | GPU: Fix issue with MDI and recent refactor | Clément Foucault | |
2020-08-13 | GPUDrawList: Fix gl error with drawing without the correct VAO bound | Clément Foucault | |
2020-08-13 | GPUShader: Add more uniform functions | Clément Foucault | |
2020-08-13 | Cleanup: GPU: Remove Batch vao cache reset | Clément Foucault | |
This is done at drawtime automatically. | |||
2020-08-13 | GPUBatch: GL backend isolation | Clément Foucault | |
This changes the drawing paradigm a bit. The VAO configuration is done JIT-style and depends on context active shader. This is to allow more flexibility for implementations to do optimization at lower level. The vao cache is now its own class to isolate the concept. It is this class that is reference by the GLContext for ownership of the containing VAO ids. | |||
2020-08-13 | GPUBatch: Move allocator to backend | Clément Foucault | |
2020-08-13 | GPUBatch: Merge phase and ownership flags and cleanup there usage | Clément Foucault | |
Also add new flags to communicate specific behavior to future backend. | |||
2020-08-13 | DRW: InstanceData: Remove hacks of batch freeing callback | Clément Foucault | |
We instead use a handle reference counter on the GPUVertBufs used by the instancing batches. This make sure that if an update happens on the GPUVertBuf used to contruct the batch, they will never have the same memory address than the previously allocated ones (since they are still pending deletion thanks to the refcounter). This avoid the linear search to update the GPUBatch in the case a batch is deleted (which was even a bad option since they could be only cleared) | |||
2020-08-13 | GPU: Use GPU_vertbuf_create & GPU_indexbuf_calloc instead of manual alloc | Clément Foucault | |
2020-08-13 | GPUVertBuf: Add handle refcount | Clément Foucault | |
A handle refcount is here to avoid freeing of the GPUVertBuf datablock if it is still referenced somewhere else. This does not prevent deleting the actual data. This is to avoid too much zombie data usage. This is in order to avoid most hacks inside `draw_instance_data.c`. | |||
2020-08-13 | GPUBatch: Remove most use of GPU_batch_draw_advanced() | Clément Foucault | |
This is in order to better encapsulate / isolate the drawing code. | |||
2020-08-13 | Cleanup: GPUBatch: Remove GL functions from uniform assignment | Clément Foucault | |
2020-08-13 | Cleanup: GPUBatch: Move gpu_batch_private.h to CPP header | Clément Foucault | |
2020-08-13 | Cleanup: GPUShader: Remove unused code | Clément Foucault | |
2020-08-13 | GPUShader: Change shader state tracking to be part of the GPUContext | Clément Foucault | |
This remove the use of batch->program and replace it with batch->shader. This will allow GL abstraction latter. | |||
2020-08-13 | GPUBatch: Remove usage of gl_prim_type outside of GPU module | Clément Foucault | |
2020-08-13 | GPUDrawList: GL backend isolation | Clément Foucault | |
2020-08-13 | Cleanup: spelling | Campbell Barton | |
2020-08-11 | Cleanup: Resolve clang tidy warning / error | Hans Goudey | |
2020-08-11 | Merge branch 'blender-v2.90-release' | Clément Foucault | |
2020-08-11 | Fix T79703 EEVEE: Crash on Macos due to lightcache baking | Clément Foucault | |
2020-08-10 | Merge branch 'blender-v2.90-release' | Jeroen Bakker | |
2020-08-09 | Fix T79246 GPUShader: compile error on AWS Elastic Graphics | Clément Foucault | |
2020-08-09 | msvc: Fix build error with msvc 2017 | Ray Molenkamp | |
`using blender;` Was required to get the Vector type. | |||
2020-08-08 | Cleanup: use array syntax for sizeof with fixed values | Campbell Barton | |
Also order sizeof(..) first to promote other values to size_t. | |||
2020-08-08 | Clenup: use STREQ macro | Campbell Barton | |
2020-08-08 | Cleanup: GPU: Change gpu_context_private.h to C++ only header | Clément Foucault | |
2020-08-08 | GPUBackend: Add new GPUBackend object to manage GL object allocations | Clément Foucault | |
This just set a global object responsible for allocating new objects in a thread safe way without needing any GPUContext bound to this thread. This also introduce the GLContext which will contain all the GL related functions for the current context. # Conflicts: # source/blender/gpu/intern/gpu_context.cc | |||
2020-08-08 | GPUBackend: Add new GPUBackend object to manage GL object allocations | Clément Foucault | |
This just set a global object responsible for allocating new objects in a thread safe way without needing any GPUContext bound to this thread. This also introduce the GLContext which will contain all the GL related functions for the current context. | |||
2020-08-08 | GPU: Move ghost default framebuffer getter to context creation | Clément Foucault | |
2020-08-08 | GPUBatch: Use custom allocator | Clément Foucault | |
This is needed for the new GPU abstraction. | |||
2020-08-07 | Cleanup: declare arrays arrays where possible | Campbell Barton | |
2020-08-07 | Cleanup: GPU, Clang-Tidy else-after-return fixes | Sybren A. Stüvel | |
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/gpu` module. No functional changes. | |||
2020-08-07 | Merge branch 'blender-v2.90-release' into master | Jacques Lucke | |
2020-08-07 | Code Style: use "#pragma once" in source directory | Jacques Lucke | |
This replaces header include guards with `#pragma once`. A couple of include guards are not removed yet (e.g. `__RNA_TYPES_H__`), because they are used in other places. This patch has been generated by P1561 followed by `make format`. Differential Revision: https://developer.blender.org/D8466 | |||
2020-08-06 | Merge remote-tracking branch 'origin/blender-v2.90-release' | Dalai Felinto | |
2020-08-06 | Cleanup: Remove bad level calls from space image | Dalai Felinto | |
Groundwork for upcoming fix (D8472) | |||
2020-08-06 | Cleanup: Stop accessing gpu_batch_presets_reset() | Dalai Felinto | |
The current code is accessing this from outside the gpu "namespace". As such it should be accessing GPU_ functions, not gpu_ functions. This is also a place to centralize the XXX message that will be addressed upon refactor. So we can reuse this call in other places that need the same temporary workaround. Groundwork for upcoming fix (D8472) | |||
2020-08-06 | Merge branch 'blender-v2.90-release' into master | Campbell Barton | |