Age | Commit message (Collapse) | Author |
|
Create a separate pass for backface culled objects.
|
|
Most API's already use this convention.
|
|
Finding visible connected elements is often a direct lookup
when they're not connected to hidden geometry.
Add inline wrappers that avoid a function call,
gives minor speedup creating GPU edit-mesh data.
|
|
|
|
|
|
When Specular Transparent materials are used the world clipping
did not work on the transparent materials. The reason was that the
accum shaders did not vary on the existance of the clipping planes
This patch will variate the accum shaders when clipping planes are
active.
Reviewed By: fclem
Maniphest Tasks: T61023
|
|
Workbench render engine did not work when an odd number of AA samples
were used. A user could enter these values by disabling AA or set the
number of AA samples in the Render/Film panel to an odd number.
This commit will not perform TAA passes when AA is disabled.
For supporting the setting of 5 or 11 samples the bitmask was replaced
by an if statement as this was making the odd number not render
correctly.
As extra introduce the jitter samples of 5 and 11 so the images will
be more clean. a jitter sample of 11 used to read outside the allocated
space of the jitter samples.
Fix T60820
Reviewed By: fclem
Maniphest Tasks: T60820
Differential Revision: https://developer.blender.org/D4546
|
|
Gives 2 more bits to the segment count. Also subtract 1 because segment
count cannot be negative.
|
|
When using LookDev in Quad view the cache was only updated for the first
Q-view. The evaluation data of the last cache was not stored with the
lightprobe textures. As the evaluation data was reused between the
Q-views only the lightprobe textures of the first view was updated.
With this patch the evaluated data is stored amongside the actual
lightprobe textures.
Fix T59046
Reviewed By: fclem
Maniphest Tasks: T59046
|
|
The annotation drawing functions were using gpencil prefix and it's better to keep all annotation code separated to avoid confusion.
|
|
|
|
|
|
Exposes errors in some cases when compared against incompatible values.
|
|
|
|
Was due to incorrect output size. Use engine->resolution_x/y instead of
computing the size on the fly from the scene specific settings (which are
not overwritten by the rendering scene).
|
|
|
|
This commit groups several options that were tested in grease pencil branch:
- Changes to fill algorithms and improves, specially in small areas and stroke corners.
New options has been added in order to define how the fill is working and internally there are optimizations in detect the small areas in the extremes.
Kudos to @charlie for coding this fill improvements.
- New 3D cursor view plane option.
Now it's possible to lock the drawing plane to the 3D cursor and use the 3D cursor orientation. This allows more flexibility when you are drawing and reduce the need to create geometry to draw over surfaces.
- Canvas Grid now can be locked to 3D cursor.
- New option to reproject stroke using 3D cursor.
- Small tweaks and fixes.
Changes reviewed by @pepeland and @mendio
|
|
|
|
|
|
Also minor changes to make empty axis match armature axis.
|
|
|
|
|
|
|
|
Tweaked the tracing parameters again to avoid rays terminated before first
iteration.
|
|
|
|
Was caused by 0 pixel extent rays which did not trace at all. Bumping the
threshold for degenerate rays fixes it.
|
|
Normal Matrices were not normalized, leading to non-normalized vector
rotations results.
|
|
|
|
It was just a bad mapping of the ogl depth to scene linear depth.
|
|
The shaders are: `GPU_SHADER_3D_FLAT_SELECT_ID` and `GPU_SHADER_3D_UNIFORM_SELECT_ID`.
This commit allows the drawing of the mesh select ids to be done on a 32UI format texture.
This simplifies the shader that previously acted on the backbuffer and had to do an uint to rgba conversion.
Differential Revision: https://developer.blender.org/D4350
|
|
I don't really like forcing RGBA16F for Albedo render but that's ok since
the texture is shared with the effect_fb.
|
|
Fix again this bug. Maybe it was introduced when change how wireframe mode by object works.
|
|
Enable depth picking by default.
This adds new 'gpu_flag' since it's not so relevant to add GPU drawing
options into uiflag & uiflag2.
This resets the recently added smooth edge flag.
|
|
Mostly functions wrapping args, not confirming to our style guide.
|
|
Invert the texture of the stroke if the random UV is activated. Before, this parameter only affected to dot mode, but not to line strokes.
The texture is inverted vertically.
|
|
Fix missing attribute in vertex shader. Theses are optimized out if using
volumetric shader but on MacOS they seems to be needed.
|
|
This fix saves the camera matrices in order to not call
BKE_animsys_evaluate_animdata during each draw loop. This function tags
the view as dirty even if the camera does not move.
This effectivly, avoids the constant reset of TAA.
|
|
Need to pass the image user along to get the frame number.
|
|
This was because color is not present in the density texture if there is
only one constant color. Adding it as a uniform.
|
|
Draw manager was checking for particles being enabled in viewport, but
actual evaluation was happening for render. Now the check in draw manager
properly follows current evaluation mode.
Additionally, de-duplicated some check, by moving everything needed to
a single place.
Annoying part is the const-cast, that could be cleaned up later by
modifying some underlying functions.
|
|
|
|
|
|
|
|
This was due to environement not being rendered with alpha blending. So
color was still written and contributed to the final render color. Now
we multiply by background alpha so that it removes any background pixels
intensity.
For this reason this made the (incorrect) final premult unecessary.
|
|
This was caused by a missing state reset. Also adding safety state reset
before and after drawing (might not be necessary).
|
|
This was the cause of some issue with normal mapping. This way is cleaner
since it does not modify the state of the drawcalls and other ad-hoc
solutions to fix the problems down the road. Unfortunately, it does require
to fix every sampling coordinate for this texture.
Fix T62215: flipped normals in reflection plane
|
|
This is needed before any drawcall. If not, undefined behavior can happen.
|
|
When the object view is set to Wireframe, the display must be set as wireframe view with x-ray on.
Now the x-ray switch is handled by object.
|
|
|
|
2D artists have requested a way to see in viewport the name of the material assigned to a stroke. This is a special request for 2D animation and required to manage complex drawings with multiple materials on it. We don't need add a separate option for this in the panel.
Now, when enable Name option in the Viewport Display panel, when you select a stroke in edit mode, the name of the material is displayed near the first point selected.
Design reviewed by @mendio and @pepeland
|