Age | Commit message (Collapse) | Author |
|
|
|
This is work in progress. Look is not final.
This align data VBO data structure used for edti cage drawing to the one
use for normal drawing.
We no longer use barycentric coords to draw the lines an just rasterize
line primitives for edge drawing. This is a bit slower than using the
previous fast method but faster than the "correct" (edge artifact free)
method. This also make the code way simpler.
This also makes it possible to reuse possible and normal vbos used for
shading if the edit cage matches the
This also touches the UV batch code to share as much render data as
possible. The code also prepare for edit cage "modified" drawing cage (with
modifier applied) but is not enabled since selection and operators does not
work with modified cage yet.
|
|
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.
|
|
Also rename GPUVertexAttribs to GPUVertAttrLayers,
avoids confusion with GPUVertAttr which isn't closely related.
|
|
|
|
|
|
|
|
typo in rBdc7e49298940
Reviewers: fclem
Maniphest Tasks: T60810
Differential Revision: https://developer.blender.org/D4244
|
|
Use loose_edges and loose_verts buffer instead of detecting them manually.
|
|
|
|
|
|
Was caused by a missing vbo attachement.
Also fix said Vbo refreshing when selecting.
|
|
This is a small optimisation that make UV selection faster.
|
|
The skin modifier does not keep the UV layers.
This just add a safety check when there is no UV layers.
|
|
This removes code duplication and put an end to the old "create at request"
batch creation.
Also it uses the same vbo as the uv layer used for shading. Reducing VRAM
usage.
Also fixes the modified uv display in uv edit mode.
|
|
This is now done in shader so that the batches are shared across ImageUV
areas.
|
|
This is in order to allow more spaces to have their batches created at the
same time and sharing the batches.
This is part of the effort fo making the drawing code more optimized. This
commit however should not introduce any difference.
This commit bypass the aspect ratio correction for angle stretch display
but this should be fixed in the next commit.
|
|
|
|
This makes it more future proof and remove baked id offset inside the vbos.
Instead we add the offset as a uniform. This makes it possible to reuse
the vbos instead of discarding them all the time.
Also using batch request may reduce batches creation time.
|
|
|
|
This is in order to be able to call DRW_mesh_batch_cache_create_requested
outside of the draw manager
|
|
|
|
|
|
|
|
Fix T59637: Crash report - Overlays -> Face Orientation causes crash
|
|
|
|
|
|
|
|
|
|
Also add proper support for mapped meshes (deformed by modifiers in edit
mode). So this fixes the shadows of workbench in edit mode.
|
|
THis is in order to avoid the jungle of names being different at each
step of the API.
Also removes some unused functions.
|
|
|
|
|
|
|
|
|
|
This reduce the number of batch/data needed. Stores a select/visiblee
flag inside the vert/loop normals.
|
|
|
|
|
|
|
|
This now only upload data per loops to the GPU, making use of index buffer
to draw polygon. This make use of the vertex cache, speed up renders
and saves a lot of vram.
Update performance is also slightly faster and can even be improved further
by updating only uvs or vcol independently.
This commits breaks texture paint batches. It will be added back in another
commit.
|
|
Fixes T58298 Nurbs circle and curve dont draw in objectmode
Fixes T58107 Modified curves/surfaces/fonts do not show their eval mesh
|
|
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.
|
|
|
|
Edit mode triangles does always need to have access to faces for visibility
and select/active flags.
|
|
|
|
Caused by ae1f563899de4
|
|
Also minor style cleanup.
|
|
This only make the edge fully selected. There is still no gradient like in
2.79 when only one vertex is selected.
|
|
This also do some renaming/cleanups.
|
|
|