http://www.miikahweb.com/feed.php MiikaHweb - Blender Commits By ErikEnglesson http://www.miikahweb.com/ MiikaHweb - Blender Commits By ErikEnglesson fi Fri, 18 Oct 19 14:26:30 +0000 MiikaHweb RSS contact at miikahweb.com <![CDATA[[8d399ee] gsoc-2018-many-light-sampling: Merge branch 'master' into gsoc-2018-many-light-sampling]]> http://www.miikahweb.com/en/blender/git-logs/commit/8d399eef67b68d663b93f33aa36fde24564ba81e 8d399ee
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Merge branch 'master' into gsoc-2018-many-light-sampling

----------------------------------------
0 Paths Changed]]>
Sun, 12 Aug 2018 10:30:42 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/8d399eef67b68d663b93f33aa36fde24564ba81eErik Englesson
<![CDATA[[4608e5a] gsoc-2018-many-light-sampling: Cycles: light_tree_pdf() now accounts for splitting]]> http://www.miikahweb.com/en/blender/git-logs/commit/4608e5ac269758df5c37e57b77afadd27fcf6de2 4608e5a
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: light_tree_pdf() now accounts for splitting

For the MIS calculations we need to be able to calculate the
probability to sample a light using the light tree. This
did not account for splitting so if splitting was used the
probability would be wrong. This has now been fixed.

Also, if we are in PATH mode then the splitting threshold is
set to zero.

----------------------------------------
3 Paths Changed]]>
Sun, 12 Aug 2018 09:59:33 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4608e5ac269758df5c37e57b77afadd27fcf6de2Erik Englesson
<![CDATA[[2d839a0] gsoc-2018-many-light-sampling: Cycles: Removed unused code]]> http://www.miikahweb.com/en/blender/git-logs/commit/2d839a08e4939d7c5a113f675cebf5cb8cd7d2bc 2d839a0
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Removed unused code

The simplified GGX code is no longer needed
with the new splitting heuristic and has
now been removed.

----------------------------------------
1 Path Changed]]>
Sun, 12 Aug 2018 09:57:16 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/2d839a08e4939d7c5a113f675cebf5cb8cd7d2bcErik Englesson
<![CDATA[[0216dae] gsoc-2018-many-light-sampling: Cycles: Removed energy term in SAOH denominator]]> http://www.miikahweb.com/en/blender/git-logs/commit/0216daeb8051f631e0950f2f046751be028038b2 0216dae
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Removed energy term in SAOH denominator

This should not affect the result since it is just a
scale factor to all terms in the minimization. This
term was not in eq. 2 of the paper.

----------------------------------------
1 Path Changed]]>
Fri, 10 Aug 2018 15:34:23 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/0216daeb8051f631e0950f2f046751be028038b2Erik Englesson
<![CDATA[[8e36d94] gsoc-2018-many-light-sampling: Cycles: Added more comments and renamed variables]]> http://www.miikahweb.com/en/blender/git-logs/commit/8e36d94be266dc64afd9861a6fd5aa9cbbecc0f5 8e36d94
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Added more comments and renamed variables

More code comments have been added to all code related to
the light tree. I also renamed all uses of "light BVH" to
use light tree instead to keep everything consistent.
Functions and variable names that used the camel case
naming convention has been changed to follow Blender's
code style. Also, unneeded includes were removed.

----------------------------------------
13 Paths Changed]]>
Fri, 10 Aug 2018 15:31:33 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/8e36d94be266dc64afd9861a6fd5aa9cbbecc0f5Erik Englesson
<![CDATA[[108594d] gsoc-2018-many-light-sampling: Cycles: Light tree: energy and light picking fixes]]> http://www.miikahweb.com/en/blender/git-logs/commit/108594d8c844edb09afdac1a355f0b6d99cb80db 108594d
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Light tree: energy and light picking fixes

When calculating the energy for a light source I previously returned
zero energy if is_constant_emission() returned false. This has now
been changed so it uses an emission of (1,1,1) instead.

The normal that is used for light picking for the BSDF approximation
in the importance calculations now takes into consideration if the
point is on glass, a reflective or transmissive surface. The position
and normal used for light picking is now stored in the ShaderData struct.

----------------------------------------
15 Paths Changed]]>
Fri, 03 Aug 2018 15:22:23 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/108594d8c844edb09afdac1a355f0b6d99cb80dbErik Englesson
<![CDATA[[84fec21] gsoc-2018-many-light-sampling: Cycles: Light tree instancing and energy fixes]]> http://www.miikahweb.com/en/blender/git-logs/commit/84fec21522616b93d7b4f7ee7563d9502fb79a32 84fec21
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Light tree instancing and energy fixes

Instancing for mesh lights now works with the light tree.
The conversion from emission to luminance is now using
linear_rgb_to_gray() instead.

