Revision 118731d by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 22, 2018, 06:05 (GMT) |
Cycles: New design for PDF computations Now there are functions to calculate the picking probability for a given lamp/triangle. Fixed a bug that lamps was before triangles in the distribution array. |
Revision 2f85295 by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 21, 2018, 09:33 (GMT) |
Cleanup: Replaced space tabs with real tabs |
Revision 6f2d885 by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 15, 2018, 10:27 (GMT) |
Cleanup: Refactored code Merged the device_update_tree_distribution() and device_update_distribution() functions. |
Revision df7f4d1 by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 15, 2018, 10:21 (GMT) |
Cycles: Area lights support and better energy estimation The light BVH now supports area lights. Also, the total emitted energy of each light is now calculated by integrating luminance over the sphere of directions and area. |
Revision 0028f7c by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 8, 2018, 13:21 (GMT) |
Merge branch 'master' into gsoc-2018-many-light-sampling |
Revision a3826bf by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 8, 2018, 11:51 (GMT) |
Cycles: Added a checkbox in Blender's GUI to turn on/off the new light sampling method. The checkbox can be found at the bottom of the sampling section in the Render tab. The method is not used by default. |
Revision 4f55918 by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 8, 2018, 11:51 (GMT) |
Cycles: Implemented the SAOH splitting method Previously the light bvh construction code used a simple method to split a node into two child nodes based only on the bounding box of the node. Now, it splits a node into two by looking at the energy and direction of the lights inside the nodes and the area of their bounding boxes. Technical changes: - Implemented orientation BVH build - Added energy to each node based on emission - Updated PDF calculations for lights when using the light BVH |
Revision bcb89f0 by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 4, 2018, 09:10 (GMT) |
Fix: Minimal compilation error fix |
Revision 2e17c3f by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 14:12 (GMT) |
Added simple construction and sampling code for light BVH The light BVH is created on the host out of all emissive triangles and all lights in the scene. The nodes of the light BVH is then copied to the device where it is used when sampling lights. When a light is asked for it traverses the light BVH randomly to find a single light. This is still very much in development. |
Revision e558b1a by Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 14:04 (GMT) |
My own build path modifications |
Revision 3342114 by Ray molenkamp / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
make.bat: fix support for building with just the build tools installed. |
Revision 3e3a44d by Ray molenkamp / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
make.bat : add support for building with ninja and clang together. |
Revision 458104e by Hristo Gueorguiev / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
Fix OpenCL compilation error - BPT without SSS. |
Revision 55e96e1 by Ray molenkamp / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
make.bat : fix release build not getting the right settings. |
Revision 59e4072 by Campbell Barton / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
Edit Mode: add success return value Also remove fix for T6614, since BKE_object_obdata_is_libdata no longer checks proxy. |
Revision 68b0cf6 by Bastien Montagne / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
Cleanup: Get rid of G.main in BKE_material. Note that in some cases, this only moves the G.main case to somne other places - in particular, RNA getters/setters are becoming annoying here... |
Revision 8e462b0 by Campbell Barton / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
DNA: add OB_DATA_SUPPORT_EDITMODE macro |
Revision ac4eec8 by Ray molenkamp / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
Windows: Add support for building with clang. This commit contains the minimum to make clang build/work with blender, asan and ninja build support is forthcoming Things to note: 1) Builds and runs, and is able to pass all tests (except for the freestyle_stroke_material.blend test which was broken at that time for all platforms by the looks of it) 2) It's slightly faster than msvc when using cycles. (time in seconds, on an i7-3370) victor_cpu msvc:3099.51 clang:2796.43 pavillon_barcelona_cpu msvc:1872.05 clang:1827.72 koro_cpu msvc:1097.58 clang:1006.51 fishy_cat_cpu msvc:815.37 clang:722.2 classroom_cpu msvc:1705.39 clang:1575.43 bmw27_cpu msvc:552.38 clang:561.53 barbershop_interior_cpu msvc:2134.93 clang:1922.33 3) clang on windows uses a drop in replacement for the Microsoft cl.exe (takes some of the Microsoft parameters, but not all, and takes some of the clang parameters but not all) and uses ms headers + libraries + linker, so you still need visual studio installed and will use our existing vc14 svn libs. 4) X64 only currently, X86 builds but crashes on startup. 5) Tested with llvm/clang 6.0.0 6) Requires visual studio integration, available at https://github.com/LazyDodo/llvm-vs2017-integration 7) The Microsoft compiler spawns a few copies of cl in parallel to get faster build times, clang doesn't, so the build time is 3-4x slower than with msvc. 8) No openmp support yet. Have not looked at this much, the binary distribution of clang doesn't seem to include it on windows. 9) No ASAN support yet, some of the sanitizers can be made to work, but it was decided to leave support out of this commit. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D3304 |
Revision c580344 by Ray molenkamp / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
make.bat : improve error message while detecting the msvc runtime when using clang |
Revision dac0b7c by Brecht Van Lommel / Erik Englesson (gsoc-2018-many-light-sampling, soc-2020-production-ready-light-tree, soc-2020-production-ready-light-tree-2) June 1, 2018, 13:41 (GMT) |
Fix Cycles + OSL build error, pass main to node editing functions. |
|