Commit Graph

778 Commits

Author SHA1 Message Date
ceedd5bd35 Fix cycles CUDA sm 1.3 build with 32 bit compiler, tweaked voronoi
and brick code so that it can be uninlined.
2012-11-30 07:27:17 +00:00
1246ef714e Fix #33351: cycles OSL not loading grayscale images as RGB correctly. 2012-11-30 06:10:25 +00:00
e7f594b0df Fix #33347: cycles OSL crash connecting string to vector socket. 2012-11-30 06:10:16 +00:00
f1745706ad Fix cycles motion blur + OSL + object texture coordinates issue. 2012-11-29 16:11:37 +00:00
186bdbd8d8 Fix #33344: cycles motion blur was still crashing on CUDA sm 2.0. Solution now
is also an optimization, use quaternion nlerp instead of slerp, there's no good
reason to use slerp, and nlerp is faster too.
2012-11-29 13:07:45 +00:00
d387dcd110 Fix compile error with clang.
Patch by sambler via irc
2012-11-29 12:22:07 +00:00
0d6976ad0c Fix #32900: object motion blur not working on the GPU. To make this work I disabled motion
blurring of scale animation, probably not a big loss in practice since it's not so common
to animate this, can be added back later.
2012-11-29 00:43:50 +00:00
bb0195e039 Fix #33337: cycles crash with progressive refine and multiple render layers. 2012-11-28 19:57:29 +00:00
33f81187fb Fix #33335: cycles SVM closure issue in recent bugfix, incorrectly tagging
node as done.
2012-11-28 19:13:34 +00:00
4c13633582 Fix #33334: missing glossy label for OSL phong ramp caused assert. 2012-11-28 16:42:32 +00:00
f4c93ae935 Fix #33328: cycles not rendering dupliframes, needs an exception. 2012-11-27 21:47:55 +00:00
5f8fded639 Fix cycles OSL shader loading warnings after recent bugfix. 2012-11-27 16:02:12 +00:00
ceed3ef640 Fix #32907: failure rendering a complex node setup, hitting fixed max number
of closures limit. Optimized the code now so it can handle more.

Change SVM mix/add closure handling, now we transform the node graph so that
the mix weights are fed into the closure nodes directly.
2012-11-26 21:59:41 +00:00
f5d8cd34cd -fno-rtti is a gcc option which gives a warning when using MSVC 2012-11-26 13:48:48 +00:00
58ee2bdfc0 Fix: cycles light sampling crash, happens on rare occasions due to float
rounding errors.
2012-11-26 11:05:22 +00:00
ed986b62e8 Fix #33152: cycles SVM crash with certain shader nodes setups where closures would
appear multiple times after flattening the mix/add shader part of the graph into a
tree structure.
2012-11-24 14:50:21 +00:00
2a9b5e8f81 Fix #33267: cycles math node power gave different results for CPU and GPU. The
GPU variants do not support pow(-1, 2), it doesn't check for even exponents, do
manually now.
2012-11-23 17:39:41 +00:00
c25cfd3044 Fix cycles AO issue, still was missing AO pass for black/non-diffuse objects. 2012-11-23 13:41:25 +00:00
8ab5aa6e8d code cleanup: warning & style 2012-11-23 06:35:06 +00:00
Dalai Felinto
f403ca34c7 final fix for Sensor Fit (AUTO, HOR, VERT) in panorama lens - patch by Brecht Van Lommel and me 2012-11-23 02:10:13 +00:00
a72c03bc1c Fix cycles OSL wrong reflection texture coordinate. 2012-11-22 22:24:34 +00:00
f4297c2ec5 Cycles: disable anisotropic BSDF on CUDA sm 1.x, to try to get it building again. 2012-11-22 16:08:18 +00:00
cdcab16d12 Style cleanup: mixed tabs/spaces were used for indentation in osl_closures.h 2012-11-21 13:45:37 +00:00
b118512448 Cycles: solve -Wmissing-declarations for osl kernel 2012-11-21 13:41:47 +00:00
a9c601ceff Fix #33257: cycles camera clipping did not work through transparent objects. 2012-11-21 13:22:24 +00:00
3a67122aef Fix #33256: cycles Z pass for orthographic camera was not right, now is more
useful for e.g. fog in compositing.
2012-11-21 13:00:57 +00:00
90cdf34f56 Fix #32796: cycles did not support image auto refresh option. 2012-11-21 13:00:51 +00:00
Dalai Felinto
8c4fa687e0 Cycles bugfix: AUTO wasn't working for Equisolid Fisheye lens
Now one no longer needs to match the sensor dimensions with the render dimensions manually.

IMPORTANT NOTE: if you were using AUTO before with mismathing sensor aspect ratio (comparing to the render dimensions)
this will change your render! We can doversion this, but apart from Tube project I don't know if anyone else
is using this yet (part due to this bug and the only recently fixed 3dview preview aspect ratio).

That should help more artists to take advantage of this fantastic Blender feature.
It still helps to know the parameters of kwnown cameras/lens though.
For example:

Nikon DX2S with a 10.5mm fisheye can be set with:
Render resolution: 4288 x 2848
Sensor 23.7 x 15.70 (15.70 can be ommitted if AUTO is used as fit method)

