Blender Git Commits

Blender Git "master" branch commits.

Page: 2914 / 5574

March 29, 2014, 16:16 (GMT)
Change dyntopo detail size calculation slightly so the result is close
to the radius of the widget when setting the detail.
March 29, 2014, 14:57 (GMT)
Fix scons CUDA build and compile error with more strict compilers.
March 29, 2014, 12:03 (GMT)
Cycles volume: change heterogeneous volume sampling in branched path first hit.

This now uses decoupled ray marching, and removes the probalistic scattering.
What this means is that each AA sample will be slower but contain less noise,
hopefully giving less render time to reach the same noise levels.

For those following along, there's still a bunch of volume sampling improvements
to do: all-light sampling, multiple importance sampling, transmittance threshold,
better indirect light handling, multiple scatter approximation.
March 29, 2014, 12:03 (GMT)
Cycles code internals: add initial implementation of decoupled ray marching.

This basically records all volumes steps, which can then later be used multiple
time to take scattering samples, without having to step through the volume
again. From the paper:

"Importance Sampling Techniques for Path Tracing in Participating Media"

This works only on the CPU, due to usage of malloc/free.
March 29, 2014, 12:03 (GMT)
Cycles code refactor: minor refactoring and comments for volume code.
March 29, 2014, 12:03 (GMT)
Cycles volume: change homogeneous volume sampling in branched path first hit.

Similar to surfaces, this will now always scatter rather than probabilistically
scattering or not depending on the transmittance.

This also makes calculation of branched path throughput non-probalistic, which
makes thing slower too. That's to be solved by decoupled ray marching later.
March 29, 2014, 12:03 (GMT)
Cycles code refactor: shuffle homogeneous volume code to factor out hit/miss decision.

This removes a few optimizations to avoid exp() calls and division, they will be
added back later, at the moment it's more important to make the code easier to
understand and refactor.
March 29, 2014, 12:03 (GMT)
Cycles code refactor: move some more volume code into separate functions.
March 29, 2014, 12:03 (GMT)
Cycles volumes: don't average coefficients over volume step.

Rather use random point in each step instead of giving the steps random sizes.
Gives a bit more accurate results with large step sizes, but also convenient
convention for later changes.
March 29, 2014, 12:03 (GMT)
Fix cycles error for heterogenous volumes, causing double step size to be used.

This gives longer render times due to smaller step size, double it to get
something more like the previous behavior.
March 29, 2014, 12:03 (GMT)
Cycles code refactor: move some volume code to separate functions.
March 29, 2014, 12:03 (GMT)
Cycles: add "density", "flame" and "color" attributes for smoke domains.

These can currently be accessed by adding an Attribute node and specifying one
of those three names. A Smoke/Fire node should be added at some point to make
this more convenient.

These values might change still before the release, in particular for flame the
meaning seems unclear, it's just values in the 0..1 range. This is useful for
color ramps, but it might be good if this was also available as temperature in
kelvin so it can be plugged into the blackbody node. But I couldn't figure out
from the smoke code if or how this corresponds to a physical unit.

Here's a (quite poor) example file for a fire + smoke setup:
http://www.pasteall.org/blend/27990
March 29, 2014, 12:03 (GMT)
Cycles code internals: add support for mesh voxel grid attributes.

These are internally stored as a 3D image textures, but accessible like e.g.
UV coordinates though the attribute node and getattribute().

This is convenient for rendering e.g. smoke objects where data like density is
really a property of the mesh, and it avoids having to specify the smoke object
in a texture node, instead the material will work with any smoke domain.
March 29, 2014, 12:03 (GMT)
Cycles code refactor: move more code to geom folder, add some comments.
March 29, 2014, 12:03 (GMT)
Fix: cycles volume emission incorrectly enabling surface importance sampling.
March 29, 2014, 12:03 (GMT)
Cycles code internals: add CPU kernel support for 3D image textures.
March 29, 2014, 12:03 (GMT)
RNA/Smoke: add access to high resolution density grid, and flame and color grids.
March 29, 2014, 12:03 (GMT)
Cycles code refactor: replace magic ~0 values in the code with defines.
March 29, 2014, 12:03 (GMT)
Cycles: add per object options to disable motion blur and set deformation motion steps.

Notes:

* The motion steps only affect deformation motion blur.
* The actual number of steps is 2^(steps - 1). This avoids having to sample at
many different times for object with more/fewer steps, now the times overlap.
* Deformation motion blur is enabled by default in existing files that have
motion blur enabled. If the object is not deforming, this will be detected at
export time, so raytracing performance will not be affected.

Part of the code is from the summer of code project by Gavin Howard.
March 29, 2014, 12:03 (GMT)
Cycles: add support for curve deformation motion blur.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021