Commit Graph

799 Commits

Author SHA1 Message Date
Campbell Barton
c40030a36c replace BLI_array_declare with BLI_array_staticdeclare() and BLI_array_alloca() for smaller arrays. 2012-12-12 02:48:03 +00:00
Thomas Dinges
188718a3d5 OSL Shader Files:
* Simplify default color values, where each component was the same.
* Initialize closures as Null Closure, rather than assigning an existing closure, gets overwritten anyways.
2012-12-11 16:06:03 +00:00
Brecht Van Lommel
8d4bd2cf3b Cycles OSL: add diffuse_ramp closure in addition to phong_ramp. 2012-12-11 14:39:41 +00:00
Brecht Van Lommel
43c04eefe3 Cycles: RGB and Vector Curves nodes now supported, with the limitation that the
range must be left to the default (0..1 and -1..1).
2012-12-11 14:39:37 +00:00
Brecht Van Lommel
7c81952179 Cycles: trick to make building with OSL trunk work as well, it has a different
name for LoadMemoryShader so we make it call the right name depending on which
is available.
2012-12-11 14:39:32 +00:00
Brecht Van Lommel
919311a654 Fix cycles OSL + AO enabled in world settings not working correct. 2012-12-10 12:56:56 +00:00
Brecht Van Lommel
98fab9e530 Fix #33454: cycles wasn't hiding the original object used for dupliverts or
duplifaces like blender internal.
2012-12-09 12:43:40 +00:00
Brecht Van Lommel
369b9fcf0f Fix missing mapping and influence panel for particles when cycles is selected
as render engine. Still missing is colors and texture slots, but that's too
tricky to fix this close to release.
2012-12-07 11:30:40 +00:00
Brecht Van Lommel
c20292f624 Fix mapping node min/max not working OSL. 2012-12-06 09:13:57 +00:00
Campbell Barton
767bfba808 cmake was missing some header files. 2012-12-04 14:43:42 +00:00
Konrad Kleine
38dcce2da2 FIX: OSL mix shader clamps 2nd color component to 3rd one.
Previously the OSL Mix shader node was clamping the 2nd color component (green) to the 3rd color component (blue). Now every component is clamped on its own.
2012-12-04 08:40:24 +00:00
Brecht Van Lommel
a9d889cba4 Fix #33405: preview render getting stuck in a particular .blend file, ObjectKey
operator< had wrong brackets, changed it now to be more clear.

Fix #33404: crash GPU rendering with OSL option still enabled. There was a check
to disable OSL in this case, but it shouldn't have modified scene->params because
this is used for comparison in scene->modified().
2012-12-04 07:48:09 +00:00
Campbell Barton
c0078a9879 osl style cleanup and update man-page. 2012-12-04 03:18:08 +00:00
Brecht Van Lommel
dbd44e3bf5 Fix scons not installing closure/ directory for runtime compiles of CUDA kernel. 2012-12-03 16:51:05 +00:00
Campbell Barton
4a9c522125 quiet float -> double conversion warnings and do some osl style edits. 2012-12-03 13:58:08 +00:00
Brecht Van Lommel
41f98978e3 Fix cycles issue when NaN is used for RGB ramp, can access array out of bounds then.
OSL noise() function is generating NaN's in certain cases, fix for that goes to our
OSL branch.

Also add missing minimum weight and max closure checks to OSL, forgot to add these
when fixing another bug.
2012-12-03 12:21:44 +00:00
Antony Riakiotakis
4e7a4960f7 get rid of annoying redefinition warning on cycles compilation for mingw64 2012-12-02 20:08:11 +00:00
Brecht Van Lommel
b8d822eb35 Fix performance issue in OSL geometry node, compiler fails to optimize out the
tangent computation, tweaked the code so this works.
2012-12-02 08:25:40 +00:00
Brecht Van Lommel
9865ee7637 Fix another cycles SVM issue with closures, was not using correct sample weight
leading to some extra noise compared to a few revisions ago.
2012-12-01 22:00:25 +00:00
Brecht Van Lommel
7c0a0bae79 Fix #33375: OSL geom:trianglevertices gave wrong coordinates for static BVH.
Also some simple OSL optimization, passing thread data pointer directly instead
of via thread local storage, and creating ustrings for attribute lookup.
2012-12-01 19:15:05 +00:00
Brecht Van Lommel
75cce01a61 Fix #33364: cycles tile rendering artifacts. 2012-11-30 18:55:04 +00:00
Brecht Van Lommel
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
Brecht Van Lommel
1246ef714e Fix #33351: cycles OSL not loading grayscale images as RGB correctly. 2012-11-30 06:10:25 +00:00
Brecht Van Lommel
e7f594b0df Fix #33347: cycles OSL crash connecting string to vector socket. 2012-11-30 06:10:16 +00:00
Brecht Van Lommel
f1745706ad Fix cycles motion blur + OSL + object texture coordinates issue. 2012-11-29 16:11:37 +00:00
Brecht Van Lommel
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
Daniel Genrich
d387dcd110 Fix compile error with clang.
Patch by sambler via irc
2012-11-29 12:22:07 +00:00
Brecht Van Lommel
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
Brecht Van Lommel
bb0195e039 Fix #33337: cycles crash with progressive refine and multiple render layers. 2012-11-28 19:57:29 +00:00
Brecht Van Lommel
33f81187fb Fix #33335: cycles SVM closure issue in recent bugfix, incorrectly tagging
node as done.
2012-11-28 19:13:34 +00:00
Brecht Van Lommel
4c13633582 Fix #33334: missing glossy label for OSL phong ramp caused assert. 2012-11-28 16:42:32 +00:00
Brecht Van Lommel
f4c93ae935 Fix #33328: cycles not rendering dupliframes, needs an exception. 2012-11-27 21:47:55 +00:00
Brecht Van Lommel
5f8fded639 Fix cycles OSL shader loading warnings after recent bugfix. 2012-11-27 16:02:12 +00:00
Brecht Van Lommel
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
Jason Wilkins
f5d8cd34cd -fno-rtti is a gcc option which gives a warning when using MSVC 2012-11-26 13:48:48 +00:00
Brecht Van Lommel
58ee2bdfc0 Fix: cycles light sampling crash, happens on rare occasions due to float
rounding errors.
2012-11-26 11:05:22 +00:00
Brecht Van Lommel
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
Brecht Van Lommel
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
Brecht Van Lommel
c25cfd3044 Fix cycles AO issue, still was missing AO pass for black/non-diffuse objects. 2012-11-23 13:41:25 +00:00
Campbell Barton
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
Brecht Van Lommel
a72c03bc1c Fix cycles OSL wrong reflection texture coordinate. 2012-11-22 22:24:34 +00:00
Brecht Van Lommel
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
Sergey Sharybin
cdcab16d12 Style cleanup: mixed tabs/spaces were used for indentation in osl_closures.h 2012-11-21 13:45:37 +00:00
Sergey Sharybin
b118512448 Cycles: solve -Wmissing-declarations for osl kernel 2012-11-21 13:41:47 +00:00
Brecht Van Lommel
a9c601ceff Fix #33257: cycles camera clipping did not work through transparent objects. 2012-11-21 13:22:24 +00:00
Brecht Van Lommel
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
Brecht Van Lommel
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
Brecht Van Lommel
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