Commit Graph

8395 Commits

Author SHA1 Message Date
63c0653170 Merge branch 'master' into blender2.8 2018-11-29 23:54:30 +01:00
a8b8da5567 Fix T58183: crash with CPU + GPU rendering after profiling changes.
Multi-device was not passing along profiler to the CPU.
2018-11-29 23:43:27 +01:00
6af997710b Merge branch 'master' into blender2.8 2018-11-30 08:39:59 +11:00
8ac2d85d2f Cleanup: trailing space 2018-11-30 08:38:25 +11:00
7c6fc8b275 Merge branch 'master' into blender2.8 2018-11-29 16:49:21 +01:00
2c154399a2 Fix internal compiler error when building with VS 2017 (15.9.3).
It doesn't like alignment for function arguments, and I don't think this
alignment is needed.

Solution found by Ray Molenkamp.
2018-11-29 16:42:52 +01:00
f24147d459 Merge branch 'master' into blender2.8 2018-11-29 09:35:39 +01:00
b00819bcca Atomic: Avoid conflicts with definitions in other areas
While atomics library was trying to use "user-space" defined
LIKELY() and UNLIKELY(), this is not always true that user
code was checking for those macro coming from an unrelated
area.
2018-11-29 09:33:50 +01:00
9893fee4e6 Merge branch 'master' into blender2.8 2018-11-29 12:55:58 +11:00
140f2209b6 Cleanup: correct typo, no need for ./ prefix 2018-11-29 12:54:30 +11:00
7fa6f72084 Cycles: Add sample-based runtime profiler that measures time spent in various parts of the CPU kernel
This commit adds a sample-based profiler that runs during CPU rendering and collects statistics on time spent in different parts of the kernel (ray intersection, shader evaluation etc.) as well as time spent per material and object.

The results are currently not exposed in the user interface or per Python yet, to see the stats on the console pass the "--cycles-print-stats" argument to Cycles (e.g. "./blender -- --cycles-print-stats").

Unfortunately, there is no clear way to extend this functionality to CUDA or OpenCL, so it is CPU-only for now.

Reviewers: brecht, sergey, swerner

Reviewed By: brecht, swerner

Differential Revision: https://developer.blender.org/D3892
2018-11-29 02:45:24 +01:00
7c7f3776dd Use collection and instance terminology in Python API
This follows naming convention agreed on in T56648.
2018-11-28 18:22:51 +01:00
91795e756c Merge branch 'master' into blender2.8 2018-11-28 18:05:59 +01:00
2b371b65bc More fixes for NUMA on macOS 2018-11-28 18:05:35 +01:00
11ff47a134 Merge branch 'master' into blender2.8 2018-11-28 17:57:37 +01:00
8a6aa15903 Fix compilation error on macOS 2018-11-28 17:57:04 +01:00
bef9f42ef0 Merge branch 'master' into blender2.8 2018-11-28 17:55:27 +01:00
547bc2a620 Fix compilation error on 32bit Windows 2018-11-28 17:54:58 +01:00
6fd5f95ca1 Fix (unreported) Cycles not rendering correctly modified curves/surfaces/texts.
Meshes from evaluated objects may already have modifiers applied, but
that's not the case for curves, we need to do that when converting them
to meshes.
2018-11-28 16:25:15 +01:00
3ed0d5b4d4 Merge branch 'master' into blender2.8 2018-11-28 14:42:38 +01:00
683662e630 Add cross-platform NUMA library
Makes it simple to use NUMA libraries on various platforms.
2018-11-28 14:35:26 +01:00
0970ed0550 Merge branch 'master' into blender2.8 2018-11-26 12:00:36 +01:00
acd1d1a31d CMake: Remove Cycles specific OpenSubdiv options
Just use one flag which enables OpenSubdiv globally for all the
areas of Blender.
2018-11-26 11:41:38 +01:00
a0cde8ed08 Cleanup: unused vars 2018-11-26 09:26:38 +11:00
a2e209f20a Merge branch 'master' into blender2.8 2018-11-24 23:44:17 +01:00
7c19d9e9af Fix X11 tablet pen and eraser distinction being wrong in some cases.
This extends the earlier fix to use the latest logic from Wine's wintab.c,
to better handle eraser detection.
2018-11-24 23:24:32 +01:00
059c119719 Merge branch 'master' into blender2.8 2018-11-25 08:01:53 +11:00
e742e0934d Cleanup: trailing space 2018-11-25 08:01:14 +11:00
fa0fcbe4d6 Fix T56374, T57066, T58037: crash on startup on macOS when using translation. 2018-11-24 20:04:53 +01:00
e5bc9fae54 Fix penpressure for tablets that use libinput on linux 2018-11-24 18:26:20 +01:00
d891c8f1f8 Merge branch 'master' into blender2.8 2018-11-23 14:41:21 +01:00
Stefan Werner
874f12480f Cycles: Fixed a warning. 2018-11-23 13:47:25 +01:00
Stefan Werner
aa000400dc Cycles: Improved robustness of hair motion blur.
In some instances, the number of control vertices of a hair could change mid-frame.
Cycles would then be unable to calculate proper motion blur for those hairs. This adds
interpolated CVs to fill in for the missing data. While this will not necessarily result in
a fully accurate reconstruction of the guide hair, it preserves motion blur instead of disabling it.