Note: some cameras render different sizes according to the recording mode.
For example, a Red Scarlet in 5k (@12 fps) can render a full circular fisheye with a sigma 4.5 lens.
The same camera in the 30fps recording mode renders 4k in a cropped circular image.
So it's not only the resolution that changes, but the actual sensor been used.

So just keep in mind that the more information you have from the camera/lens you want to emulate the better.
Bug found at/patch written as a follow up of the BlenderPRO2012, patch reviewed by Brecht Van Lommel
2012-11-21 01:07:30 +00:00
fdadfde5c5 Fix #33158: motion vector pass wrong in cycles in some scenes, wrong vectors
due to float precision problem in matrix inverse.
2012-11-21 01:00:03 +00:00
fd619cd7f1 Fix #33177: OSL render difference with missing textures and HSV nodes. 2012-11-20 17:40:21 +00:00
ab1b5af08d Fix cycles OSL missing support for texture mapping paramaters found in texture
properties tab.
2012-11-20 17:40:10 +00:00
a80b0915c7 Fix #33243: cycles CUDA going missing sometimes, disabled the new code now that
can detect if a device becomes available while Blender runs, appears to be
unreliable for some reason.
2012-11-20 17:39:56 +00:00
68e9fdeb81 code cleanup: comment unused members of bmesh operator slots and some osl style edits. 2012-11-20 14:31:58 +00:00
f92359cc29 Fix [#33239] Cycles OSL : Environment Texture Rotation Incorrect:
* Projection mappings were not implemented yet.
2012-11-20 14:18:56 +00:00
abce6309e3 Scons: better fix for OSL compiler path, so it also works on OS X. 2012-11-19 15:50:28 +00:00
312abf8cb2 SCons: make OSL linking work on windows, and fix OSL compiler path issue to
properly expand to absolute path.
2012-11-19 14:54:35 +00:00
3b570440e4 OSX/scons: refine oslc compile workaround 2012-11-19 11:46:55 +00:00
70b6e2717a Windows / OSL:
* Scons cleanup, to avoid redeclaration of /EHsc. Linking still fails.
2012-11-18 15:02:09 +00:00
6810813068 OSL / Windows:
* Some fixes for scons, kernel/osl compiles now. 
* Still disabled per default, as relative path to oslc.exe does not work and linking fails.
2012-11-18 03:56:53 +00:00
4ece50723b OSX/scons/osl: ready for compile now, little hack to be resolved, todo:fix a crash with shadercompile 2012-11-16 00:43:28 +00:00
104a7bfb90 Fix #33170: cycles viewport update issue with motion blur enabled
(which is supposed to do nothing in this case).
2012-11-15 21:52:17 +00:00
69320ea595 OSX/scons/osl: initial osl compiling, todo: fix shader compile and copy to bundle 2012-11-15 21:35:25 +00:00
7e97cd4b49 Fix #33188: AO pass wrong after recent change. 2012-11-15 21:32:05 +00:00
2324c80f50 Cycles OSL: windows build system changes to support static OSL/OIIO. 2012-11-15 17:16:27 +00:00
1c9b548d92 Windows / Scons OSL:
* Initial support, still commented.
2012-11-15 16:34:22 +00:00
5c6f6301b0 Image thread safe improvements
This commit makes BKE_image_acquire_ibuf referencing result, which means once
some area requested for image buffer, it'll be guaranteed this buffer wouldn't
be freed by image signal.

To de-reference buffer BKE_image_release_ibuf should now always be used.

To make referencing working correct we can not rely on result of
image_get_ibuf_threadsafe called outside from thread lock. This is so because
we need to guarantee getting image buffer from list of loaded buffers and it's
referencing happens atomic. Without lock here it is possible that between call
of image_get_ibuf_threadsafe and referencing the buffer IMA_SIGNAL_FREE would
be called. Image signal handling too is blocking now to prevent such a
situation.

Threads are locking by spinlock, which are faster than mutexes. There were some
slowdown reports in the past about render slowdown when using OSX on Xeon CPU.
It shouldn't happen with spin locks, but more tests on different hardware would
be really welcome. So far can not see speed regressions on own computers.

This commit also removes BKE_image_get_ibuf, because it was not so intuitive
when get_ibuf and acquire_ibuf should be used.

Thanks to Ton and Brecht for discussion/review :)
2012-11-15 15:59:58 +00:00
613cf7ae37 Cycles: ambient occlusion now takes per-BSDF normals into account. 2012-11-15 15:37:58 +00:00
1c410ab6e7 Fix #33183: cycles bump mapping was not executed with only an AO node in a material. 2012-11-15 14:08:46 +00:00
9eccf40daa OSL Scons rules
Initial support of OSL builds using SCons build system. Only tested on Linux now.
No changes to configuration files themselves -- for now check how it's configured
for linux buildbot (it was already horror to make all this changes and verify them,
changes to linux-config.py could easily be done later).

Currently WITH_BF_STATICOSL and WITH_BF_STATICLLVM are more like rudiments because
linking against oslexec requires special trick with --whole-archive. We woul either
need to find a way dealing with this oslexec less hackish or drop STATICOSL and 
STATICLLVM flags. Will keep dropping this flags for until we have "final" build
rules for OSL.

Still can not make 32bit linux rendering with OSL -- blender simply crashes when
starting rendering. So for time being this issues are solving disabled OSL for
32bit build slaves.
2012-11-15 13:11:12 +00:00
16f1c86953 Fix OSL build error on linux. 2012-11-14 22:45:44 +00:00