blender/intern/cycles/render
Lukas Stockner 548eb9eb4b Cycles: Sort tiles in rendering order at construction time
This commit modifies the TileManager to sort render tiles once after tiling the image,
instead of searching the next tile every time a new tile is acquired by a device.

This makes acquiring a tile run in constant time, therefore the render time is linear
w.r.t. the amount of tiles, instead of the quadratic dependency before.

Furthermore, each (logical) device now has its own Tile list, which makes acquiring
a tile for a specific device easier.
Also, some code in the TileManager was deduplicated.

Reviewers: dingto, sergey

Differential Revision: https://developer.blender.org/D1684
2015-12-23 13:14:36 +01:00
..
attribute.cpp Cycles: Code cleanup, spaces around keywords 2015-03-28 00:15:15 +05:00
attribute.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
background.cpp Cycles: Support per-render layer world AO settings 2015-11-24 13:21:40 +05:00
background.h Cycles: Support per-render layer world AO settings 2015-11-24 13:21:40 +05:00
bake.cpp Bake-API: reduce memory footprint when baking more than one object (Fix T41092) 2015-04-17 12:25:37 -03:00
bake.h Bake-API: reduce memory footprint when baking more than one object (Fix T41092) 2015-04-17 12:25:37 -03:00
buffers.cpp Cycles: Add debug pass showing average number of ray bounces per pixel 2015-06-11 14:53:15 +02:00
buffers.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
camera.cpp Cycles: Save one transform inversion in the camera sync 2015-11-22 00:58:40 +01:00
camera.h Cycles: Support user-defined shutter curve 2015-10-28 02:43:06 +05:00
CMakeLists.txt Cycles: Use curve approximation for blackbody instead of lookup table 2015-05-05 06:11:54 +00:00
curves.cpp Cycles: Code cleanup, prepare for strict C++ flags 2015-03-27 18:23:31 +05:00
curves.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
film.cpp Cycles: Add Blackman-Harris filter, fix Gaussian filter 2015-11-18 20:50:06 +01:00
film.h Cycles: Add Blackman-Harris filter, fix Gaussian filter 2015-11-18 20:50:06 +01:00
graph.cpp Cycles: Fix wrong assert failure happening after recent de-duplicate 2015-12-15 21:01:56 +05:00
graph.h Cycles: De-duplicate utility functions in ccl::Graph 2015-12-15 20:04:35 +05:00
image.cpp Cycles: Gracefully handle out-of-memory happening in device vector 2015-10-11 19:41:59 +05:00
image.h Cycles: Increase number of textures allowed for OpenCL render 2015-10-11 18:22:01 +05:00
integrator.cpp Cycles: Fix filter glossy being broken after recent changes 2015-11-20 18:18:27 +05:00
integrator.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
light.cpp Fix T45227: Light optimization commit broke world MIS 2015-06-28 20:47:35 +02:00
light.h Cycles: Ignore light which has no contribution to the scene 2015-06-27 15:13:08 +02:00
mesh_displace.cpp Cycles: Cleanup, whitespace around keywords 2015-10-08 19:08:28 +05:00
mesh.cpp Cleanup: Remove some underlying code for the BVH disk cache. 2015-09-24 15:47:27 +02:00
mesh.h Cycles: Synchronize images after building mesh BVH 2015-04-20 17:29:51 +05:00
nodes.cpp Cleanup: Remove comments, now that we have the dedicated constant fold functions, it's obvious. 2015-12-22 14:02:57 +01:00
nodes.h Cycles: Constant fold for the Gamma Node. 2015-12-22 13:53:13 +01:00
object.cpp Fix T45390: Cycles experimental displacement method ignores scaling when render 2015-07-13 15:24:56 +02:00
object.h Fix T44908: Blender crashes when trying to use cycles experimental displacement 2015-06-02 00:04:30 +05:00
osl.cpp Fix T46782: Updating Shaders very slow with complex nodegraph 2015-11-25 13:46:51 +05:00
osl.h Cycles: Ensure order of shader nodes in the dependnecies set 2015-11-25 13:07:32 +05:00
particles.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
particles.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
scene.cpp Cycles: Support user-defined shutter curve 2015-10-28 02:43:06 +05:00
scene.h Cleanup: Remove some more code for BVH cache. I missed that somehow. 2015-12-01 18:17:28 +01:00
session.cpp Cycles: Make branched path tracer covered with requested features 2015-11-22 13:54:51 +05:00
session.h Cycles: Add utility function to count maximum number of closures used by session 2015-05-09 19:17:49 +05:00
shader.cpp Cycles: Make requested features struct aware of subsurface BSDF 2015-11-21 23:00:29 +05:00
shader.h Cycles: Make requested features struct aware of subsurface BSDF 2015-11-21 23:00:29 +05:00
sky_model_data.h Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sky_model.cpp Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sky_model.h Cycles: Code cleanyp, sky model 2015-03-28 00:28:37 +05:00
sobol.cpp Fix #29528: crash adding subsurf modifier in a particular scene with viewport render. 2011-12-08 21:55:35 +00:00
sobol.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
svm.cpp Cycles: Fix shader update bug introduced by recent commits 2015-11-25 16:05:57 +05:00
svm.h Cycles: Ensure order of shader nodes in the dependnecies set 2015-11-25 13:07:32 +05:00
tables.cpp Cycles: Add some statistics logging 2015-04-10 15:37:49 +05:00
tables.h Cleanup: Fix Cycles Apache header. 2014-12-25 02:50:24 +01:00
tile.cpp Cycles: Sort tiles in rendering order at construction time 2015-12-23 13:14:36 +01:00
tile.h Cycles: Sort tiles in rendering order at construction time 2015-12-23 13:14:36 +01:00