Commit Graph

53241 Commits

Author SHA1 Message Date
IRIE Shinsuke
6316306cc0 Fix bug in image texture UI: "Use Alpha" checkbox doesn't appear if file format is BMP. 2014-03-31 17:37:55 +09:00
Campbell Barton
2fc7d04804 Add Simple randomize vertex tool
D432 from Walid Shouman with normal & uniform options added.
2014-03-31 14:56:43 +11:00
Campbell Barton
4e7872ce46 Add normal option to ED_transverts 2014-03-31 14:55:55 +11:00
Campbell Barton
0055162b75 Tweak slerp assert to be less picky 2014-03-31 14:55:12 +11:00
Campbell Barton
55f83e36cc Py API: Vector.slerp(). also added interp_v3_v3v3_slerp(_safe) functions 2014-03-31 13:28:37 +11:00
Campbell Barton
6aa75d3b2c Fix for error in normalize_vn_vn(), add len_squared_vn 2014-03-31 11:19:32 +11:00
Thomas Dinges
e001b5b33e Cycles: Deformation Motionblur works on GPU, so remove the checks in the UI. 2014-03-31 02:18:49 +02:00
Campbell Barton
c24c34324c Code cleanup: remove unused members of TransVert 2014-03-31 09:58:17 +11:00
Campbell Barton
f1962f187f Refactor: Add generic poll ED_transverts_poll 2014-03-31 09:58:17 +11:00
Mitchell Stokes
f5b79dff41 Fix T39490: BGE: Text to Mesh, then MouseOver does not work
Non-mesh objects default to no collisions. lordloki provided a
patch that sets the collision properties for a mesh converted from
a curve/meta/surf/text to the default collision properties for
a mesh.
2014-03-30 13:55:10 -07:00
Campbell Barton
482201d1a0 Style cleanup 2014-03-31 05:46:19 +11:00
Campbell Barton
0b8774fc42 Fix for missing break statements 2014-03-31 05:46:19 +11:00
Jens Verwiebe
d84bd56ec5 OSX: Remove the apple/omp workaround for now, to better judge compiler differences 2014-03-30 17:38:52 +02:00
Thomas Dinges
b99977ac60 And another compile fix for M_PI and msvc2008... 2014-03-30 15:36:09 +02:00
Campbell Barton
0319db1063 Correct own recent changes broke release builds 2014-03-30 20:35:59 +11:00
Campbell Barton
905c816834 Doxy comment for main() 2014-03-30 20:14:57 +11:00
Campbell Barton
8d1b289b78 Code cleanup: warnings (clang) 2014-03-30 19:37:43 +11:00
Campbell Barton
90d4bb1403 Fix for uninitialized var use 2014-03-30 19:36:51 +11:00
Campbell Barton
c16bd951cd Enable GCC pedantic warnings with strict flags,
also modify MIN/MAX macros to prevent shadowing.
2014-03-30 15:04:20 +11:00
Campbell Barton
0782187979 Code cleanup: BKE_nurbList_handles_set used some strange logic 2014-03-30 15:04:20 +11:00
Campbell Barton
5819421e1b correct recent commit 2014-03-30 15:04:20 +11:00
Campbell Barton
bbfeb120fc Code cleanup: use strict flags for BLI_rand 2014-03-30 15:04:20 +11:00
Campbell Barton
faf529d036 BLI_rand: Add BLI_rng_get_float_unit_v3, was static rayshade func 2014-03-30 15:04:20 +11:00
Campbell Barton
a6e8137983 Convenience macro for print_ funcs, saves passing id each time 2014-03-30 15:04:20 +11:00
Antony Riakiotakis
cc439f683b fix scons ffmpeg libraries for mingw32 2014-03-30 01:35:39 +02:00
Campbell Barton
480c5019bb Code cleanup: reflect_v3_v3v3 made redundant copies 2014-03-30 12:28:09 +11:00
Campbell Barton
3bd15fcf15 Correction for poly_to_tri_count (used over-complicated method) 2014-03-30 12:05:42 +11:00
Antony Riakiotakis
2702170717 Fix mingw32 compilation 2014-03-30 00:51:30 +02:00
Campbell Barton
1f58bfb8be Code cleanup: de-duplicate cotangent weight function & add arg sizes 2014-03-30 11:08:33 +11:00
Campbell Barton
23ef10c705 Code cleanup: kdopbvh, move minmax init into function 2014-03-30 10:33:01 +11:00
Campbell Barton
1963e03bd7 Support #ifndef WITH_SMOKE again 2014-03-30 09:32:57 +11:00
Antony Riakiotakis
7571f2707a Fix MinGW64 compilation until we update the libraries. 2014-03-29 22:12:52 +02:00
Thomas Dinges
a17c38f8e4 Cycles UI: Do not grey out Object Motion Blur buttons, when we use CPU fallback (User Preferences set to None). 2014-03-29 21:58:58 +01:00
Antony Riakiotakis
e659cfdaf7 Change dyntopo detail size calculation slightly so the result is close
to the radius of the widget when setting the detail.
2014-03-29 18:16:36 +02:00
Brecht Van Lommel
73299516fa Fix scons CUDA build and compile error with more strict compilers. 2014-03-29 15:57:27 +01:00
Brecht Van Lommel
f449542d6a 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.
2014-03-29 13:03:50 +01:00
Brecht Van Lommel
3847d0c0df 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.
2014-03-29 13:03:50 +01:00
Brecht Van Lommel
47e7acf231 Cycles code refactor: minor refactoring and comments for volume code. 2014-03-29 13:03:49 +01:00
Brecht Van Lommel
7cb28f41f9 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.
2014-03-29 13:03:49 +01:00
Brecht Van Lommel
9a77872b2b 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.
2014-03-29 13:03:49 +01:00
Brecht Van Lommel
676e1cbe40 Cycles code refactor: move some more volume code into separate functions. 2014-03-29 13:03:49 +01:00
Brecht Van Lommel
b1615f0e0e 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.
2014-03-29 13:03:49 +01:00
Brecht Van Lommel
f5ab699fe8 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.
2014-03-29 13:03:49 +01:00
Brecht Van Lommel
28954ce9c4 Cycles code refactor: move some volume code to separate functions. 2014-03-29 13:03:48 +01:00
Brecht Van Lommel
691c4c17ad 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
2014-03-29 13:03:48 +01:00
Brecht Van Lommel
27043b8e40 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.
2014-03-29 13:03:48 +01:00
Brecht Van Lommel
393216a6df Cycles code refactor: move more code to geom folder, add some comments. 2014-03-29 13:03:48 +01:00
Brecht Van Lommel
663a750c7f Fix: cycles volume emission incorrectly enabling surface importance sampling. 2014-03-29 13:03:48 +01:00
Brecht Van Lommel
a2e4ebd36a Cycles code internals: add CPU kernel support for 3D image textures. 2014-03-29 13:03:48 +01:00
Brecht Van Lommel
07d1fba367 RNA/Smoke: add access to high resolution density grid, and flame and color grids. 2014-03-29 13:03:47 +01:00