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
2019-02-03Cleanup: trailing commasCampbell Barton
Needed for clan-format not to wrap onto one line.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-29Cleanup: replace attrib w/ attrCampbell Barton
Also rename GPUVertexAttribs to GPUVertAttrLayers, avoids confusion with GPUVertAttr which isn't closely related.
2019-01-26Cleanup: remove redundant BKE/BLI/BIF headersCampbell Barton
2019-01-25T60745: GPU texture alloc failed when opening Preference WindowsClément Foucault
Was generating INVALID_FRAMEBUFFER here instead of failled texture alloc. Add safety asserts in gpu_texture.c and clamp minimum size to 1 inside GPU_offscreen_create.
2019-01-23Cleanup: use eGPU prefix for GPU enum typesCampbell Barton
2018-12-30Cleanup: warnings (clang)Campbell Barton
2018-12-06GPU Framebuffer: simplify ↵mano-wii
gpu_framebuffer_update_attachments_and_fill_empty_slots func
2018-12-06Fix problem with unused color slot in framebuffer on some bugged AMD GPUsmano-wii
Differential Revision: https://developer.blender.org/D4035
2018-11-06GPU: frame buffer stackJacques Lucke
Reviewers: fclem Differential Revision: https://developer.blender.org/D3903
2018-10-26GPUTexture: Add supports for GL_DEPTH32F_STENCIL8 texture formatClément Foucault
2018-10-23Fix T57326: Adding Scene with Transparent Film to VSE Crashes BlenderClément Foucault
Previous Framebuffer can be NULL.
2018-10-22GPU: Fix Issue with recursive downsample and Intel HDXXXClément Foucault
This is caused by a driver bug that prevent us from rendering to (or even binding) a texture mip level that is below GL_TEXTURE_MAX_LEVEL of the target texture. This is fine in most drivers (and legal AFAIK) but not on thoses Intels HDXXX + Windows. As a fix we just put GL_TEXTURE_MAX_LEVEL lower (which is illegal because it is undefined behaviour), but in practice it works ok and does not trigger any warnings or errors. This commit fixes most of the problems encountered on these GPUs (T56668).
2018-09-24Spelling fixes in comments and descriptions (2.8 changes), patch by luzpaz.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D3719
2018-09-20Fix build for MSVC: Remove trailing double semicolonDalai Felinto
Not sure why but MSVC is complaining for some of those. In particular for the struct in BKE_subdiv_ccg.h. Those were the ones crashing here..
2018-09-16Fix T56817: Assert because of invalid framebufferClément Foucault
2018-09-12Cleanup: use uint/uchar types in GPUCampbell Barton
2018-08-17GPUFramebuffer: Fix wrong stencil clearingClément Foucault
2018-07-31GPUFrameBuffer: Put active framebuffer in GPUContextClément Foucault
instead of being ThreadLocal and leading to incorrect usage. We still enforce no framebuffer when changing context. We can lift this restriction later.
2018-07-19GPU: Add GC to FBOs and UBOs and centralize all GCsClément Foucault
GPUFrameBuffers were being free when no context was attached or in the wrong gl context. This make sure this does not happen again. You can now safely free any gl resource from any thread (well as long as it's not used anymore!).
2018-07-18Cleanup: style for GPU moduleCampbell Barton
2018-07-08Cleanup: rename 'ct' to 'len' for gpuCampbell Barton
2018-06-27bf_gpu: Add GPU_state module.Ray Molenkamp
This has wrappers for the most common gl* functions in the codebase, and is in preparation for D3502 Reviewers: brecht, fclem Differential Revision: https://developer.blender.org/D3501
2018-06-14Cleanup: styleCampbell Barton
2018-06-11Cleanup: fix compiler warnings.Brecht Van Lommel
2018-06-11Fix crash with OpenGL rendering in multiple threads on macOS.Edmund Kapusniak
On macOS we must always go through BLI_thread_local_get/set(). Differential Revision: https://developer.blender.org/D3470
2018-06-04Merge branch 'master' into blender2.8Campbell Barton
2018-06-04 Cleanup: strip trailing space in GPU moduleCampbell Barton
2018-04-30DRW: Remove DRWTextureFormat in favor or GPUTextureFormat.Clément Foucault
Because: - Less redundancy. - Better suffixes. Also a few modification to GPU_texture_create_* to simplify the API: - make the format explicit to the texture creation process. - remove the component count as it's specified in the GPUTextureFormat.
2018-04-27WM: new offscreen window draw method to replace all existing methods.Brecht Van Lommel
For Blender 2.8 we had to be compatible with very old OpenGL versions, and triple buffer was designed to work without offscreen rendering, by copying the the backbuffer to a texture right before swapping. This way we could avoid redrawing unchanged regions by copying them from this texture on the next redraws. Triple buffer used to suffer from poor performance and driver bugs on specific cards, so alternative draw methods remained available. Now that we require newer OpenGL, we can have just a single draw method that draw each region into an offscreen buffer, and then draws those to the screen. This has some advantages: * Poor 3D view performance when using Region Overlap should be solved now, since we can also cache overlapping regions in offscreen buffers. * Page flip, anaglyph and interlace stereo drawing can be a little faster by avoiding a copy to an intermediate texture. * The new 3D view drawing already writes to an offscreen buffer, which we can draw from directly instead of duplicating it to another buffer. * Eventually we will be able to remove depth and stencil buffers from the window and save memory, though at the moment there are still some tools using it so it's not possible yet. * This also fixes a bug with Eevee sampling not progressing with stereo drawing in the 3D viewport. Differential Revision: https://developer.blender.org/D3061
2018-04-20Fix frame-buffer texture creationClément Foucault
- disable depth buffer didn't work. - push/pop viewport bit was needed.
2018-04-19Cleanup: styleCampbell Barton
2018-04-16Cleanup: indentationCampbell Barton
2018-04-03Fix crash on startup on macOS, after recent framebuffer refactoring.Brecht Van Lommel
2018-03-30GPUFramebuffer: Fix assert triggering another assert.Clément Foucault
2018-03-29EEVEE: Fix bad framebuffer configurationClément Foucault
Was causing black / corrupted scene because of broken downsample Add a debug check to not run into this problem again.
2018-03-26GPUFramebuffer: Fix compiler warning about return value.Clément Foucault
2018-03-25GPUFramebuffer: Refactor (Part 2)Clément Foucault
This refactor modernise the use of framebuffers. It also touches a lot of files so breaking down changes we have: - GPUTexture: Allow textures to be attached to more than one GPUFrameBuffer. This allows to create and configure more FBO without the need to attach and detach texture at drawing time. - GPUFrameBuffer: The wrapper starts to mimic opengl a bit closer. This allows to configure the framebuffer inside a context other than the one that will be rendering the framebuffer. We do the actual configuration when binding the FBO. We also Keep track of config validity and save drawbuffers state in the FBO. We remove the different bind/unbind functions. These make little sense now that we have separate contexts. - DRWFrameBuffer: We replace DRW_framebuffer functions by GPU_framebuffer ones to avoid another layer of abstraction. We move the DRW convenience functions to GPUFramebuffer instead and even add new ones. The MACRO GPU_framebuffer_ensure_config is pretty much all you need to create and config a GPUFramebuffer. - DRWTexture: Due to the removal of DRWFrameBuffer, we needed to create functions to create textures for thoses framebuffers. Pool textures are now using default texture parameters for the texture type asked. - DRWManager: Make sure no framebuffer object is bound when doing cache filling. - GPUViewport: Add new color_only_fb and depth_only_fb along with FB API usage update. This let draw engines render to color/depth only target and without the need to attach/detach textures. - WM_window: Assert when a framebuffer is bound when changing context. This balance the fact we are not track ogl context inside GPUFramebuffer. - Eevee, Clay, Mode engines: Update to new API. This comes with a lot of code simplification. This also come with some cleanups in some engine codes.
2018-03-25GPUFramebuffer: Refactor (part 1)Clément Foucault
Move some DRWFramebuffer functions to GPUFramebuffer.
2018-03-25GPUOffscreen: Remove unused offscreen blit.Clément Foucault
2018-03-25GPULamp: Move GPU_frambuffer_blur to GPU_lamp.cClément Foucault
This is a bit useless because gpu lamps are only used by the game engine and it is planned to be "remove" in some way. Doing this to clean gpu_framebuffer.c.
2018-03-25GPUFramebuffer: Make current framebuffer thread local.Clément Foucault
This make sense since we are using multiple olg contexts and two contexts can be active at the same time with different framebuffers.
2018-02-17Fix GL_FRAMEBUFFER_UNSUPPORTED warning in console on macOS.Brecht Van Lommel
2018-02-13GPU: add offscreen buffer drawing utility functions.Brecht Van Lommel
2018-02-07GPU: Remove Mesa + Vega hack.Clément Foucault
This is not needed anymore with linux 4.15 + Mesa 17.3.3.
2018-01-04GPU_offscreen: Add option for high bit depth.Clément Foucault
This way we can render in HDR and read the real pixel values.
2017-11-25GPUFramebuffer: Bump the framebuffer attachement limit to 5 color texturesClément Foucault
2017-11-14Fix Opengl Error with glBlitFramebufferClément Foucault
This was caused by 93936b8643b9c4f77fe13d35b41ecaa246843dd8 From GL spec : GL_INVALID_OPERATION is generated if mask contains GL_DEPTH_BUFFER_BIT or GL_STENCIL_BUFFER_BIT and the source and destination depth and stencil formats do not match. So blitting framebuffer with depth or stencil require the SAME FORMAT.
2017-11-14GPUTexture: Add for stencil to default depth buffers.Clément Foucault
Theses will be used by eevee SSS. TODO: only allocate stencil if needed.
2017-11-11GPUFramebuffer: Add possibility to blit stencil buffer.Clément Foucault