Commit Graph

2622 Commits

Author SHA1 Message Date
Daniel Genrich
8a25e2d2b2 Smoke: Merge parts of Smoke2 branch
New:
----------
Collision objects do cause vorticity when passing through smoke

Part of my Smoke Development Project (milestone III)
2012-10-15 19:57:18 +00:00
Brecht Van Lommel
fe47ae525d Cycles: tweak progressive refine tooltip to make it more clear 2012-10-15 17:56:53 +00:00
Brecht Van Lommel
c10c6b1cea Fix #32844: cycles camera motion blur producing completely blurred frames sometimes. 2012-10-15 17:56:40 +00:00
Daniel Genrich
827c70abd8 Update to stable Eigen 3.1.1
- Fixes several bugs within the Eigen library:
http://eigen.tuxfamily.org/index.php?title=ChangeLog#Eigen_3.1.1
2012-10-15 16:29:23 +00:00
Sergey Sharybin
c5300c638c Solve some issues with smoke when using strict compile flags
- Mark some functions as static
- ifdef-ed currently unused functions from spectrum.cpp
- Fixed missing prototype for smectrum() function
2012-10-15 09:25:03 +00:00
Campbell Barton
4d4664d98f code cleanup: check for msvc directly when using warning pragma's. 2012-10-15 02:15:07 +00:00
Campbell Barton
3a947cf537 code cleanup: remove redundant casts 2012-10-14 08:49:01 +00:00
Campbell Barton
27e54f4d37 code cleanup: remove redundant casts. quiet some qualifier warnings. 2012-10-14 07:40:16 +00:00
Sergey Sharybin
3b88a29abf Cycles: progressive refine option
Just makes progressive refine :)

This means the whole image would be refined gradually using as much
threads as it's set in performance settings. Having enough tiles is
required to have this option working as it's expected.

Technically it's implemented by repeatedly computing next sample for
all the tiles before switching to next sample.

This works around 7-12% slower than regular tile-based rendering, so
use this option only if you really need it.

This commit also fixes progressive update of image when Save Buffers
option is enabled.

And one more thing this commit fixes is handling display buffer with
Save Buffers option enabled. If this option is enabled image buffer
wouldn't have neither byte nor float buffer until image is fully
rendered which could backfire in missing image while rendering in
cases color management cache became full.

This issue solved by allocating byte buffer for image buffer from
tile update callback.

Patch was reviewed by Brecht. He also made some minor edits to
original version to patch. Thanks, man!
2012-10-13 12:38:32 +00:00
Brecht Van Lommel
51105bb2bd Fix for wrong cycles tangent in some cases, was missing transform. 2012-10-13 12:11:01 +00:00
Brecht Van Lommel
fe09b24e86 Cycles: per-BSDF normal input and new Bump node.
Each BSDF node now has a Normal input, which can be used to set a custom normal
for the BSDF, for example if you want to have only bump on one of the layers in
a multilayer material.

The Bump node can be used to generate a normal from a scalar value, the same as
what happens when you connect a scalar value to the displacement output.

Documentation has been updated with the latest changes:
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes

Patch by Agustin Benavidez, some implementation tweaks by me.
2012-10-10 15:56:43 +00:00
Brecht Van Lommel
56f798db8c Cycles: make anistropic BSDF / tangent work without UV map, based on generated
coordinates map to a sphere.
2012-10-10 14:21:58 +00:00
Daniel Genrich
cb634b9100 Google Summer of Code project: "Smoke Simulator Improvements & Fire".
Documentation & Test blend files:
------------------
http://wiki.blender.org/index.php/User:MiikaH/GSoC-2012-Smoke-Simulator-Improvements

Credits:
------------------
Miika Hamalainen (MiikaH): Student / Main programmer

