Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-08Cycles: Remove ccl_fetch and SOAMai Lavelle
2016-10-24Cycles: Fix shadowing variable which also causes use of uninitialized variableSergey Sharybin
Was causing wrong aperture for panorama cameras. Seems to be a regression in 371d357.
2016-10-24Cycles: Cleanup, styleSergey Sharybin
2016-10-23Fix Cycles address space OpenCL error after recent fix.Brecht Van Lommel
2016-10-22Fix T49750: Cycles wrong ray differentials for perspective and stereo cameras.Brecht Van Lommel
2016-10-15Cycles: use near clipping distance in panorama camera.Scott Wu
Reviewed By: sergey, brecht, dfelinto Differential Revision: https://developer.blender.org/D1952
2016-09-11Cycles: Replace object index hack with actual checks for SD_TRANSFORM_APPLIEDMai Lavelle
Using ones complement for detecting if transform has been applied was confusing and led to several bugs. With this proper checks are made. Also added a few transforms where they were missing, mostly affecting baking and displacement when `P` is used in the shader (previously `P` was in the wrong space for these shaders) Also removed `TIME_INVALID` as this may have resulted in incorrect transforms in some cases. Reviewed By: brecht Differential Revision: https://developer.blender.org/D2192
2016-08-01Cycles: Tweaks to support CUDA 8 toolkitSergey Sharybin
All the changes are mainly giving explicit tips on inlining functions, so they match how inlining worked with previous toolkit. This make kernel compiled by CUDA 8 render in average with same speed as previous kernels. Some scenes are somewhat faster, some of them are somewhat slower. But slowdown is within 1% so far. On a positive side it allows us to enable newer generation cards on buildbots (so GTX 10x0 will be officially supported soon).
2016-03-25Cycles: Cleanup, indent nested preprocessor directivesSergey Sharybin
Quite straightforward, main trick is happening in path_source_replace_includes(). Reviewers: brecht, dingto, lukasstockner97, juicyfruit Differential Revision: https://developer.blender.org/D1794
2016-03-12Cycles: Optimize derivatives calculation by using pre-calculated dx/dySergey Sharybin
We've got pixel-wide world-space derivatives which we can use in the perspective camera sampling. This allows to get rid of two calls to transform_direction() function. In theory we can save two transform_perspective() calls if we'll also save pre-calculated camera-space dx/dy.
2016-03-12Cycles: Cleanup, spherical_stereo_direction will return normalized directionSergey Sharybin
Previously each call of this function was followed by a normaliztion, now it is done in the function itself with an according note around the function.
2016-03-11Cycles: One more optimization fix, derivatives used to be calculated without ↵Sergey Sharybin
aperture At this point it's totally unclear why we're ignoring aperture and and rolling shutter now for derivatives calculation but do not ignore direction change caused by stereo.
2016-03-11Cycles: Fix bug calculating dP for perspective cameraSergey Sharybin
Was introduced by recent optimization. Not really sure derivatives are intended to work like this, but better to stick to what Dalai had originally for now.
2016-03-11Cycles: Cleanup, redundant normalizationSergey Sharybin
2016-03-10Cycles: Simplify perspective camera derivatives calculationSergey Sharybin
Probably some further simplification is possible, will look into this later. Alternatively will get rid of KernelCamera.{dx, dy}.
2016-03-10Multi-View: Cycles - Spherical Stereo support (VR Panoramas)Dalai Felinto
This is a new option for panorama cameras to render stereo that can be used in virtual reality devices The option is available under the camera panel when Multi-View is enabled (Views option in the Render Layers panel) Known limitations: ------------------ * Parallel convergence is not supported (you need to set a convergence distance really high to simulate this effect). * Pivot was not supposed to affect the render but it does, this has to be looked at, but for now set it to CENTER * Derivatives in perspective camera need to be pre-computed or we shuld get rid of kcam->dx/dy (Sergey words, I don't fully grasp the implication shere) * This works in perspective mode and in panorama mode. However, for fully benefit from this effect in perspective mode you need to render a cube map. (there is an addon for this, developed separately, perhaps we could include it in master). * We have no support for "neck distance" at the moment. This is supposed to help with objects at short distances. * We have no support to rotate the "Up Axis" of the stereo plane. Meaning, we hardcode 0,0,1 as UP, and create the stereo pair related to that. (although we could take the camera local UP when rendering panoramas, this wouldn't work for perspective cameras. * We have no support for interocular distance attenuation based on the proximity of the poles (which helps to reduce the pole rotation effect/artifact). THIS NEEDS DOCS - both in 2.78 release log and the Blender manual. Meanwhile you can read about it here: http://code.blender.org/2015/03/1451 This patch specifically dates from March 2015, as you can see in the code.blender.org post. Many thanks to all the reviewers, testers and minor sponsors who helped me maintain spherical-stereo for 1 year. All that said, have fun with this. This feature was what got me started with Multi-View development (at the time what I was looking for was Fulldome stereo support, but the implementation is the same). In order to make this into Blender I had to make it aiming at a less-specic user-case Thus Multi-View started. (this was December 2012, during Siggraph Asia and a chat I had with Paul Bourke during the conference). I don't have the original patch anymore, but you can find a re-based version of it from March 2013, right before I start with the Multi-View project https://developer.blender.org/P332 Reviewers: sergey, dingto Subscribers: #cycles Differential Revision: https://developer.blender.org/D1223
2016-01-14Cycles: Cleanup, spelling and indentationSergey Sharybin
2016-01-09Cleanup: warning/spellingCampbell Barton
2015-12-31Cycles: Implement rolling shutter effectSergey Sharybin
This is an attempt to emulate real CMOS cameras which reads sensor by scanlines and hence different scanlines are sampled at a different moment in time, which causes so called rolling shutter effect. This effect will, for example, make vertical straight lines being curved when doing horizontal camera pan. This is controlled by the Shutter Type option in the Motion Blur panel. Additionally, since scanline sampling is not instantaneous it's possible to have motion blur on top of rolling shutter. This is controlled by the Rolling Shutter Time slider which controls balance between pure rolling shutter effect and pure motion blur effect. Reviewers: brecht, juicyfruit, dingto, keir Differential Revision: https://developer.blender.org/D1624
2015-10-28Cycles: Support user-defined shutter curveSergey Sharybin
Previously shutter was instantly opening, staying opened for the shutter time period of time and then instantly closing. This isn't quite how real cameras are working, where shutter is opening with some curve. Now it is possible to define user curve for how much shutter is opened across the sampling period of time. This could be used for example to make motion blur trails softer.
2015-08-07Fix T45721: Panoramic render in Cycles camera : depth of field issue with ↵Dalai Felinto
bump maps - patch by Brecht Van Lommel
2015-07-21Cycles: Implement camera zoom motion blurSergey Sharybin
Works totally similar to camera motion blur and majority of the changes are related on just passing extra arguments to sync() functions. Couple of things still to look into: - Motion pass will not include motion caused by the zoom. - Only perspective cameras are supported currently. - Motion is being interpolated on projected coordinates, which might give different results from constructing projection matrix from interpolated field of view. This could be good enough for us, but we need to consider improving this at some point. Reviewers: juicyfruit, dingto Reviewed By: dingto Differential Revision: https://developer.blender.org/D1383
2015-05-09Cycles: OpenCL kernel splitGeorge Kyriazis
This commit contains all the work related on the AMD megakernel split work which was mainly done by Varun Sundar, George Kyriazis and Lenny Wang, plus some help from Sergey Sharybin, Martijn Berger, Thomas Dinges and likely someone else which we're forgetting to mention. Currently only AMD cards are enabled for the new split kernel, but it is possible to force split opencl kernel to be used by setting the following environment variable: CYCLES_OPENCL_SPLIT_KERNEL_TEST=1. Not all the features are supported yet, and that being said no motion blur, camera blur, SSS and volumetrics for now. Also transparent shadows are disabled on AMD device because of some compiler bug. This kernel is also only implements regular path tracing and supporting branched one will take a bit. Branched path tracing is exposed to the interface still, which is a bit misleading and will be hidden there soon. More feature will be enabled once they're ported to the split kernel and tested. Neither regular CPU nor CUDA has any difference, they're generating the same exact code, which means no regressions/improvements there. Based on the research paper: https://research.nvidia.com/sites/default/files/publications/laine2013hpg_paper.pdf Here's the documentation: https://docs.google.com/document/d/1LuXW-CV-sVJkQaEGZlMJ86jZ8FmoPfecaMdR-oiWbUY/edit Design discussion of the patch: https://developer.blender.org/T44197 Differential Revision: https://developer.blender.org/D1200
2015-05-09Cycles: Presumably correct workaround for addrspace in camera motion blurSergey Sharybin
2015-02-26Revert "Cleanup: Simplify camera sample motion blur code."Thomas Dinges
This reverts commit 8197f0bb645f73f41071daaccf205a7583e695f5.
2015-02-26Cleanup: Simplify camera sample motion blur code.Thomas Dinges
2015-02-21Cycles: Workaround for NVidia OpenCL compilationSergey Sharybin
It was complaining about explicit __constant to __private memory conversion, which is now worked around using implicit conversion. It's not a real fix i'm afraid and i'm still failing to build OpenCL kernel with latest Linux drivers, but maybe it'll let someone else to investigate what causes compiler to run out of memory?
2015-01-14Fix T43195: Cycles uses clipping sphere instead of clipping planeSergey Sharybin
Basically the title tells it all, now Cycles uses proper clipping plane, matching other render engines.
2014-12-25Cleanup: Fix Cycles Apache header.Thomas Dinges
This was already mixed a bit, but the dot belongs there.
2014-08-27Cycles Aperture Ratio - option to produce anamorphic bokehDalai Felinto
Thanks for Aldo Zang for the help with the fix for the panorama/fisheye depth of field calculation and the overall math. Reviewed By: sergey, dingto Subscribers: juicyfruit, gregzaal, #cycles, dingto, matray Differential Revision: https://developer.blender.org/D753
2014-05-27Cycles: new camera_direction_from_pointDalai Felinto
Reviewers: brecht Differential Revision: https://developer.blender.org/D556
2014-03-29Cycles code refactor: replace magic ~0 values in the code with defines.Brecht Van Lommel
2014-03-29Cycles code refactor: improve vertex motion attribute storage and export.Brecht Van Lommel
This now supports multiple steps and subframe sampling of motion. There is one difference for object and camera transform motion blur. It still only supports two steps there, but the transforms are now sampled at subframe times instead of the previous and next frame and then interpolated/extrapolated. This will give different render results in some cases but it's more accurate. Part of the code is from the summer of code project by Gavin Howard, but it has been significantly rewritten and extended.
2013-11-18Cycles: change __device and similar qualifiers to ccl_device in kernel code.Brecht Van Lommel
This to avoids build conflicts with libc++ on FreeBSD, these __ prefixed values are reserved for compilers. I apologize to anyone who has patches or branches and has to go through the pain of merging this change, it may be easiest to do these same replacements in your code and then apply/merge the patch. Ref T37477.
2013-08-18Cycles: relicense GNU GPL source code to Apache version 2.0.Brecht Van Lommel
More information in this post: http://code.blender.org/ Thanks to all contributes for giving their permission!
2013-07-10Fix #36053: slow GPU render with panorama camera + depth of field.Brecht Van Lommel
2013-06-08Cycles: window texture coordinates now work with orthographic cameras, thisBrecht Van Lommel
was an old issue since the first version.
2013-06-04Cycles:Thomas Dinges
* Revert r57203 (len() renaming) There seems to be a problem with nVidia OpenCL after this and I haven't figured out the real cause yet. Better to selectively enable native length() later, after figuring out what's wrong. This fixes [#35612].
2013-06-03Cycles / Math functions:Thomas Dinges
* Rename some math functions: len -> length len_squared -> length_squared normalize_len -> normalize_length * This way OpenCL uses its inbuilt length() function, rather than our own. The other two functions have been renamed for consistency. * Tested CPU, CUDA and OpenCL compile, should be no functional changes.
2013-05-14Cycles :Thomas Dinges
* Use is_zero(a) rather than dot(a, a) == 0, saves some calculations.
2013-05-12Cycles / Orthographic Camera:Thomas Dinges
* Avoid one unneeded division by 1.0f and save one variable assignment.
2013-05-04Fix #35207: addition to previous fix to avoid OSL getting uninitializedBrecht Van Lommel
ray differentials for lighting, which could cause bad texture filtering artifacts or performance.
2013-04-06fix: #34871 Cycles/CUDA/sm_35: Build problems probably due to issues with ↵Gaia Clary
float3 operators (on windows?)
2013-04-05Attempt to fix #34871: random CUDA 3.5 compile failure due to recent change.Brecht Van Lommel
2013-04-03Fix #34700: orthographic camera DOF was still not working correct.Brecht Van Lommel
2013-04-02Cycles: initial subsurface multiple scattering support. It's not working asBrecht Van Lommel
well as I would like, but it works, just add a subsurface scattering node and you can use it like any other BSDF. It is using fully raytraced sampling compatible with progressive rendering and other more advanced rendering algorithms we might used in the future, and it uses no extra memory so it's suitable for complex scenes. Disadvantage is that it can be quite noisy and slow. Two limitations that will be solved are that it does not work with bump mapping yet, and that the falloff function used is a simple cubic function, it's not using the real BSSRDF falloff function yet. The node has a color input, along with a scattering radius for each RGB color channel along with an overall scale factor for the radii. There is also no GPU support yet, will test if I can get that working later. Node Documentation: http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Shaders#BSSRDF Implementation notes: http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles/Subsurface_Scattering
2013-04-02Cycles: code refactoring to add generic lookup table memory.Brecht Van Lommel
2013-03-21Fix #34700: cycles depth of field now works with orthographic cameras too.Brecht Van Lommel
2013-01-23Fix #33915: tweak self intersection epsilon for motion blur a bit further, stillBrecht Van Lommel
had some cases where there were artifacts. Also fix rendering error with shutter time set to 0.
2013-01-10Cycles: multiple importance sampling for lamps, which helps reduce noise forBrecht Van Lommel
big lamps and sharp glossy reflections. This was already supported for mesh lights and the background, so lamps should do it too. This is not for free and it's a bit slower than I hoped even though there is no extra BVH ray intersection. I'll try to optimize it more later. * Area lights look a bit different now, they had the wrong shape before. * Also fixes a sampling issue in the non-progressive integrator. * Only enabled for the CPU, will test on the GPU later. * An option to disable this will be added for situations where it does not help. Same time comparison before/after: http://www.pasteall.org/pic/show.php?id=43313 http://www.pasteall.org/pic/show.php?id=43314