Age | Commit message (Collapse) | Author |
|
|
|
frontside object in 3d-window
Now the depth order of objects when trying to select them is only used when not in X-ray mode.
Before, this was only the case in wireframe mode regardless of X-ray settings.
I've also unified the usage of V3D_XRAY and XRAY_FLAG as they were basically copies of each other.
Reviewed By: Clément
Differential Revision: http://developer.blender.org/D4504
|
|
- The ambiguous term 'handle' was used where 'ensure'
is typically used (get or add when missing).
- Rename `current` to `active`, all `current` functions which were
also ensuring.
- Clarify what is being operated on, using `BKE_gpencil_object_*` for
objects, `BKE_gpencil_brush_*` for brushes.
|
|
|
|
If the Brush had a pinned material with texture, but the material slot was in a different material, the texture was not working.
The material was not recovered from brush, but from object.
|
|
The hotspot was generated by mesh_cd_layers_type_overlap who was testing
way more data than it should have.
Here we reduce the whole CD layer mask to a 32bit bitflag that is easily
or'ed and tested.
Bonus point: We use atomic operation to merge the mask in order to allow
future multi-threading. (this was a TODO)
In the scene attached to T58188 this removes 5% of CPU time.
|
|
release_texture_slots() and release_ubo_slots() were one hotspot when
drawing taking ~9% of total CPU counters for no reason.
This was because of the loops using GPU_max_textures that was overkill and
slow.
Replace those by a simple 64bit bitwise OR operation.
|
|
|
|
When drawing in big files, the first points of the stroke were not smooth because the system was doing a copy of the depsgraph datablock.
Now, the depsgraph is not updated at the beginning and the feeling is far better, especially for big files.
To avoid the copy, the original datablock is used while drawing, because it's faster the lookup of the original data, than a full datablock copy.
Also some cleanup of the code.
|
|
When texture drawing was enabled the fallback materials were not transparent.
The reason was that the solid material was requested. This patch will requesting
in this case the material from the forward renderer.
Fix: T63077
Reviewed By: fclem
Maniphest Tasks: T63077
Differential Revision: https://developer.blender.org/D4641
|
|
Invert X axis of the Window Matrix (AKA Projection matrix) instead of the
View matrix.
|
|
This was caused by a missing check for those option.
|
|
|
|
In final rendering mode the display type was tested for
visibility flag. This should only occus when doing viewport
rendering
Reviewed By: fclem
Maniphest Tasks: T63056
Differential Revision: https://developer.blender.org/D4643
|
|
This was making Autumn being half naked.
Issue was introduced by rBe72dc667c4d3
|
|
viewport's bounds.
|
|
The problem was that tangent layers (being computed on demand in the batch
cache generation) were generated but if MR_DATATYPE_LOOPTRI was not present
(in some cases) and the looptri_len was 0, leaving the CDATA layer cleared.
|
|
|
|
|
|
|
|
|
|
Possibly fixes T63005.
Reviewers: fclem
Reviewed By: fclem
Differential Revision: https://developer.blender.org/D4637
|
|
The issue is that Eevee directly evaluates animation on a datablock which
is a part of active dependency graph.
This is a broken logic by design and requires a complete revamp to support
more real life cases when camera is parented to a camera rig, but it is
beyond of what i can do with a simple bugfix.
|
|
|
|
The issue was the manipulated depth for images would be used when doing distance depth checks.
Now we will use the actual depth of the image object when doing such tests.
Reviewed By: Clément Foucault
Differential Revision: http://developer.blender.org/D4616
|
|
|
|
This makes it easier to exclude a surface from casting shadows and can be
used to manipulate the shadows even for opaque surfaces.
Versionning ensure that old behavior is transfered to new rendering logic.
|
|
This was due to some shading resources not being bound for the shadow
shader. This commit completely remove the shading part when in a shadow
shader. Thus making it a bit more lightweight and removing the needed
sources.
|
|
This is to fix the slowdown issue experienced on windows when rendering
from command line.
Fix T59649 Eevee in command-line batch mode is slow with particles/duplis
|
|
Now we do the color management inside the Draw manager and output CM byte
buffer.
|
|
The wrong transformation was used. Add a new matrix specially for this case.
This also fix the Node texture coordinate that was suffering the same issue.
|
|
|
|
Until now, Orcos were computed by the gpu (GLSL) and were not taking into
account the modifier stack (breaking orco for deformed mesh).
Now Orco is now computed on CPU but only if a modifier stack is present.
Tagging that an ORCO layer is present is done via a 4th component, which is
a waste of memory/bandwidth. Best would be to do the same as auto attrib
color space and save a bool uniform somewhere but for now it's too
disruptive.
|
|
Apparently some drivers don't allow `glReadPixel` read out pixels of texture boundaries.
Intersect `rect` to avoid such cases.
|
|
When texure shading is enabled, the transparency accum shaders were not set/updated.
This resulted into a crash when transparent objects were rendered when shading mode
was set to texture.
This patch will add the V3D_SHADING_TEXTURE_COLOR to the modes for OIT so the
shaders are set.
Reviewed By: fclem
Maniphest Tasks: T62874
Differential Revision: https://developer.blender.org/D4592
|
|
Objects that internally uses DispList do not cast shadow in the workbench.
Their outline is also not visible in object mode. The reason for this is
that edge detection was not implemented for Display Lists. This patch will
implement the edge detection.
Reviewed By: fclem
Maniphest Tasks: T62479
Differential Revision: https://developer.blender.org/D4605
|
|
The root point of a bone is now always drawn unless it is connected to an other bone.
Reviewed By: Clément Foucault
Differential Revision: http://developer.blender.org/D4194
|
|
disabled if not used.
This may fix a glitch detected when you perform edited mesh selection.
See comment in rB00bdb5cdf08f
|
|
The reflection was set to use the 1x1px texture as rendering target and was
considered valid reflection texture.
|
|
This was technically a feature request but it was quite simple to implement
so I did it quickly. Also it is much more consistent now.
|
|
Pass binormal sign via object info.
|
|
Seems to be a problem with Nvidia drivers. glFlush does not work but
glFinish does ensure correct multithreading.
|
|
This was caused by sign(cubevec.xy) returning 0.0 when one component was 0.
Thus making the resulting component component 0.0 instead of 0.0.
|
|
Possible solution for T62999.
|
|
|
|
|
|
Differential Revision: https://developer.blender.org/D4598
|
|
DRW_draw_depth_loop.
|
|
Reviewed By: fclem
Maniphest Tasks: T62189
Differential Revision: https://developer.blender.org/D4593
|
|
This fix some issue with the AA on edit mesh edges.
|