----------------------------------------
6 Paths Changed]]>
Fri, 03 Aug 2018 15:21:40 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/84fec21522616b93d7b4f7ee7563d9502fb79a32Erik Englesson
<![CDATA[[1fe1e74] gsoc-2018-many-light-sampling: Cycles: WIP: Volumes are not using the light tree.]]> http://www.miikahweb.com/en/blender/git-logs/commit/1fe1e742a6f27a051c98025898ca61a536cb477f 1fe1e74
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: WIP: Volumes are not using the light tree.

If a shading point is inside or on the boundary of a volume
then it will use the old sampling method until we have
properly implemented the volume parts of the paper.

Also, the PDF picking probability for volumes have now been
updated properly since the PDF restructure.

Tried to provide the correct shading point and normal to
the MIS calculations. This part needs more work.

----------------------------------------
9 Paths Changed]]>
Fri, 27 Jul 2018 16:19:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1fe1e742a6f27a051c98025898ca61a536cb477fErik Englesson
<![CDATA[[6045fc4] gsoc-2018-many-light-sampling: Cycles: Light tree optimization]]> http://www.miikahweb.com/en/blender/git-logs/commit/6045fc40f4cd1d89f326a2d937e07752f5e3ad7c 6045fc4
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Light tree optimization

The importance metric calculations now uses the
fast_cos() and fast_acos() functions. This gave
a 1.4x speedup on one of the test scenes.

----------------------------------------
1 Path Changed]]>
Fri, 27 Jul 2018 16:18:59 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6045fc40f4cd1d89f326a2d937e07752f5e3ad7cErik Englesson
<![CDATA[[00b90ed] gsoc-2018-many-light-sampling: Cycles: Light tree related bug fixes]]> http://www.miikahweb.com/en/blender/git-logs/commit/00b90ede1b8cba0d47a4cdc7c6d48f49ed15d677 00b90ed
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Light tree related bug fixes

- Fixed bug in triangle_light_pdf_area() from PDF refactor
- Early exit if picking prob is zero in tree traversal
- The background index is now an index into the lights
array instead of the distribution array.

----------------------------------------
2 Paths Changed]]>
Fri, 27 Jul 2018 16:16:21 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/00b90ede1b8cba0d47a4cdc7c6d48f49ed15d677Erik Englesson
<![CDATA[[beef487] gsoc-2018-many-light-sampling: Cycles: Several emitters per leaf in light tree]]> http://www.miikahweb.com/en/blender/git-logs/commit/beef4874d330776d825c666ad21809c3b9fd0bcc beef487
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Several emitters per leaf in light tree

This commits makes it possible for leaf nodes in the
light tree to have more than one emitter. This reduces
the maximum depth of the light tree which makes the
traversal of the tree faster but the sampling code
is slower if a leaf with several emitters is found.

Technical details:
-- If cost of splitting in build is larger than the
energy of the node then we create a leaf instead
of splitting.
-- Maximum emitters per leaf is now set to 64
-- During traversal if a leaf with several emitters
is found then we sample one of these based on
the importance of each emitter. This is calculated
on the fly and therefore a CDF generation without
dynamic allocation was implemented.
- Moved the distribution id to node id lookup from
light_distribution_pdf() to light_bvh_pdf().

----------------------------------------
8 Paths Changed]]>
Fri, 20 Jul 2018 12:29:20 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/beef4874d330776d825c666ad21809c3b9fd0bccErik Englesson
<![CDATA[[ff4833a] gsoc-2018-many-light-sampling: Cycles: Bug fixes]]> http://www.miikahweb.com/en/blender/git-logs/commit/ff4833a6b395eef84e2a60a32f934c2f3a0e7d63 ff4833a
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Bug fixes

- Stopping recursive tree traversal if
negative PDFs are encountered.

- accum_light_tree_contribution() now
takes a scale factor as input which
is passed through to accum_light_contribution

- light_bvh_sample now changes randu. This
is similar to the other *_sample functions.
This fixed a bug where recursive traversal
with no splitting gave a different result
compared to just using light_sample.

----------------------------------------
2 Paths Changed]]>
Fri, 13 Jul 2018 11:47:18 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/ff4833a6b395eef84e2a60a32f934c2f3a0e7d63Erik Englesson
<![CDATA[[0db119a] gsoc-2018-many-light-sampling: Cycles: Updated SAOH with regularization factor]]> http://www.miikahweb.com/en/blender/git-logs/commit/0db119ad11e4738808fa9766829f8d0ddde18e5f 0db119a
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Updated SAOH with regularization factor

This factor penalizes thin bounding boxes in
the tree construction.

