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-05-27Cleanup: Fix warnings in bf_gpuRay Molenkamp
Declaration and implementation got out of sync leading to warnings.
2019-05-22GPU: Refactor GPU_batch_draw_range_exClément Foucault
Rename it to GPU_batch_draw_advanced and use base instance when possible. Also add GPU_batch_bind to bind the vao independantly of drawing commands.
2019-05-20GPU: Use uint in GPU_batch_uniform_1ui.mano-wii
2019-05-14GPU: Add GPU_vertbuf_discard and GPU_BATCH_UNUSEDClément Foucault
GPU_vertbuf_discard to clear buffer containers in place. GPU_BATCH_UNUSED to tag batch that are cleared and not immediatly usable.
2019-04-17ClangFormat: format '#if 0' code in source/Campbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-04-16Cleanup: trailing commasCampbell Barton
2019-04-05Fix T61035 Draw manager crash opening file with curvesClément Foucault
Move free callback call to GPU_batch_discard to prevent the crash. The issue was that clearing can happen after referencing to an instance buffer and that's perfectly legal.
2019-03-29DRW/Eevee: Add correct support for OrcoClément Foucault
Until now, Orcos were computed by the gpu (GLSL) and were not taking into account the modifier stack (breaking orco for deformed mesh). Now Orco is now computed on CPU but only if a modifier stack is present. Tagging that an ORCO layer is present is done via a 4th component, which is a waste of memory/bandwidth. Best would be to do the same as auto attrib color space and save a bool uniform somewhere but for now it's too disruptive.
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-10Cleanup: use shorter name for shader configCampbell Barton
The struct name is descriptive, this isn't going to be confused with other variables.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-06Fix T61196: Mesh select ignores clippingCampbell Barton
Select clipping now works when x-ray is disabled.
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-23Cleanup: use eGPU prefix for GPU enum typesCampbell Barton
2018-12-18DRW: Instance: Makes it possible to have instances of a non-init batchClément Foucault
2018-12-17Mesh Batch Cache: Port Texture paint batches to new batch requestClément Foucault
2018-12-14GPUBatch: Add GPU_batch_clear to clear batches without freeingClément Foucault
2018-12-01Cleanup: redundant NULL checksCampbell Barton
Also use unsigned shifting for values not in int range.
2018-08-30Cleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)Dalai Felinto
2018-07-18Cleanup: style for GPU moduleCampbell Barton
2018-07-18GWN: Port to GPU module: Replace GWN prefix by GPUClément Foucault
2018-07-18GWN: Port to GPU module: Move files to GPUClément Foucault
This does not include all the struct and type renaming. Only files were renamed. gwn_batch.c/h was fusioned with GPU_batch.c/h gwn_immediate.c/h was fusioned with GPU_immediate.c/h gwn_imm_util.c/h was fusioned with GPU_immediate_util.c/h
2018-07-15Cleanup: split GPU_batchCampbell Barton
Split out presets and utilities for creating batches. These functions are quite specialized and not related to typical usage.
2018-04-22Cleanup: trailing spacesCampbell Barton
Applied to newly added files in 2.8
2018-04-05GPUBatch: Change preset managment system.Clément Foucault
Now use a list of preset batches with a function to add new ones to this list. This removes the need of new functions all over the place to reset/exit.
2018-03-30BLF: Use Batch API instead of IMM.Clément Foucault
This is not a perfect win just yet. It's now calling glBufferSubData for every call (instead of using glMapBufferRange which is almost faster), but with this system we will be able to batch drawcalls together. See next commit.
2018-02-26WM/GPU: Clear VAO cache of batch preset when switching context.Clément Foucault
This is needed for multiple windows to draw the batch presets. This will not be needed once we use only one context for UI.
2018-02-26DRW: Add new Draw Manager OpenGL Context.Clément Foucault
This separate context allows two things: - It allows viewports in multi-windows configuration. - F12 render can use this context in a separate thread and do a non-blocking render. The downside is that the context cannot be used while rendering so a request to refresh a viewport will lock the UI. This is something that will be adressed in the future. Under the hood what does that mean: - Not adding more mess with VAOs management in gawain. - Doing depth only draw for operators / selection needs to be done in an offscreen buffer. - The 3D cursor "autodis" operator is still reading the backbuffer so we need to copy the result to it. - All FBOs needed by the drawmanager must to be created/destroyed with its context active. - We cannot use batches created for UI in the DRW context and vice-versa. There is a clear separation of resources that enables the use of safe multi-threading.
2018-01-20GPU_batch: Add GPU_batch_wire_from_poly_2d_encodedCampbell Barton
Draws wire around polygon shapes: better visibility w/ any background color.
2018-01-15GPU_batch_from_poly_2d_encoded: optional rctf argCampbell Barton
Also use compiler attributes
2018-01-15GPU_batch: Add utility to create 2D shapesCampbell Barton
Shapes are represented by compact byte array, encoded by 'make_shape_2d_from_blend.py' in the tools repo.
2018-01-15Cleanup: split GPU_batch_presets into own fileCampbell Barton
Mixing other batch code in this file easily shadowed existing variables. Keep presets separate (we may have more, 2D & 3D presets)
2017-10-07Cleanup: style, duplicate includesCampbell Barton
2017-08-16Cleanup: rename GPU gawain functionsCampbell Barton
Were using Batch_ prefix still
2017-08-15Cleanup: use 'gwn' prefix for gawain filenamesCampbell Barton
Looking up names project wide or setting breakpoints wasn't so. Names like common.h or element.h are also too generic.
2017-06-19Gawain API naming refactorCampbell Barton
Use consistent prefix for gawain API names as well as some abbreviations to avoid over-long names, see: D2678
2017-04-13Use regular header guards in GPUCampbell Barton
2017-03-17move Gawain library to internMike Erwin
Before now it lived in source/blender/gpu for convenience. Only a few files in the gpu module use Gawain directly. Tested on Mac, time to push and test on Windows. Todo: some CMake magic to make it easy to #include "gawain/some_header.h" from any C or H file. Main problem here is the many editors that include GPU_immediate.h which includes Gawain's immediate.h -- is there a way to avoid changing every editor's CMakeLists?
2017-03-06OpenGL: Object bound drawing.Clément Foucault
2017-02-11OpenGL immediate mode: gluSphere replacementClément Foucault
Updated interface_draw.c to use the new sphere batch.
2016-09-15Extend Gawain to use Blender's built-in shadersMike Erwin
Was already done for immediate mode, but rearranged code to make a clean separation. Cleaned up #includes for code that uses this feature. Added same for batched rendering.
2016-09-13Gawain: geometry batches (unfinished)Mike Erwin
Vertex Buffer to store vertex attribute data. Element List (AKA Index Buffer) to select which vertices to use. Batch combines these into an object that can be built once then drawn many times. Porting over from the C++ version… Most of this C code is compiled but unused. Some of it is not even compiled. Committing now in case I’m lost at sea.