Daniel Genrich (Genscher): Mentor / Programmer of merged patches from Smoke2 branch
Google: For Google Summer of Code 2012
2012-10-10 13:18:07 +00:00
Brecht Van Lommel
f0a9b66469 Cycles: Anisotropic BSDF enabled, with tangents now computed from the active UV map.
It's using the Ward BSDF currently, which has some energy loss so might be a bit
dark. More/better BSDF options can be implemented later.

Patch by Mike Farnsworth, some modifications by me. Currently it's not possible yet
to set a custom tangent, that will follow as part of per-bsdf normals patch.
2012-10-10 13:02:20 +00:00
Brecht Van Lommel
94f869a256 Cycles: camera motion blur enabled.
Still more work needed to get object motion blur ready.
2012-10-09 18:37:14 +00:00
Brecht Van Lommel
5f52285a01 Fix cycles task manager calling pthread_join() twice. I haven't seen any bugs
from this but best to fix anyway as it causes undefined behavior. Pointed out
on irc by dslammu, thanks!
2012-10-09 14:28:29 +00:00
Daniel Genrich
a580c891a7 Bugfix [#32703] elbeem's isSimworldOk() will never return FALSE
Fixed as suggested by Campbell, thank you!
2012-10-09 13:09:03 +00:00
Brecht Van Lommel
6a82b985c3 Fix #32815: cycles environment render as lamp crash with resolution >= 1024. 2012-10-08 12:15:18 +00:00
Brecht Van Lommel
e3ab85a3f5 Revert fix for #31806, needs a better solution, can hang compiling some shaders. 2012-10-07 14:15:50 +00:00
Nicholas Bishop
e8bc62e162 Avoid unecessary minimizer calculations in dualcon
* The minimize() function, which solves a least-squares problem, is
  only needed for sharp remesh mode, but was being calculated for
  smooth and blocks modes as well. Disabling this calculation when
  it's not needed gives a big performance boost.
2012-10-06 18:28:38 +00:00
Nicholas Bishop
8b4baa347f Code cleanups for dualcon octree
* Move InternalNode operators from Octree class into InternalNode
  struct

* Constify various member functions
2012-10-06 18:28:34 +00:00
Thomas Dinges
f7d61831e1 Cycles / OSL:
* OSL UI message did not show up when device type was GPU, but User Preferences were None. Also remove experimental check, more convenient for testing.
2012-10-06 17:11:53 +00:00
Lukas Toenne
78978dcd80 Fix for a case of 'static initialization fiasco' with OSL closure variables. The parameter lists are using OIIO::TypeDesc static standards, which are also static variables. With static OSL libraries these are not initialized when the closure parameter lists are initialized, so OSL rejects the closure types.
Putting static initialization into functions works just as well, but ensures the OIIO::TypeDesc access is delayed until initialization is complete.
2012-10-06 16:28:02 +00:00
Brecht Van Lommel
098d611c7b Fix for UV texture coordinate problem in cycles, after recent fix. 2012-10-06 11:52:54 +00:00
Brecht Van Lommel
e23b202693 Fix part of cycles/osl light pass rendering, transmission still not correct. 2012-10-05 17:17:19 +00:00
Brecht Van Lommel
b67d75fad2 Fix generated texture coordinate issue after "from dupli" option was added. 2012-10-05 14:54:32 +00:00
Sergey Sharybin
4c3620c69d Fixed compilation error on widows
Was caused by mixing up own C-API typedefs with OCIO's
2012-10-05 10:05:26 +00:00
Sergey Sharybin
862decfc82 Booleans: epsilon for planar checks seems a bit too small for single precision math
This could solve issue #32748: Boolean Modifiers Making unneeded edges?
2012-10-05 07:31:30 +00:00
Thomas Dinges
3eba198818 * Fix Scons build when OCIO is disabled.
Still fails when it's enabled though (unresolved symbols).
2012-10-04 23:44:03 +00:00
Brecht Van Lommel
fedc8e1722 Cycles: add "From Dupli" option for texture coordinate node. This gets the
Generated and UV coordinates from the duplicator of instance instead of the
object itself.

This was used in e.g. Big Buck Bunny for texturing instanced feathers with
a UV map on the bird. Many files changed, mainly to do some refactoring to
get rid of G.rendering global in duplilist code.
2012-10-04 21:40:39 +00:00
Brecht Van Lommel
282f98a84d Fix #31806: cycles crash rendering a particular node setup with multiple mix/add
shader nodes.
2012-10-04 20:12:16 +00:00
Brecht Van Lommel
2a08c0dc56 Code cleanup: fix some clang checker warnings. 2012-10-04 20:11:54 +00:00
Sergey Sharybin
ef107d1a4d Color Management: fallback to stub ocio implementation in cases when
ocio configuration file failed to load

This solves issues with infinite NULL-checks to prevent crashes in
such situations. Currently only happens if there's no configuration
file at all, but could be tweaked further to fallback if this file
isn't usable by blender.
2012-10-04 13:39:08 +00:00
Campbell Barton
dc8340fa33 correct some include dirs not being included as SYSTEM paths in cmake. 2012-10-02 03:18:48 +00:00
Brecht Van Lommel
b1f1ee5138 Fix/workaround #31987: sample as lamp for environment textures not working
with multi GPU when resolution > 128.
2012-10-01 18:31:32 +00:00
Brecht Van Lommel
02fc3eb56c Fix #32725: cycles border render + panorama camera not working in viewport. It will
still look a bit strange since the viewport can't actually render such panorama views,
so the opengl drawn scene behind the border render will not match up.
2012-10-01 17:09:12 +00:00
Thomas Dinges
b012c3cf46 Cycles UI Tweak:
* Don't disable Progressive option, just grey out.
2012-09-29 23:45:35 +00:00
Brecht Van Lommel
71195b247e Fix #32072: cycles shadow pass gave different results with/without emitting
materials present, even though it's only taking lamp shadows into account.
2012-09-28 13:41:34 +00:00
Brecht Van Lommel
1d2e59ba1c Fix cycles "synchronizing object" status being shown when it was already finished. 2012-09-28 12:37:20 +00:00
Campbell Barton
589ada7f0c code cleanup: correct spelling 2012-09-28 06:45:20 +00:00
Brecht Van Lommel
46d82a2a12 Fix #32618: cycles multithreaded image loading could crash with CUDA, was a
threading issue that happens once every X frames.
2012-09-27 17:42:09 +00:00
Campbell Barton
8a51d235e6 pep8 cleanup 2012-09-26 21:19:51 +00:00
Campbell Barton
483a6cd6c2 fix for cycles/python script error in normal panel 2012-09-26 19:23:06 +00:00
Sergey Sharybin
c9d4956f45 Color Management: restore abort() in cases of error and WITH_ASSERT_ABORT enabled 2012-09-26 13:21:10 +00:00
Sergey Sharybin
f45f229af2 Use ${OPENEXR_INCLUDE_DIR} instead of ${OPENEXR}/include
There's no CMake symbol names ${OPENEXR} which lead to using /include
as an include directory, which isn't correct.
2012-09-25 07:34:45 +00:00
Jens Verwiebe
87a8aea313 OSL/cmake: the non-intrusive parts, so other os-maintainers can take code over 2012-09-24 19:06:28 +00:00
Brecht Van Lommel
ae7c3eaceb Fix #32638: mesh double sided normals option not available in any Cycles panel. 2012-09-24 14:36:20 +00:00
Campbell Barton
3e6340214d fix for incorrect declaration rna_Object_free_duplilist() in cycles. 2012-09-23 05:02:06 +00:00
Campbell Barton
34114b3b75 code cleanup: remove/comment unused defines 2012-09-22 13:40:31 +00:00
Campbell Barton
1541ee20c8 Improvement to own commit r50810.
Add an optional ghost argument to set the new mouse location when un-grabbing. - without this the mouse would flicker at the old location before moving to the new location - when using the color picker for eg.
2012-09-22 13:23:12 +00:00