Age | Commit message (Collapse) | Author |
|
|
|
The fix was move the grease pencil engine before overlays
This also fix the origin not visible bug T62100
There is a limitation of this fix, but we cannot fix both problems. If you have object behind a transparent graese pencil objects, this objects will not be visible.
Thanks @fclem for his advices to fix this bug.
|
|
|
|
In fact, any modifier on top of multires would lead to crash.
Was missing pointer update.
Basically, bring the control flow closer to 2.7.
|
|
|
|
|
|
This is still is a dirty workaround.
Note that we are drawing the whole sets of point multiple times. While this
is ineficient, the main bottleneck is CPU transformation.
|
|
This behavior matches back-face culled mesh objects,
where the wire outline doesn't depend on the viewing angle.
Applying this before empty visibility check for view framing,
since it's strange if viewing all gives different results
depending on back-face culling.
|
|
|
|
Before, the caps were not generated for texture materials, now, the endcaps are generated and adapt the texture.
|
|
Note this was broken even in 2.7x.
We had a different logic for the plane wire, as for the plane itself.
And they were both wrong when changing the camera shift or the stereo
pivot.
Both of their logic is now unified and correct.
Also I had to create a new gpu batch for the quad wires, since there is
no state that allows me to filter out the geometry, and the square gpu
batch is quite different than the quad one (2d x 3d and orientation).
|
|
This was introduced on the MSAA fix for transparent passes (61039bf71376).
|
|
The degenerate triangle threshold was too big. Making it an equal test can
introduce problems in other cases but I could not make it fail.
|
|
Volume itself was working, but buggy. The issue was that transparent shapes
does not write to depth buffer. But the custom MSAA resolve shader discard
pixels that did not write to depth making them transparent.
Transparent passes should not be inside the MSAA passes, this is also
a matter of performance.
|
|
This is unreported. When using volume opacity 0.0, the wires were not visible
(nor were they in other cases, but this was the most obvious one).
The volume itself is still glitchy, and slightly worse than 2.79. I
still don't know how to fix this though. It seems a common problem
(see T62262).
|
|
Note 1: Volume drawing still draws differently than 2.7x.
Note 2: Camera lens widget still ignores stereo.
|
|
State tracking works in pretty much all cases but calling the clear command
does change the write mask outside the draw manager. For now we just reset
the write mask before each pass.
Fix T62203 The selected bone is not highlighted inside the other bone.
|
|
|
|
|
|
Callbacks were drawing with the wrong blend equation and that made some
tools drawing fail.
|
|
For some reason the mat_nr can be superior to the number of material slots
present on an object. Just cap this number to the max available slot.
|
|
Fixes T62179 Viewport Ghosting on rigs
|
|
Avoid allocation for each string,
improves redraw speed for text heavy views.
A contrived test showed FPS ~18.5% speedup but this doesn't represent
typical usage.
|
|
|
|
|
|
The crash was detected in draw_manager, but the real problem was a wrong pointer that corrupted the struct, so the free function failed.
Redesign this area to keep pointer correct all the time.
|
|
The selction use it's own frambuffers.
|
|
Match the UI naming (changed since 2.7x).
|
|
In previous commit introduced this bug. The flag was inverted and the mode was not working.
|
|
Requested by some users who prefer old wireframe precision.
Smooth wires are still enabled by defaults as they don't have a noticeable
perf impact.
Application restart is needed for changes to take effects.
|
|
|
|
There was a conflict between Object "In Front" and how the strokes were managed in Stroke panel for grease pencil datablock.
In order to keep consistency, the order of the object has been moved to Object level and now it's using the standard "In Front" flag. As all it is 3D, the option "Back" has been removed.
This also fixes the problem with task T62137.
Also related to commit 54ffc4e19dc4 and D4405
|
|
Some old AMD drivers crash when a vbo with stride 1 is used a few times.
I have not found a real solution to this problem. So the solution was to use a vbo with stride 4 (which in theory is less efficient and takes up more memory space).
|
|
|
|
The TODO is old and the issue does not seems to appear anymore.
If bugs emerge from this commit it's most likely to be a bad usage of the
API.
|
|
This Fixes T61823: Flickering material problem with eevee
|
|
Tested on `AMD Radeon HD 7570M`.
The reason for crash reduction is still unknown.
|
|
To be consistent, the alpha must be set to 1 when solid mode is enabled.
|
|
There was a bug when selected Solid mode with Material or Texture mode. The textures were not visible.
Now, the mode is passed to shaders to decide if use the solid color or the result texture color. The mode is passed using an array with shading type and mode.
|
|
|
|
-Wireframe use Background color for X-Ray off
- Added support to Solid mode.
- Solid mode shows fill or not depending X-Ray.
- Solid can use Single, Material, etc.
- Wireframe and Solid mode don't show FXs.
|
|
|
|
Add back some (subtle) fresnel effect on object wireframe.
Dupli/set object still remains flat and need more work.
|
|
Differential Revision: https://developer.blender.org/D4433
|
|
Workaround to tranform feedback not working on mac.
On some system it crashes (see T58489) and on some other it outputs
garbage (see T60171).
So instead of using transform feedback we render to a texture,
readback the result to system memory and reupload as VBO data.
It is really not ideal performance wise, but it is the simplest
and the most local workaround that still uses the power of the GPU.
This should fix T59426, T60171 and T58489.
|
|
|
|
The outline now has some alpha to be more consistent with other Blender areas.
|
|
The main overlay switch and outline option must be checked.
|
|
This line was added accidentally in the header text.
|
|
The selection outline of 1 pixel was too thin.
|