Reviewers: #cycles, sergey

Reviewed By: #cycles, sergey

Subscribers: sergey, brecht, #cycles

Tags: #cycles

Differential Revision: https://developer.blender.org/D3695
2018-11-23 13:25:26 +01:00
4b9d242be5 Merge branch 'master' into blender2.8 2018-11-22 15:16:45 +11:00
968bf0df14 Fix T57811: Render crashes in certain scenes when AO Bounces are used 2018-11-21 14:17:26 +01:00
6f48bfc7a8 Cycles: Cleanup, use utility function
Replaces inlined platform-specific code.
2018-11-21 13:51:18 +01:00
65143542af Cycles: Cleanup, reduce indentation level 2018-11-21 12:41:24 +01:00
700330afe8 Cycles: Cleanup, comments and dead code 2018-11-21 11:33:11 +01:00
65d01def80 Cycles: Cleanup, CUDA code path is not possible inside AVX2 2018-11-21 11:28:49 +01:00
8610b57271 Cycles: Cleanup, code style 2018-11-15 17:19:26 +01:00
c617fcad10 Merge branch 'master' into blender2.8 2018-11-15 17:17:37 +01:00
cd9ab9d99e Cycles: Cleanup, code style 2018-11-15 17:16:40 +01:00
c3d03b4434 Lamps: Remove HEMI light type
This type is not supported by either Eevee or Cycles. If other types of
lamps are needed by external engines, we should support adding custom types.
2018-11-14 11:50:37 +01:00
55e719ec35 Merge branch 'master' into blender2.8 2018-11-14 17:21:34 +11:00
d7f55c4ff5 Cleanup: comment block tabs 2018-11-14 17:10:56 +11:00
3a05331445 Merge branch 'master' into blender2.8 2018-11-12 12:16:31 +01:00
d23a53c74a Cycles: Fix/workaround for gcc-7.2
For some reason when building with gcc-7.2 (which is default
in previous Ubuntu LTS) the guarded allocator is not being
properly instantiated.

Doesn't happen with newer version of gcc-7 which is 7.3, and
also doesn't happen with gcc-6 and gcc-8.

Would be nice to know what is wrong, but for the time being
committing workaround which keeps Blender users happy.
2018-11-12 12:16:07 +01:00
a0022f80f4 Merge branch 'master' into blender2.8 2018-11-12 11:02:46 +01:00
e732c6af3b Cycles: Proper comment for closing header guard 2018-11-12 11:02:10 +01:00
8d07af5d10 Merge branch 'master' into blender2.8 2018-11-09 17:56:28 +01:00