Age | Commit message (Collapse) | Author |
|
|
|
Cycles check for infinity and return 0.0 otherwise.
|
|
When running blender in paths with special characters this caused issues.
|
|
|
|
Logic about computing of poly normals in final stage of modifier stack
evaluation was broken, giving also wrong loop normals.
|
|
This patch also improve cache locality of the IBO filling. I did not benchmark if it made
any difference.
|
|
|
|
drw_batch_cache_generate_requested() is only needed when the geom needs to be
created.
Went from 37fps to 47fps with artificial testcase (lots of bones with one custom shape). Baseline 2.79 is 24fps.
Also fix the drw_shgroup_bone_custom_wire.
|
|
Display sculpt mesh if there is a sculpt session.
|
|
If the draw uses the same id as the previous draw, there is no need to read the depth
buffer at this point, avoiding a CPU-GPU sync bubble.
Fixes T62511 Selection is significantly slower in production scenes.
With this patch glReadPixels is not the bottleneck. Regular drawing Is still very
slow so I would suggest fixing the regular drawing first before trying to
improve the selection algorithm.
|
|
Fix instancing batches not being reused by custom bone shapes.
Drawing thoses is now faster than 2.79 (40fps instead of 30fps)
|
|
Adding and removing drivers must always tag relations for update.
|
|
Also support drag for box-select, matching the outliner.
D4660 by @Poulpator with edits.
|
|
|
|
This was cause by the SSS energy being lost when using SSRefraction. Also the mix
shader did not merge the discarded SSS light into the radiance.
|
|
|
|
That was causing crashes when loading uncompressed avi files created with blender 2.79.
|
|
almost zero horizontally
Reviewers: brecht
Maniphest Tasks: T63605
Differential Revision: https://developer.blender.org/D4690
|
|
If the Tabs as Spaces settings is enabled for the text block. This avoids
issues with inconsistent indentation when pasting Python code from another
source.
Differential Revision: https://developer.blender.org/D4512
|
|
This restores functionality lost with e8c9e85401ef.
Differential Revision: https://developer.blender.org/D4714
|
|
screen_geom_vertices_scale already checks if areas are too small for header.
And header size will be set in region_rect_recursive from ED_area_initialize.
Differential Revision: https://developer.blender.org/D4711
|
|
Differential Revision: https://developer.blender.org/D4712
|
|
Differential Revision: https://developer.blender.org/D4682
|
|
The culing still seems to be off but at least it is enabled now.
|
|
|
|
appear in front of Reference Images
In orthographic, the z-depth was wrong.
|
|
|
|
Reviewers: ISS, brecht
Differential Revision: https://developer.blender.org/D4737
|
|
Differential Revision: https://developer.blender.org/D4674
|
|
Differential Revision: https://developer.blender.org/D4679
|
|
Differential Revision: https://developer.blender.org/D4710
|
|
Contributed by EitanSomething.
Differential Revision: https://developer.blender.org/D4735
|
|
Using mat4 in a uniform buffer object was not properly supported.
|
|
Enabling the drawing of the mesh analysis overlay.
Currently the settings are part of the scene toolsettings. What makes sense,
for 3d printing, but does not fit well with the per viewport blender 2.80
overlays.
Reviewers: brecht, fclem
Differential Revision: https://developer.blender.org/D4707
|
|
Modifier previews should be implemented by a more generic system.
The current system is already a hack and needed a lot of work
to get it working again in 2.80 and even so that would be replaced by
another system in the near future.
For Vertex Colors we have a work around in place by using Workbench
Vertex Colors. For Vertex Weights we loose the previewing. Not sure
targetting weight is working (even for 279).
Reviewed By: brecht
Maniphest Tasks: T63857
Differential Revision: https://developer.blender.org/D4734
|
|
We always keep the children that are not in a collection listed in the
end of the children list due to design. This way we can visually draw
them with dashed vertical lines.
This was already working for alphabetical sorting, however whenever
sorting was disabled, we would end up with a list of children ordered
regardless of their state (whether the child itself is in the collection).
|
|
As known as outliner parenting hierarchy take two.
Implemented suggestion by Brecht Van Lommel:
```
The problem is that it's iterating over te_parent->subtree,
while at the same time removing elements from it as tree_to_remove_objects_from.
Further there is a linear lookup to find tree elements corresponding to a child
object, which causes O(n^2) time complexity overall and so poor scaling for many
objects in a collection.
The more efficient solution that also fixes the crash could be:
* Build a map from Object* to a list of TreeElement* matching the object.
* For all objects in the tree lookup the parent in this map, and move or add
tree elements as needed.
```
I removed the grouping of the children not in collection in the end of
the children list when sorting was not enabled. If we think we really
need it back it can be tackled separately.
That said, despite due to performance reasons, I can't see why would
someone not have the a-z sorting enabled. And if they do, it is not the
end of the world to have interleaved children that are in the collection
or not in the parent subtree.
|
|
tellp() is not valid to check if the string stream is empty. Just get the
string directly as there is no obvious efficient method to check otherwise.
|
|
This is likely to cause crashes in many file, so disable this feature until
it is fixed.
|
|
|
|
Reviewers: brecht
Maniphest Tasks: T63841
Differential Revision: https://developer.blender.org/D4733
|
|
Force Displist to Mesh conversion if there is any modifier.
This is until we find a better way to store the batches per objects.
Also fix draw cache functions that were not returning final mesh edges.
|
|
|
|
The crash is related to the format, but the real reason is unknown.
|
|
I also had to make the "New" operator a submenu in the
`File Context Menu`, so that you can still select the template.
This partially solves T61599. Currently the confirm dialog
is not shown when an already existing file is opened.
Implementing that requires a bit more work and will be
done in a separate patch.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D4732
|
|
Previously only a fixed bounding box could be used.
This was not flexible enough.
T63193 will benefit from this refactor.
Reviewers: brecht, campbellbarton
|
|
If the "Object Children" filter is enabled, we nest the object children inside
the object. If the child itself is not in the collection, it is grayed out,
connected by a dash line, and its restriction flags and contents are not shown.
If "Object Children" filter is disabled, it works as before.
Note: This is not super fast, but at least we traverse the tree only once to get the
children of an object. That said, there is a lot of loops going on here.
Task T63526.
Development notes:
I could use the GPU_SHADER_2D_LINE_DASHED_UNIFORM_COLOR shader, but
that would mean I would need to iterate over the tree twice (once for
each shader) - or do some bigger refactor.
Also I could not get that shader to work. This shader expects float
vertices while the current one is using integers, so converting the code
would make the dash line drawing to diverge from the regular lines even
further.
Differential Revision: https://developer.blender.org/D4696
|
|
Shader nodes are now shared with Eevee, so makes more sense to have it in
the core and not be Cycles specific.
Fix T62415: issues with append/link of old Cycles settings.
|
|
On file read we need to update group nodes in case the group they refer to
has changed its inputs and outputs. This had O(n^2) time complexity and was
updating all datablocks even if they did not change.
|
|
Forward compatibility with that version is already long gone, and removing
it means we can avoid running some complicated code on every file read/write.
|