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
2014-04-21Cleanup: Pass PathState as a whole, instead of individual members.Thomas Dinges
Differential Revision: https://developer.blender.org/D477
2014-04-21Code cleanup: remove old closure sampling code Cycles.Brecht Van Lommel
This was the original code to get things working on old GPUs, but now it is no longer in use and various features in fact depend on this to work correctly to the point that enabling this code is too buggy to be useful.
2014-04-21Cycles: add Transparent Depth output to Light Path node.Carlo Andreacchio
This can for example be useful if you want to manually terminate the path at some point and use a color other than black. Reviewed By: brecht Differential Revision: https://developer.blender.org/D454
2014-03-29Cycles code refactor: replace magic ~0 values in the code with defines.Brecht Van Lommel
2014-03-29Cycles code refactor: changes to make adding new primitive types easier.Brecht Van Lommel
2014-03-15Code cleanup: Don't assign time 2x, we only need it for Object Motion here.Thomas Dinges
2014-02-07Fix T36979: wrong render of textured mesh lights with multiple importance ↵Brecht Van Lommel
sampling.
2014-01-07Cycles Volume Render: scattering support.Brecht Van Lommel
This is done by adding a Volume Scatter node. In many cases you will want to add together a Volume Absorption and Volume Scatter node with the same color and density to get the expected results. This should work with branched path tracing, mixing closures, overlapping volumes, etc. However there's still various optimizations needed for sampling. The main missing thing from the volume branch is the equiangular sampling for homogeneous volumes. The heterogeneous scattering code was arranged such that we can use a single stratified random number for distance sampling, which gives less noise than pseudo random numbers for each step. For volumes where the color is textured there still seems to be something off, needs to be investigated.
2013-12-28Cycles Volume Render: add flags to quickly detect when objects have a volume ↵Brecht Van Lommel
shader.
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-23Cycles: more code refactoring to rename things internally as well. Also changeBrecht Van Lommel
property name back so we keep compatibility.
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-08-01Cycles / Ray Depth:Thomas Dinges
* Added a Ray Depth output to the Light Path node, which gives the user access to the current bounce. This can be used to limit the maximum ray bounce on a per shader basis. Another use case is to restrict light influence with this, to have a lamp only contribute to the direct lighting. http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/More#Light_Path This is part of my GSoC 2013 project. SVN merge of r58091 and r58772 from soc-2013-dingto.
2013-06-18Cycles: add "Transparent Shadow" option for materials, to disable them per ↵Brecht Van Lommel
material.
2013-06-11Cycles: ray visibility panel is now also available for the world, works same asBrecht Van Lommel
meshes and lamps. The light path node already made this possible but it's a bit faster to render this way and convenient.
2013-06-07Cycles: ray visibility options now work for lamps and mesh lights, with and ↵Brecht Van Lommel
without multiple importance sampling, so you can disable them for diffuse/glossy/transmission. The Light Path node here is still weak and does not give this info. To make that work we'd need to evaluate the shader multiple times which is slow and we can't detect well enough when it is actually needed.
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-06-02Code cleanup / Cycles:Thomas Dinges
* Avoid 2 int castings in hair code and fix some comments.
2013-05-09Cycles OpenCL: a few fixes to get things compiling after kernel changes,Brecht Van Lommel
for Apple OpenCL on OS X 10.8 and simple AO render. Also environment variable CYCLES_OPENCL_TEST can now be set to CPU, GPU, ACCELERATOR, DEFAULT or ALL values to test particuler devices.
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-05-03Possible fix for #35198: uninitialized memory access with background multipleBrecht Van Lommel
importance sampling + OSL.
2013-04-02Cycles: small code cleanup + fix SSS closure mixed with other closures doingBrecht Van Lommel
a bit too much work.
2013-02-13Fix #34226: cycles shadow pass got incorrectly influenced by world multipleBrecht Van Lommel
importance sampleing.
2013-02-12Attempted fix for issue with latest CUDA kernel for 32 bit windows/linux/mac,Brecht Van Lommel
there seems to be some sort of compiler bug in CUDA toolkit 4.2, uninlining a few functions seems to avoid it.
2013-01-30Fix #33984: cycles shadow pass problem with CUDA.Brecht Van Lommel
2013-01-30Cycles: make multiple importance sampling for lamps an option per lamp now,Brecht Van Lommel
disabled by default for backwards compatibility. http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Integrator
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
2013-01-03Cycles Hair: refactoring to store curves with the index of the first key and theBrecht Van Lommel
number of keys in the curve, rather than curve segments with the indices of two keys. ShaderData.segment now stores the segment number in the curve.
2012-12-28New featureStuart Broadfoot
Patch [#33445] - Experimental Cycles Hair Rendering (CPU only) This patch allows hair data to be exported to cycles and introduces a new line segment primitive to render with. The UI appears under the particle tab and there is a new hair info node available. It is only available under the experimental feature set and for cpu rendering.
2012-12-15Cycles OSL minor optimizations: recycle shading context, don't do memoryBrecht Van Lommel
allocations for trace data, avoid some virtual function calls. Only helps a few percentages.
2012-10-18More fixes related to #32900, motion blur with cuda sm 2.0 still disabled.Brecht Van Lommel
2012-10-18Attempts to fix CUDA issues on sm 2.0 cards, still no luck getting motion blurBrecht Van Lommel
working, but this should make it not crash. Also fix for wrong shutter time, should have been shorter.
2012-09-04Revert "Use one context per OSL thread. Not sure if this actually works, but ↵Lukas Toenne
the simple renderer example in OSL does it this way." This does not actually work: The context must not be shared between threads, but using the same context between different samples actually seems to prevent OSL from switching between shaders. The proper solution would be to ensure memory pooling works correctly. This reverts commit 69f87e69258d6266dcb20f09f7e3d4021e663432.
2012-09-04Use one context per OSL thread. Not sure if this actually works, but the ↵Lukas Toenne
simple renderer example in OSL does it this way.
2012-06-13Cycles: first step for implementation of non-progressive sampler that handlesBrecht Van Lommel
direct and indirect lighting differently. Rather than picking one light for each point on the path, it now loops over all lights for direct lighting. For indirect lighting it still picks a random light each time. It gives control over the number of AA samples, and the number of Diffuse, Glossy, Transmission, AO, Mesh Light, Background and Lamp samples for each AA sample. This helps tuning render performance/noise and tends to give less noise for renders dominated by direct lighting. This sampling mode only works on the CPU, and still needs proper tile rendering to show progress (will follow tommorrow or so), because each AA sample can be quite slow now and so the delay between each update wil be too long.
2012-06-09style cleanup: block commentsCampbell Barton
2012-06-04Cycles: spot lamp support.Brecht Van Lommel
2012-05-02Cycles: add Ray Length output to Light Path node. This gives the distance ↵Brecht Van Lommel
travelled by the last light ray. One use case for this might be to do absorption. Patch #31232 by Agustin benavidez, see this blog post for details: http://agus3d.blogspot.com.ar/2012/05/blender-cycles-ray-length-node-output.html
2012-04-30Cycles: support for motion vector and UV passes.Brecht Van Lommel
Most of the changes are related to adding support for motion data throughout the code. There's some code for actual camera/object motion blur raytracing but it's unfinished (it badly slows down the raytracing kernel even when the option is turned off), so that code it disabled still. Motion vector export from Blender tries to avoid computing derived meshes when the mesh does not have a deforming modifier, and it also won't store motion vectors for every vertex if only the object or camera is moving.
2012-03-28Cycles: shadow pass support. Note that this only takes into account lamps,Brecht Van Lommel
emitting objects or world lighting do not contribute to the shadow pass. Consider this more as a pass useful for some compositing tricks, unlike other lighting passes this pass can't be used to exactly reconstruct the combined pass.
2012-01-30Fix #30009: cycles translucent BSDF + environment importance sampling notBrecht Van Lommel
working correct.
2012-01-26Cycles: disable environment importance sampling code for CUDA cards withBrecht Van Lommel
compute model < 2.x, to avoid running out of memory in the compiler.
2012-01-25Cycles: Render PassesBrecht Van Lommel
Currently supported passes: * Combined, Z, Normal, Object Index, Material Index, Emission, Environment, Diffuse/Glossy/Transmission x Direct/Indirect/Color Not supported yet: * UV, Vector, Mist Only enabled for CPU devices at the moment, will do GPU tweaks tommorrow, also for environment importance sampling. Documentation: http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Passes
2012-01-20Sample as Lamp option for world shaders, to enable multiple importance sampling.Brecht Van Lommel
By default lighting from the world is computed solely with indirect light sampling. However for more complex environment maps this can be too noisy, as sampling the BSDF may not easily find the highlights in the environment map image. By enabling this option, the world background will be sampled as a lamp, with lighter parts automatically given more samples. Map Resolution specifies the size of the importance map (res x res). Before rendering starts, an importance map is generated by "baking" a grayscale image from the world shader. This will then be used to determine which parts of the background are light and so should receive more samples than darker parts. Higher resolutions will result in more accurate sampling but take more setup time and memory. Patch by Mike Farnsworth, thanks!
2011-10-16Cycles: add transparent shadow support, i.e. shadows through Transparent BSDFBrecht Van Lommel
shaders, enabled by default.
2011-10-16Cycles:Brecht Van Lommel
* Sun, area and point lights with size now supported * Cast shadow option to disable shadow casting for lamps * Emission strength of materials tweaked such that setting strength to 1.0 basically makes the material "shadeless" in that the value of the color input will be the resulting color in the image.
2011-09-28Cycles: internal changes that should have no effect on user level yet, addedBrecht Van Lommel
shader flags for various purposes, and some code for light types other than points.
2011-09-12Cycles:Brecht Van Lommel
* Fix missing update when editing objects with emission materials. * Fix preview pass rendering set to 1 not showing full resolution. * Fix CUDA runtime compiling failing due to missing cache directory. * Use settings from first render layer for visibility and material override. And a bunch of incomplete and still disabled code mostly related to closure sampling.
2011-04-27Cycles render engine, initial commit. This is the engine itself, blender ↵Ton Roosendaal
modifications and build instructions will follow later. Cycles uses code from some great open source projects, many thanks them: * BVH building and traversal code from NVidia's "Understanding the Efficiency of Ray Traversal on GPUs": http://code.google.com/p/understanding-the-efficiency-of-ray-traversal-on-gpus/ * Open Shading Language for a large part of the shading system: http://code.google.com/p/openshadinglanguage/ * Blender for procedural textures and a few other nodes. * Approximate Catmull Clark subdivision from NVidia Mesh tools: http://code.google.com/p/nvidia-mesh-tools/ * Sobol direction vectors from: http://web.maths.unsw.edu.au/~fkuo/sobol/ * Film response functions from: http://www.cs.columbia.edu/CAVE/software/softlib/dorf.php