Revision 78f8679 by Dalai Felinto April 25, 2019, 04:47 (GMT) |
Outliner parenting hierarchy: Sort for children when not a-z sorting 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). |
Revision edff789 by Dalai Felinto April 25, 2019, 04:23 (GMT) |
Fix T63869: Crash in new outliner show parenting hierarchy 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. |
Revision fbb03f6 by Brecht Van Lommel April 25, 2019, 01:46 (GMT) |
Fix T63528: Alembic export always showing error on macOS, even on success 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. |
Revision 2fabbe3 by Brecht Van Lommel April 25, 2019, 01:46 (GMT) |
Cycles: tweak preferences text when no compatible GPUs are found Try to make it more clear that this only affects Cycles, many users seem to miss the panel title. |
Revision d966c2f by Brecht Van Lommel April 24, 2019, 22:25 (GMT) |
Fix T63869: disable outliner show parent hierarchy temporarily This is likely to cause crashes in many file, so disable this feature until it is fixed. |
Revision 78e3a7b by Brecht Van Lommel April 24, 2019, 22:24 (GMT) |
Cleanup: fix compiler warning |
Revision 5d9d32f by Philipp Oeser April 24, 2019, 20:29 (GMT) |
Fix T63841: armature with X-axis mirror does not mirror bbone scale Reviewers: brecht Maniphest Tasks: T63841 Differential Revision: https://developer.blender.org/D4733 |
Revision a14735d by Clément Foucault April 24, 2019, 17:11 (GMT) |
Fix T61184 linked curves with curve modifiers arent drawn correctly 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. |
Revision c265e25 by Germano Cavalcante April 24, 2019, 16:31 (GMT) |
Correct switched values in the previous commit. |
Revision fa4201f by Germano Cavalcante April 24, 2019, 16:19 (GMT) |
Fix T62701: Hair edit mode crashes on some old AMD Radeon drivers. The crash is related to the format, but the real reason is unknown. |
Revision ca41548 by Jacques Lucke April 24, 2019, 15:45 (GMT) |
UI: Simple confirm dialog when loading new file 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 |
Revision ea80264 by Jacques Lucke April 24, 2019, 15:34 (GMT) |
Refactor: allow event handlers to have a poll function Previously only a fixed bounding box could be used. This was not flexible enough. T63193 will benefit from this refactor. Reviewers: brecht, campbellbarton |
Revision 7a92b88 by Brecht Van Lommel April 24, 2019, 12:39 (GMT) |
Cycles: remove hair minimum width support. This never really worked as it was supposed to. The main goal of this is to turn noise from sampling tiny hairs into multiple layers of transparency that do not need to be sampled stochastically. However the implementation of this worked by randomly discarding hair intersections in BVH traversal, which defeats the purpose. If it ever comes back, it's best implemented outside the kernel as a preprocess that changes hair radius before BVH building. This would also make it work with Embree, where it's not supported now. But it's not so clear anymore that with many AA samples and GPU rendering this feature is as helpful as it once was for CPU raytracers with few AA samples. The benefit of removing this feature is improved hair ray tracing performance, tested on NVIDIA Titan Xp: bmw27: +0.37% classroom: +0.26% fishy_cat: -7.36% koro: -12.98% pabellon: -0.12% Differential Revision: https://developer.blender.org/D4532 |
Revision 5f888e6 by Dalai Felinto April 24, 2019, 11:42 (GMT) |
Outliner: Show parenting hierarchy in view layer view 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 |
Revision cc5a75d by Brecht Van Lommel April 24, 2019, 10:44 (GMT) |
Cycles: move shader node versioning code to C 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. |
Revision d730e51 by Brecht Van Lommel April 24, 2019, 10:44 (GMT) |
Nodes: avoid slow and unecessary node group updates on file read 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. |
Revision 6242147 by Brecht Van Lommel April 24, 2019, 10:44 (GMT) |
Nodes: remove group node forward compatibility with version 2.66 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. |
Revision 1978066 by Brecht Van Lommel April 24, 2019, 10:44 (GMT) |
Nodes: better integrate node init and versioning in file reading Node versioning code was added before there was a mechanism to do versioning after lib linking. Now integrate with that system and make it less of a strange exception. Node versioning is now skipped on undo, like other versioning code. |
Revision bde1561 by Campbell Barton April 24, 2019, 10:27 (GMT) |
Fix T63566: Pop-up closes before mouse-over Closely spaced buttons caused the curve clipping popup to close before the cursor could mouse-over it. |
Revision cfe9c7b by Jacques Lucke April 24, 2019, 09:59 (GMT) |
Refactor: Separate template selection from read_homefile operator This is a first step towards T61599. This way the invoke function can be used for the confirm dialog in a separate patch. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D4723 |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021