February 22, 2017, 14:47 (GMT) |
Cycles: OpenCL split kernel refactor This does a few things at once: - Refactors host side split kernel logic into a new device agnostic class `DeviceSplitKernel`. - Removes tile splitting, a new work pool implementation takes its place and allows as many threads as will fit in memory regardless of tile size, which can give performance gains. - Refactors split state buffers into one buffer, as well as reduces the number of arguments passed to kernels. Means there's less code to deal with overall. - Moves kernel logic out of OpenCL kernel files so they can later be used by other device types. - Replaced OpenCL specific APIs with new generic versions - Tiles can now be seen updating during rendering |
Revision 8ba1dab by Thomas Dinges / Sergey Sharybin (blender-v2.78c-release, fracture_modifier, fracture_modifier-master, temp-fracture-modifier-2.8) February 22, 2017, 14:33 (GMT) |
Blender 2.78c: Fix Brick Texture GLSL, broken after Mortar Smooth addition. |
February 22, 2017, 14:33 (GMT) |
Merge branch 'master' into cycles_split_kernel |
February 22, 2017, 14:30 (GMT) |
Cycles: Add OpenCL kernel for zeroing memory buffers Transferring memory to the device was very slow and there's really no need when only zeroing a buffer. |
February 22, 2017, 14:30 (GMT) |
Cycles: Add more atomic operations |
February 22, 2017, 14:30 (GMT) |
Cycles: Expose passes size to device tasks This is needed so devices can know the size of a tile buffer before any tiles are acquired. |
February 22, 2017, 14:30 (GMT) |
Cycles: Allow device_memory to be used directly This is useful for when theres no host side memory attched to the buffer |
Revision 9215848 by Kévin Dietrich / Sergey Sharybin (blender-v2.78c-release, fracture_modifier, fracture_modifier-master, temp-fracture-modifier-2.8) February 22, 2017, 14:25 (GMT) |
Fix T50550: GPUShader: compile error - Background image not showing in viewport. Caused by rBd6cf28c5e15739f864fbf04614c2a50708b4b152, which forgot to update the GLSL code for the "Light Path" node. |
Revision b3b4084 by Sergey Sharybin (blender-v2.78c-release, fracture_modifier, fracture_modifier-master, temp-fracture-modifier-2.8) February 22, 2017, 14:08 (GMT) |
Blender 2.78c: Fix wrong cycles hair render results when using BVH motion steps This commit contains all commits required to get proper hair rendering with BVH motion steps enabled. The issue here was mainly coming from minimal pixel width feature which is quite commonly enabled in production shots. This feature will use some probabilistic heuristic in the curve intersection function to check whether we need to return intersection or not. This probability is calculated for every intersection check. Now, when we use multiple BVH nodes for curve primitives we increase probability of that primitive to be considered a good intersection for us. This is similar to increasing minimal width of curve. What is worst here is that change in the intersection probability fully depends on exact layout of BVH, meaning probability might change differently depending on a view angle, the way how builder binned the primitives and such. This makes it impossible to do simple check like dividing probability by number of BVH steps. Other solution might have been to split BVH into fully independent trees, but that will increase memory usage of all the static objects in the scenes, which is also not something desirable. For now used most simple but robust approach: store BVH primitives time and test it in curve intersection functions. This solves the regression, but has two downsides: - Uses more memory. which isn't surprising, and ANY solution to this problem will use more memory. What we still have to do is to avoid this memory increase for cases when we don't use BVH motion steps. - Reduces number of maximum available textures on pre-kepler cards. There is not much we can do here, hardware gets old but we need to move forward on more modern hardware.. |
Revision c6e4a81 by Sergey Sharybin (blender-v2.78c-release, fracture_modifier, fracture_modifier-master, temp-fracture-modifier-2.8) February 22, 2017, 14:07 (GMT) |
Blender 2.78c: Port all commits related on new Cycles regression tests |
February 22, 2017, 13:27 (GMT) |
OpenGl immediate mode: fix false positive (again) |
February 22, 2017, 13:24 (GMT) |
OpenGL: Fix Object Axes color |
February 22, 2017, 13:23 (GMT) |
OpenGl immediate mode: Fix false positive |
February 22, 2017, 13:05 (GMT) |
OpenGl immediate mode: screen_draw.c |
February 22, 2017, 12:17 (GMT) |
Cycles: Round global size down rather than up to avoid setting too large |
February 22, 2017, 12:06 (GMT) |
Fix Cycles still saving render output when error happened This was fixed ages ago for the interface case but not for the command line. The thing here is that currently external engines are relying on reports system to indicate that error happened so suppressing reports storage in the background mode prevented render pipeline from detecting errors happened. This is all weak and i don't like it, but this is better than delivering black frames from the farm. |
February 22, 2017, 12:00 (GMT) |
Clay Engine: Started Armature drawing This should give the overall direction to whom wants to finish it. - Renamed EDIT mode engine to EDIT_MESH mode engine - Introduce EDIT_ARMATURE mode engine - Started to port legacy drawarmature.c to draw_armature.c |
February 22, 2017, 11:56 (GMT) |
Cycles: Get passes size in more robust way |
February 22, 2017, 11:50 (GMT) |
Clay Engine: Renaming shader. |
February 22, 2017, 11:46 (GMT) |
Clay Engine: Prepare for Armature drawing. - Added runtime display matrices to EditBone and bPoseChannel - Added Object space instance vertex shader and modified the simple lighting shader accordingly |
|
|
|


Master Commits
MiikaHweb | 2003-2021