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
2018-12-14Curve Batch Cache: Add back support for shaded geometryClément Foucault
This changes a bit the batches data structure. Instead of using one vbo per material we use one for all material and use index buffers for selecting the correct triangles. This is less optimized than before but has potential to become more optimized by merging the wireframe data vbo into the shading one. Also the index buffers are not strictly necessary and could be just ranges inside the buffer. But this needs more adding things inside GPUIndexBuf.
2018-12-14Curve Batch Cache: Rework Implementation to use new batch requestClément Foucault
Shaded triangles are not yet implemented (request from gpumaterials). This also changes the mechanism to draw curve normals to make it not dependant on normal size display. This way different viewport can reuse the same batch.
2018-12-10DRW: Batch Cache: Mesh: Port edit mesh batches to batch request methodClément Foucault
This also do some renaming/cleanups.
2018-12-07DRW: Rework wireframe overlay implementationClément Foucault
The shader is way simpler and run way faster on lower end hardware (2x faster on intel HD5000) but did not notice any improvement on AMD Vega. This also adds a few changes to the way the wireframes are drawn: - the slider is more linearly progressive. - optimize display shows all wires and progressively decrease "inner" wires intensity. This is subject to change in the future. - text/surface/metaballs support is pretty rough. More work needs to be done. This remove the optimization introduced in f1975a46390a5bf85bb7012375f9bc1e761fc516. This also removes the GPU side "sharpness" calculation which means that animated meshes with wireframe display will update slower. The CPU sharpness calculation has still room for optimization. Also it is not excluded that GPU calculation can be added back as a separate preprocessing pass (saving the computation result [compute or feedback]). The goal here was to have more speed for static objects and remove the dependency of having buffer textures with triangle count. This is preparation work for multithreading the whole DRW manager.
2018-12-04Wireframe: Optimization: Only draw triangles that have edgesClément Foucault
This only happens after a certain threshold. We sort triangles into 2 bins (start and end of the buffer) based on a threshold and just draw the start bin if the wireframe slider is low enough. This optimization is disabled for deformed meshes. This should help resolve (to some extent) T58188.
2018-11-23DRW: Support Wireframe for cruve/surface/text objectsClément Foucault
2018-09-26Edit Surface: Use edit curve engine to display edit surfaceClément Foucault
It's so similar in practice that we don't need a separate engine for edit surface overlays.
2018-09-26Curve Edit: Cleanup/Improve/Fix handles drawingClément Foucault
Now handles are drawn using index buffer instead of duplicating memory requirement. Also make use of shader tricks to draw handles antialiased, and respond to UI scalling. Make vertex point match edit mesh vertex size.
2018-09-25Edit Curve: Fix cannot hide handlesClément Foucault
2018-09-25Curves: Move draw options to overlaysClément Foucault
This commit add one regression: it is impossible to currently hide handles in the viewport. But this should be fixed in another commit.
2018-09-05Edit Mesh: Add support for draw option parametersClément Foucault
The visuals was already implemented but we could not toggle them off.
2018-08-30Cleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)Dalai Felinto
2018-08-23Rename: *_batch_cache_dirty > *_batch_cache_dirty_tagDalai Felinto
2018-07-18GWN: Port to GPU module: Replace GWN prefix by GPUClément Foucault
2018-07-08Cleanup: rename 'ct' to 'len' for gawainCampbell Barton
2018-07-03Cleanup: typosCampbell Barton
2018-01-10Curve/Surface Display: UV supportmano-wii
2018-01-09Curve Edit Mode: Use curve handle theme colorsmano-wii
2018-01-03Fix crash when you change the curve resolution in Edit Mode of the Blender ↵Germano
Render engine Same problem as previous commit, but now in `drawobject.c`. Also added a comment to the equivalent line in `draw_cache_imp_curve.c`.
2018-01-03Curve Edit Mode: Fix crash when the U-resolution of the curve is changedGermano
`normal_len` did not follow the value of the loop that is executed to add the vertices, being different from the vbo size
2017-12-19Draw Manager: draw_cache_imp_displist, always return IndexBuf even when ↵Germano
there is no index This prevents possible errors with materials and a crash with low resolution metaball. Also a small cleanup was done in the code.
2017-12-17Fix triangles indexbuf of Curve Displists was being discarded incorrectlyGermano
They were discarded when shaded surfaces were requested thus bringing glitches to the outline of the selected Displists Objects
2017-12-14Draw Manager: Recalculate batch of Curves, Surfaces and Texts when a ↵Germano
property is changed
2017-12-14Fix crash with DispLists without verticesGermano
Wee must return VertBuffers even when its size is zero
2017-12-14Support for Batchs split by material for objects of type Curve, Surface, and ↵Germano
Text **ToDo:** - add vertbuff for UV (what can be adapted from `dl_surf_to_renderdata`)
2017-08-16Gawain: remove GWN_batch_discard_allCampbell Barton
Use ownership flags instead.
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-05-17Cleanup: group VBO attributes in a structCampbell Barton
Some names are a bit arbitrary, this makes it clear which names are VBO attributes.
2017-04-21Cleanup: move draw-cache creation from BKE to DRWCampbell Barton
Creating draw-cache should only ever be used by the draw-manager.