Blender Git Commits

Blender Git "soc-2020-production-ready-light-tree-2" branch commits.

Page: 3 / 5

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.
June 21, 2018, 09:33 (GMT)
Cleanup: Replaced space tabs with real tabs
June 15, 2018, 10:27 (GMT)
Cleanup: Refactored code

Merged the device_update_tree_distribution()
and device_update_distribution() functions.
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.
June 8, 2018, 13:21 (GMT)
Merge branch 'master' into gsoc-2018-many-light-sampling
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.
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
June 4, 2018, 09:10 (GMT)
Fix: Minimal compilation error fix
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.
June 1, 2018, 14:04 (GMT)
My own build path modifications
June 1, 2018, 13:41 (GMT)
make.bat: fix support for building with just the build tools installed.
June 1, 2018, 13:41 (GMT)
make.bat : add support for building with ninja and clang together.
June 1, 2018, 13:41 (GMT)
Fix OpenCL compilation error - BPT without SSS.
June 1, 2018, 13:41 (GMT)
make.bat : fix release build not getting the right settings.
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.
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...
June 1, 2018, 13:41 (GMT)
DNA: add OB_DATA_SUPPORT_EDITMODE macro
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
June 1, 2018, 13:41 (GMT)
make.bat : improve error message while detecting the msvc runtime when using clang
June 1, 2018, 13:41 (GMT)
Fix Cycles + OSL build error, pass main to node editing functions.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021