----------------------------------------
1 Path Changed]]>
Fri, 13 Jul 2018 11:44:25 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/0db119ad11e4738808fa9766829f8d0ddde18e5fErik Englesson
<![CDATA[[8a0ff32] gsoc-2018-many-light-sampling: Cycles: Updated cone aggregation and measure]]> http://www.miikahweb.com/en/blender/git-logs/commit/8a0ff32abda6171c10b5f4d8f37f6ef82ec4376a 8a0ff32
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Updated cone aggregation and measure

The paper provided a way to merge two bounding
cones and an updated version of the cone
measure.

----------------------------------------
2 Paths Changed]]>
Fri, 13 Jul 2018 11:41:00 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/8a0ff32abda6171c10b5f4d8f37f6ef82ec4376aErik Englesson
<![CDATA[[260b2e9] gsoc-2018-many-light-sampling: Cycles: Updated the importance metric]]> http://www.miikahweb.com/en/blender/git-logs/commit/260b2e9e20ac2c2acff17498e2ca006f2a2d9d95 260b2e9
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Updated the importance metric

The new paper provides an updated importance
metric which is now implemented. Also, a bug
in the index used for background lights in
the MIS calculations have been fixed.

Technical details:
- The new importance metric depends on the
normal at the shading point. The MIS
calculations have been changed
accordingly.

- The uncertainty angle was described in
the paper and is now implemented.

- In the implementation details section
of the paper they mention that they
limit the distance if splitting is
disabled. This is implemented too.

----------------------------------------
10 Paths Changed]]>
Fri, 13 Jul 2018 11:33:01 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/260b2e9e20ac2c2acff17498e2ca006f2a2d9d95Erik Englesson
<![CDATA[[2d6e1dd] gsoc-2018-many-light-sampling: Cycles: Updated rescaling of random numbers]]> http://www.miikahweb.com/en/blender/git-logs/commit/2d6e1ddb94a3bcedf3dae486c4c533b015e3311f 2d6e1dd
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Updated rescaling of random numbers

The new paper describes how they rescale the
random numbers in the tree traversal. We do
the same now.

----------------------------------------
2 Paths Changed]]>
Fri, 13 Jul 2018 11:30:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/2d6e1ddb94a3bcedf3dae486c4c533b015e3311fErik Englesson
<![CDATA[[c6bd7a9] gsoc-2018-many-light-sampling: Cycles: Updated the split heuristic]]> http://www.miikahweb.com/en/blender/git-logs/commit/c6bd7a974b34d47f01f02666d8cdd5057bc77eba c6bd7a9
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: Updated the split heuristic

The split heuristic is now based on the
new paper instead of the abstract/slides
from 2017.

----------------------------------------
5 Paths Changed]]>
Fri, 13 Jul 2018 11:21:32 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/c6bd7a974b34d47f01f02666d8cdd5057bc77ebaErik Englesson
<![CDATA[[36cfc9e] gsoc-2018-many-light-sampling: Cycles: First iteration on split traversal]]> http://www.miikahweb.com/en/blender/git-logs/commit/36cfc9e9fdc12beeec3545854bb2ccbb23ef17c6 36cfc9e
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Cycles: First iteration on split traversal

This makes it possible to sample and evaluate several
lights in a single tree traversal. Should sample highly
specular lights better too. Can only be used in branched
path tracing.

This commit contains the following:
* GUI for setting the splitting threshold
* Recursive split traversal
- Split method based on solid angle and BSDF peak
- At leafs the path radiance is accumulated to L
- Have created a simplified GGX eval that is not
currently being used.
* Refactor of common code

This is in development.

----------------------------------------
10 Paths Changed]]>
Fri, 06 Jul 2018 07:20:41 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/36cfc9e9fdc12beeec3545854bb2ccbb23ef17c6Erik Englesson
<![CDATA[[5c10bd4] gsoc-2018-many-light-sampling: Fix: Merge conflict with background resolution]]> http://www.miikahweb.com/en/blender/git-logs/commit/5c10bd4f199377fc2d0aaeadfd99d7c5ab511d95 5c10bd4
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Fix: Merge conflict with background resolution

----------------------------------------
2 Paths Changed]]>
Fri, 29 Jun 2018 14:25:28 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/5c10bd4f199377fc2d0aaeadfd99d7c5ab511d95Erik Englesson
<![CDATA[[136991b] gsoc-2018-many-light-sampling: Merge branch 'master' into gsoc-2018-many-light-sampling]]> http://www.miikahweb.com/en/blender/git-logs/commit/136991be1a8afc6938c587558a0a75f096888d5a 136991b
Branches : gsoc-2018-many-light-sampling
Author : Erik Englesson (ErikEnglesson)
----------------------------------------
Merge branch 'master' into gsoc-2018-many-light-sampling

----------------------------------------
0 Paths Changed]]>
Fri, 29 Jun 2018 09:02:18 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/136991be1a8afc6938c587558a0a75f096888d5aErik Englesson