Age | Commit message (Collapse) | Author |
|
When hiding the curve handles/points previously, the control points would still be drawn (loose verts).
Now we hide everything related to the handle if it is hidden.
Reviewed By: Clément Foucault
Differential Revision: https://developer.blender.org/D4373
|
|
The term 'eval' is often used by depsgraph result,
where this is just used for drawing.
|
|
When the first handle was hidden, all others would show as hidden too.
|
|
The term color is misleading, it's an integer id that happens to be
written to a color in some cases, then converted back to an integer.
|
|
Was confusing, unrelated to:
colbits, col_mask, col_group, actcol & totcol.
|
|
|
|
The dependency graph now handles updating image users to point to the current
frame, and tags images to be refreshed on the GPU. The image editor user is
still updated outside of the dependency graph.
We still do not support multiple image users using a different current frame
in the same image, same as 2.7. This may require adding a GPU image texture
cache to keep memory usage under control. Things like rendering an animation
while the viewport stays fixed at the current frame works though.
|
|
|
|
This removes the overhead of rendering the object one more time.
|
|
|
|
This introduce the wireframe batches. Creating the indices buffer does
not seems to slow down the sculpt in my testing (but it is kind of hard to
test reliably)
This includes a bit of cleanup in gpu_buffers.c.
|
|
|
|
|
|
We blit the depth buffer into the MSAA depth buffer so that wires are
properly occluded. This also makes the "In front" option work with MSAA.
|
|
|
|
This gets rid of the progressive fading of the edges as it does not work
with depth perception (sorting problem with alpha blending).
|
|
|
|
|
|
While \file doesn't need an argument, it can't have another doxy
command after it.
|
|
Also remove doxy comments for licenses and add missing GPL header.
|
|
When bmesh was in a branch we had both edit_mesh and edit_btmesh,
now there is no reason to use this odd name.
|
|
Rename for Camera, View3D (also CameraParams & Render not DNA)
|
|
Can be found in the viewport's simplify panel, allows to easily
disable high-res display for all the smokes in the scene.
|
|
Not sure what BIG is, it is HIGH RESOLUTION.
|
|
These were almost exact duplicates, use one engine for drawing both
kinds of vertex color.
|
|
Black wire can be hard to see against dark blue,
especially when shading is enabled.
Use light grey, matches 2.7x.
|
|
By default wire would z-fight against the surface.
Increase the bias, also don't adjust the 'w' component
since it causes bias that depends on the view direction.
|
|
Assign to local variables when setting up passes,
avoids mix-up between similarly named struct members.
|
|
When vertex/face selection are disabled - show all wire
ignoring selection & hidden state.
|
|
|
|
Tested on an `AMD Radeon HD 7570M`.
It seems that a VBO containing only `unsigned bytes` or `unsigned shorts` can't be read correctly in a shader.
Strange that if the index buffer repeats the drawing of the vertices (as was done before rBa04dd15193e6) the problem disappears.
The disadvantage of this solution is that the memory size for a selection VBO increases by about 4 times.
But the loss in optimization is negligible.
Thanks to @fclem for pointing out the possible source of the problem and reviewing the fix.
|
|
Remove forcing separate albedo when rendering. It was creating confusion.
|
|
It was caused by Null normal if the vertex is at origin. Just add a small
bias to avoid this case.
|
|
|
|
We have a display flag already, use it instead.
Object.display is kept in RNA, exposed via a nested struct,
we can move other display options there.
|
|
|
|
Also compare clipping with the draw context instead of
accessing the RegionView3D, currently they're matching
but this might not always be the case.
|
|
The struct name is descriptive,
this isn't going to be confused with other variables.
|
|
|
|
|
|
|
|
This avoid edges covering a part of vertices.
This comes at a (very minor) perf cost as vertices can cover some edges
pixels and early discard them with the depth test. But this only happens
in artificialy dense mesh and is not a real problem for common cases.
|
|
Only add each vertices to point ibo once. That requires tagging each mvert
in the case of modifier preview.
|
|
This make sure only one line is drawn per edge.
It makes the function mesh_create_edit_loops_points_lines() non-thread safe
but this is fine as of now because nothing is multithreaded at this point.
Also this is the only function use this flag so it might be OK.
The side effect is that we don't need to use depth test in edit mode
overlay so the masking artifact will not appear.
|
|
Force set the flag vertice selected in this case.
|
|
This remove the hint on the face edges. This is because the hint was
displayed on both sides and was requiring to draw every edges twice.
|
|
This make it (theoriticaly) compatible with all supported hardware with
consistent results.
Also we now draw the lines with analytic anti-aliasing instead of relying
on MSAA (which offers less benefits in our case).
The remaining aliasing comes from edges cut in half by the mesh which is
not rendered with MSAA. Hopefully this is not too much distracting and only
happen if the face is almost parallel to the view.
|
|
|
|
|
|
Clear the function that blend pixels and change parameter.
|