Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 2231 / 5574

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
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.
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.
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.
January 12, 2017, 17:20 (GMT)
Cycles: Prepare BVH traversal code to work with multiple curve primitives per node
January 12, 2017, 16:38 (GMT)
Cycles: Correct assert() for cases when there are multiple curves per BVH node
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.
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.
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.
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.
January 12, 2017, 14:22 (GMT)
Cycles: Make it more clear message why curve motion attribute was removed
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.
January 12, 2017, 12:33 (GMT)
Cycles: Remove more duplicated code in debug passes logic
January 12, 2017, 12:32 (GMT)
Cycles: Fix wrong scaling of traversed instances debug pass
January 12, 2017, 12:31 (GMT)
Cycles: Cleanup, remove duplicated code
January 12, 2017, 11:59 (GMT)
Merge branch 'master' into blender2.8
January 12, 2017, 11:54 (GMT)
Cycles: Cleanup, indentation within preprocessor
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().
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
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`.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021