Revision d464fb0 by Alexander Gavrilov January 12, 2017, 18:28 (GMT) |
Dynamic Paint: recursively search for island border edges. It is quite likely in a triangulated mesh that the actual island edge belongs to a different triangle than the current pixel; for example consider corners of a triangulated axis aligned rectangle face that have the additional edge: a pixel there will have to be assigned to one of the triangles, but one of the edges of the original rectangle can only be accessed through the other triangle. Thus for robust operation it is necessary to do a recursive search. The search is limited by requiring that it only goes through edges that bring it closer to the target point, and also by depth as a safeguard. Differential Revision: https://developer.blender.org/D2409 |
Revision c937c3a by Alexander Gavrilov January 12, 2017, 18:28 (GMT) |
Dynamic Paint: provide margin of error for linking neighbors across seams. The code requires the pixel on the other side of the seam to be assigned precisely to the expected triangle. This can cause false negatives around vertices, where a pixel is likely to touch multiple triangles and thus cannot be said to unambiguously belong to any one of them, so check distance to the intended triangle and accept the result if it's close. |
Revision 99ca90e by Alexander Gavrilov January 12, 2017, 18:28 (GMT) |
Dynamic Paint: improve UV island border handling in effects. 1. Forcibly symmetrize the neighbor relations, so that if A is neighbor of B, B is neighbor of A. The existing code is guaranteed to violate this if texture resolution is different between the sides of a seam. 2. In texture mode dynamic paint adds a 1 pixel wide border around the islands. These pixels aren't really part of the dynamic paint domain and thus by design can't have symmetrical neighbor relations. This means they can't be treated by effects like normal pixels. The simplest way to handle it in a consistent way is to exclude them from effects, but add an additional pass that recomputes them as average of their non-border neighbors, located on both sides of the seam. |
Revision 720e564 by Sergey Sharybin January 12, 2017, 17:23 (GMT) |
Cycles: Allow up to 4 motion curve primitives per BVH node This avoids intersection AABB of different curve primitives which makes it less ray-to-primitive intersections. This gives about 30% speedup of hair rendering in the barber shop scenes here. There is still some work to be done on those files to solve major speed issues on certain frames. |
Revision b53ce9a by Sergey Sharybin January 12, 2017, 17:20 (GMT) |
Cycles: Prepare BVH traversal code to work with multiple curve primitives per node |
Revision f12f906 by Sergey Sharybin January 12, 2017, 16:38 (GMT) |
Cycles: Correct assert() for cases when there are multiple curves per BVH node |
Revision 76a4cf1 by Sergey Sharybin January 12, 2017, 15:54 (GMT) |
Cycles: Use separate limit for motion primitives for BVH node limits This way we can have different limits for regular and motion curves which we'll do in one of the upcoming commits in order to gain some percents of speedup. The reasoning here is that motion curves are usually intersecting lots of others bounding boxes, which makes it inefficient to have single primitive in the leaf node. |
Revision 0421ae0 by Sergey Sharybin January 12, 2017, 15:33 (GMT) |
Cycles: Change confusing logic of max leaf size check Maximal number of elements is supposed to be inclusive. That is what it was always meant in this file and what @brecht considered still the case in 6974b69c6172. In fact, the commit message to that change mentions that we allowed up to 2 curve primitives per leaf while in fact it was doing up to 1 curve primitive. Making it real 2 primitives at a max gives about 5% slowdown for the koro.blend scene. This is a reason why BVHParams.max_curve_leaf_size was changed to 1 by this change. |
Revision d9cd9ff by Sergey Sharybin January 12, 2017, 14:31 (GMT) |
Cycles: Cleanup, space prior to semicolon We don't have that in Blender style, no reason to violate it here. |
Revision 985c121 by Sergey Sharybin January 12, 2017, 14:28 (GMT) |
Cycles: Cleanup, make curve functions private Not only they don't really follow naming convention (we don't use camel case) but also was not necessary to keep them in the global symbol table. |
Revision 83d18a2 by Sergey Sharybin January 12, 2017, 14:22 (GMT) |
Cycles: Make it more clear message why curve motion attribute was removed |
Revision 53fa389 by Sergey Sharybin January 12, 2017, 12:44 (GMT) |
Cycles: Use dedicated debug passes for traversed nodes and intersection tests This way it's more clear whether some issue is caused by lots of geometry in the node or by lots of "transparent" BVH nodes. |
Revision 8daf02f by Sergey Sharybin January 12, 2017, 12:33 (GMT) |
Cycles: Remove more duplicated code in debug passes logic |
Revision 789fdab by Sergey Sharybin January 12, 2017, 12:32 (GMT) |
Cycles: Fix wrong scaling of traversed instances debug pass |
Revision 618b348 by Sergey Sharybin January 12, 2017, 12:31 (GMT) |
Cycles: Cleanup, remove duplicated code |
Revision 7eb4c85 by Bastien Montagne January 12, 2017, 11:59 (GMT) |
Merge branch 'master' into blender2.8 |
Revision d113122 by Sergey Sharybin January 12, 2017, 11:54 (GMT) |
Cycles: Cleanup, indentation within preprocessor |
Revision 511dbe5 by Sergey Sharybin January 12, 2017, 11:45 (GMT) |
Cycles: Cleanup, use switch() instead of if-else chain About to add extra debug passes, which will be more clear to use switch(). |
Revision 554024e by Sergey Sharybin January 12, 2017, 09:48 (GMT) |
Cycles: move hair particle settings to scene context Since the beginning of times hair settings in cycles were global for the whole scene but were located in the particle context. This causes quite some trickery to get shots set up for the movies here in the studio by forcing artists to create dummy particle system to change settings of hair on the shot. While ideally this settings should be properly become per-particle system for the time being it will save sweat and blood to move the settings to scene context. Reviewers: brecht Subscribers: jtheninja, eyecandy, venomgfx, Blendify Differential Revision: https://developer.blender.org/D2287 |
Revision 67f6829 by Sergey Sharybin January 12, 2017, 08:47 (GMT) |
Cycles tests: Rework output messages Made them closer to how GTest shows the output, so reading test logs is easier now (at least feels more uniform). Additionally now we know how much time tests are taking so can tweak samples/resolution to reduce render time of slow tests. It is now also possible to enable colored messages using magic CYCLESTEST_COLOR environment variable. This makes it even easier to visually grep failed/passed tests using `ctest -R cycles -V`. |
|
|
|


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