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-08-18Cleanup: GPUState: Replace blend func separate by enumClément Foucault
2020-08-18GPUShader: Improve auto nameClément Foucault
Use macro to get calling function name. Helps debugging shaders.
2020-08-18GPUShader: GL backend isolationClément Foucault
2020-08-18Cleanup: GPU: Replace Batch uniform by shader uniform using macroClément Foucault
This is a first step into removing uniforms from GPU_batch and Imm.
2020-08-18Fix T79800: Split vertex size for grease pencilAntonio Vazquez
Differential Revision: https://developer.blender.org/D8607
2020-08-17Cleanup: header order, trailing spaceCampbell Barton
2020-08-13Cleanup: GPU: Remove Batch vao cache resetClément Foucault
This is done at drawtime automatically.
2020-08-13GPUBatch: Move allocator to backendClément Foucault
2020-08-13GPUBatch: Merge phase and ownership flags and cleanup there usageClément Foucault
Also add new flags to communicate specific behavior to future backend.
2020-08-13DRW: InstanceData: Remove hacks of batch freeing callbackClé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-13GPU: Use GPU_vertbuf_create & GPU_indexbuf_calloc instead of manual allocClément Foucault
2020-08-13GPUShader: Change shader state tracking to be part of the GPUContextClément Foucault
This remove the use of batch->program and replace it with batch->shader. This will allow GL abstraction latter.
2020-08-13GPUBatch: Remove usage of gl_prim_type outside of GPU moduleClément Foucault
2020-08-13GPUDrawList: GL backend isolationClément Foucault
2020-08-11Fix T79683: Dim GPencil points created by modifiersAntonio Vazquez
This change makes the generated points a light dimmer than selectable points. Before: {F8765593} After: {F8765585} Maniphest Tasks: T79683 Differential Revision: https://developer.blender.org/D8515
2020-08-10Merge branch 'blender-v2.90-release'Germano Cavalcante
2020-08-10Fix T78113: Random explosions of cloth with self collisionGermano Cavalcante
The problem is caused by a lack of prediction in the `isect_line_segment_tri_v3` that incorrectly confirms some intersections of coplanar segments to the triangle. The solution is to use another algorithm to detect intersections. This also resulted in a slight improvement in the performance: - 1min 17sec to 1min 6sec in my test file Differential Revision: https://developer.blender.org/D8500
2020-08-10Merge branch 'blender-v2.90-release'Jeroen Bakker
2020-08-09Fix T79246 GPUShader: compile error on AWS Elastic GraphicsClément Foucault
2020-08-08Cleanup: use array syntax for sizeof with fixed valuesCampbell Barton
Also order sizeof(..) first to promote other values to size_t.
2020-08-08DRW: Fix runtime error: shifting signed 32bits intClément Foucault
2020-08-08GPUBatch: Use custom allocatorClément Foucault
This is needed for the new GPU abstraction.
2020-08-08DRW: Instance Data: Replace GPUBatch bulk allocation by separate allocClément Foucault
This is suboptimal but needed for the new GPU abstraction. Maybe a better solution will be needed if performance is impacted.
2020-08-07Cleanup: pass arrays const where possibleCampbell Barton
2020-08-07Cleanup: declare arrays arrays where possibleCampbell Barton
2020-08-07Cleanup: Draw, Clang-Tidy else-after-return fixes (incomplete)Sybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/draw` module. Not all warnings are addressed in this commit. No functional changes.
2020-08-07Merge branch 'blender-v2.90-release' into masterJacques Lucke
2020-08-07Code Style: use "#pragma once" in source directoryJacques 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-07Merge branch 'blender-v2.90-release'Clément Foucault
2020-08-07Fix T78452 EEVEE: Motion Blur: Crash when using camera switchingClément Foucault
This was caused by the ViewLayer being freed with all its engine data.
2020-08-06Merge branch 'blender-v2.90-release'Antonio Vazquez
2020-08-06Fix T77885: crash rendering grease pencil from compositor with multiple scenesVincent Blankfield
2020-08-05Merge branch 'blender-v2.90-release'Jeroen Bakker
2020-08-05Fix T77346: GPU Workaround Always Render Using Main ContextJeroen Bakker
In Blender 2.90 EEVEE materials were refactored that introduced crashes on Intel GPUs on Windows. The crash happened in the `local_context_workaround` that temporary stored compiled materials in a binary form to reload it in the main GL context. It has been tested that the workaround isn't needed anymore for HD6xx GPUs, but it is still needed for HD4000. After several unsuccesfull fixes we came to the conclusion that we could not support the local context workaround and needed to come with a different workaround. The idea of this patch is that in these cases there is only a single context that is used for rendering. Threads that uses these contextes are guarded by a mutex and will block. Impact on User Level: * Due to main mutex lock the UI freezes when rendering or baking or feel less snappy Reviewed By: Clément Foucault, Brecht van Lommel Differential Revision: https://developer.blender.org/D8410
2020-08-05Merge branch 'blender-v2.90-release' into masterCampbell Barton
2020-08-05EEVEE: LightCache: Prevent crash when using a lightcache too bigClément Foucault
Some implementation have different maximum texture size. This patch avoid crash when texture allocation fails when: - trying to bake a lightcache too big for the OpenGL imeplementaion. - loading a cache from file that is too big for the OpenGL imeplementation.
2020-08-04Merge branch 'blender-v2.90-release'Bastien Montagne
Conflicts: source/blender/editors/gpencil/gpencil_primitive.c
2020-08-04Merge branch 'blender-v2.90-release' into masterCampbell Barton
2020-08-04Cleanup: typos & co in UI messages (and some other places).Bastien Montagne
2020-08-04Cleanup: unused main argumentCampbell Barton
2020-08-04Fix T79503: Selecting edit-bones while holding Ctrl crashesCampbell Barton
2020-08-03Cleanup: remove trailing space, newlines at eofCampbell Barton
2020-08-02Merge branch 'blender-v2.90-release' into masterCampbell Barton
2020-08-02Fix UV face dot refresh when toggling sync-selectCampbell Barton
2020-07-30GPU: Fix compilation errorClément Foucault
2020-07-30EEVEE: GLSL refactor/cleanupClément Foucault
- add the use of DRWShaderLibrary to EEVEE's glsl codebase to reduce code complexity and duplication. - split bsdf_common_lib.glsl into multiple sub library which are now shared with other engines. - the surface shader code is now more organised and have its own files. - change default world to use a material nodetree and make lookdev shader more clear. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D8306
2020-07-30GPUBatch & GPUImmediate: Use GPUShader instead of using raw OGL handleClément Foucault
2020-07-30Cleanup: warningsCampbell Barton
2020-07-30Cleanup: GPU: Remove GPU_draw.h and move fluid gpu function to DRWClément Foucault
2020-07-30Cleanup: Split gpu_texture_image.c into BKE and IMB modulesClément Foucault
This is in order to disolve GPU_draw.h into more meaningful code blocks. All the Image related function are in `image_gpu.c`. All the MovieClip related function are in `movieclip.c`. The IMB module now has a connection with GPU. This is not strickly necessary and the code could be move to `image_gpu.c` if needed. The Image garbage collection is also ported to `image_gpu.c`.