Commit Graph

6295 Commits

Author SHA1 Message Date
Brecht Van Lommel
d7cff8f74c Fix T39114: cycles lamp ray visibility not working.
Thanks to Thomas for finding the cause.
2014-03-12 18:21:23 +01:00
Thomas Dinges
2d4de2742c Cycles: Disable Branched Path on sm_30 for now, recent Indirect Multi Light addition makes nvcc fail. 2014-03-11 23:04:55 +01:00
Jens Verwiebe
8d09ec63b7 OSX: fix another kCGLRendererAppleSWID 2014-03-10 22:29:08 +01:00
Jens Verwiebe
e913eab386 OSX: change a longterm deprecated kcgl constant, could lead to crashes else 2014-03-10 22:27:29 +01:00
Jörg Müller
b977cfd28b Fix T37293: trying to fix scrubbing not stopping playback 2014-03-10 12:34:08 +01:00
Thomas Dinges
99e20d7b89 Cycles: Option to Sample all Lights in the Branched Path integrator for indirect samples
This adds a new option "Sample All Lights" to the Sampling panel in Cycles (Branched Path). When enabled, Cycles will sample all the lights in the scene for the indirect samples, instead of randomly picking one. This is already happening for direct samples, now you can optionally enable it for indirect.

Example file and renders:
Blend file: http://www.pasteall.org/blend/27411
Random: http://www.pasteall.org/pic/show.php?id=68033
All: http://www.pasteall.org/pic/show.php?id=68034

Sampling all lights is a bit slower, but there is less variance, so it should help in situations with many lights.

Patch by myself with some tweaks by Brecht.
Differential Revision: https://developer.blender.org/D391
2014-03-09 22:20:01 +01:00
Thomas Dinges
a96eb73a12 Code Cleanup for __HAIR__ defines. 2014-03-09 12:48:58 +01:00
Daniel Genrich
40d4fb9fce Fix compile error using MSVC2008 + cmake 2014-03-09 09:55:49 +01:00
Juergen Herrmann
5559302369 Cleanup some useless/unneeded #ifdefs for MSVC2013. 2014-03-09 00:25:08 +01:00
Thomas Dinges
36279afbd3 Cycles: Compile fix and some cleanup for the Image interpolation commit. 2014-03-08 00:23:45 +01:00
Martijn Berger
dd2dca2f7e Add support for multiple interpolation modes on cycles image textures
All textures are sampled bi-linear currently with the exception of OSL there texture sampling is fixed and set to smart bi-cubic.

This patch adds user control to this setting.

Added:
- bits to DNA / RNA in the form of an enum for supporting multiple interpolations types
- changes to the image texture node drawing code ( add enum)
- to ImageManager (this needs to know to allocate second texture when interpolation type is different)
- to node compiler (pass on interpolation type)
- to device tex_alloc this also needs to get the concept of multiple interpolation types
- implementation for doing non interpolated lookup for cuda and cpu
- implementation where we pass this along to osl ( this makes OSL also do linear untill I add smartcubic to the interface / DNA/ RNA)

Reviewers: brecht, dingto

Reviewed By: brecht

CC: dingto, venomgfx

Differential Revision: https://developer.blender.org/D317
2014-03-07 23:16:33 +01:00
Thomas Dinges
8a38d840e9 Cycles: Use Displacement type in OSL ShadingSystem.
Reviewed by: brecht
Differential Revision: https://developer.blender.org/D386
2014-03-06 21:03:22 +01:00
Martijn Berger
1d01675833 Cuda use streams and async to avoid busywaiting
This switches api usage for cuda towards using more of the Async calls.

Updating only once every second is sufficiently cheap that I don't think it is worth doing it less often.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D262
2014-03-06 20:51:46 +01:00
Brecht Van Lommel
f04fd50073 Fix X11 mouse cursor flickering briefly to the standard cursor when changing it.
Not very visible now but it matters for the next commit.
2014-03-06 18:23:21 +01:00
Lukas Tönne
c169413a0f Fix for potential memory leak in Bullet API: freeing dynamic arrays
should use the delete[] operator instead of the plain pointer delete.
2014-03-05 10:01:46 +01:00
Brecht Van Lommel
e0857ad152 Fix volume scatter render issue introduced by recent bugfix. 2014-03-04 17:19:58 +01:00
Sv. Lockal
6045de2bf5 Cycles: remove ccl_align macro for GPU as unused and unsupported in OpenCL 2014-03-02 12:44:52 +04:00
Brecht Van Lommel
3eabe064ab Fix T38900: cycles OSL crash running getmessage("trace", "geom:name", name) 2014-03-01 14:58:05 +01:00
Thomas Dinges
76a7c2173b Cleanup: Fix some typos in the code. 2014-03-01 01:21:46 +01:00
Sergey Sharybin
5ac1b38b4b Support planar sample formats in audio mixdown
Now libav-10 should work for output of ac3 container.
2014-02-28 15:16:30 +06:00
Sergey Sharybin
e82b5f61fe Attempt to fix mixdown when building without sndfile
This case was handled specially in writeffmpeg.c and seems it makes
audio export happy in all cases now.

TODO: libav-10 doesn't work with AC3 codec yet because this bloody
library ONLY supports FLTP format and FFmpeg ONLY supports FLT.

This is not fun guy, it really isn't! Where's your conscience??

CC: nexyon
2014-02-28 14:51:03 +06:00
Sergey Sharybin
32d5cc247f Fix T38768: New "audio" button in 2.70 release does not 'mixdown' audio
Issue was caused by the way how audio output works from audaspace.
Now made it much closer to what's happening in ffmpeg.c and writeffmpeg.c.

Also fixed issues with incompatible combinations of codecs and formats
in mixdown settings.
2014-02-28 12:26:16 +06:00
Brecht Van Lommel
de6b64bca6 Fix use of uninitialized variable in some cases with scatter + emission volume. 2014-02-27 23:41:00 +01:00
Brecht Van Lommel
4d1159627c Fix cycles wrong volume scatter value in light path node.
Thanks to Thomas for spotting this.

Differential Revision: https://developer.blender.org/D370
2014-02-27 21:15:23 +01:00
Thomas Dinges
74ae900c67 Cycles: Fix mistake in PathRayFlag, one value was used twice. 2014-02-27 20:41:36 +01:00
Sv. Lockal
5031ca05aa Cycles: compile fix after rB7808360c5f (own mistake) 2014-02-27 17:29:35 +04:00
Sv. Lockal
7808360c5f Cycles: fix crash in SSE hair and half-floats on x86+vc2008
MSVC 2008 ignores alignement attribute when assigning from unaligned
float4 vector, returned from other function. Now Cycles uses unaligned
loads instead of casts for win32 in x86 mode.
2014-02-27 15:01:20 +04:00
Brecht Van Lommel
e1e247a99b Fix T38710: volume render issue with transparent surfaces. 2014-02-26 18:47:50 +01:00
Jens Verwiebe
3ca606ffc3 Locale_wrapper: make the bad_cast catch more clear and fix the std::exception message 2014-02-26 17:33:44 +01:00
Martijn Berger
eb4f2b4897 Fix missing brackets in cpuid bitfield check.
concern raised by lukas_t (rBef73d547cc7c663ad180721094c81b3c81482ac3)
2014-02-25 19:52:38 +01:00
Lukas Tönne
0bef196894 Fix T38811: Cycles particle ids are inconsistent when using multiple particle systems.
Problem is that the particle systems in the cycles database are not
stored in a well-defined order. This means the particle_id for dupli
objects can not simply be assigned using a global running index during
sync.

Now the particle index is assigned locally for each particle system.
When transferring particle data to the device as a single texture, the
particle indices are offset based on the final order of particle systems
in the database.

Reviewers: brecht

Reviewed By: brecht

CC: Andreas80

Differential Revision: https://developer.blender.org/D352
2014-02-25 18:29:11 +01:00
Martijn Berger
ef73d547cc Fix T38815
For AVX support we need to check both OS support and CPU support.
2014-02-25 17:57:05 +01:00
Thomas Dinges
e643d2c211 Cycles Standalone: Tweak for d59f53f7b7, use "closure color" as type name, to 100% match the OSL data type. 2014-02-25 00:01:19 +01:00
Thomas Dinges
2d26d1dbbd Cycles: Make CUDA aware of COMPUTE_50 (sm_50, Maxwell).
If you have a Maxwell GPU and want to test, you have to use the CUDA Toolkit 6.0(RC) and enable sm_50 in scons/cmake.
2014-02-24 21:47:45 +01:00
Brecht Van Lommel
88f1c283a7 Tweak to T38766 fix: cycles now support setting viewport alpha for a material. 2014-02-24 19:53:14 +01:00
Brecht Van Lommel
b826032200 Fix T38779: cycles SSS and object scale render issue. 2014-02-24 15:26:38 +01:00
Lukas Tönne
d59f53f7b7 Support for generic OSL shader parameters in the Cycles standalone XML
reader.

To make a generic OSL shader connectable to other nodes, the parameters
must be declared via "input" and "output" child elements:

  <osl_shader name="tex" src="./osl/stripes.osl">
    <input name="Stripes" type="int" />
    <output name="ColorOut" type="color" />
  </osl_shader>

`name` must be the same as the OSL shader parameter name.
`type` must be one of float, int, color, vector, point, normal, closure,
       string (matching cycles socket types)

Beyond this the OSL script nodes then work just like all other nodes.

OSL parameter sockets can be connected to other cycles nodes:

  <connect from="checker color" to="tex Stripes" />
  <connect from="tex ColorOut" to="floor_closure color" />

They can set default values for the input sockets by attributes of the
main node element:

  <osl_shader name="tex" src="./osl/stripes.osl" Stripes="3" >
    <input name="Stripes" type="int" />
    <output name="ColorOut" type="color" />
  </osl_shader>

This system of specifying custom attributes should probably be changed,
since it can easily create name conflicts and arbitrarily long elements.
But that is a different issue to be solved for all nodes in general.
2014-02-24 11:35:32 +01:00
Jens Verwiebe
04ecf4d0db OSX: add debug mesg to bl_locale_pgettext for later indeep investigation 2014-02-24 11:18:17 +01:00
Jens Verwiebe
8be628cf7f Fix an uncaught exception on OSX, perhaps general with popups 2014-02-23 20:38:29 +01:00
Brecht Van Lommel
c0e0b61222 Fix cycles standalone crash on Mac OS X. 2014-02-21 15:39:46 +01:00
Brecht Van Lommel
415adf7263 Fix T38740: multi-user metaballs not rendering in Cycles. 2014-02-21 15:03:24 +01:00
Brecht Van Lommel
6b1a4fc66e Cycle CUDA: revert the f1aeb2ccf4 and 84f958754 busywait fixes for now.
It's unclear what kind of impact they have on performance at the moment, so I
rather play it safe and postpone this for 2.71.

Ref T38679, Ref T38712
2014-02-19 16:08:08 +01:00
Sergey Sharybin
a64b612ae2 Totally remove BSP from SConscript 2014-02-19 15:46:44 +06:00
Campbell Barton
c9233bfd82 Code cleanup: style 2014-02-19 08:02:59 +11:00
Jens Verwiebe
c987bcc416 OSX: more futurework for clang-openmp:
- moved assumed location of omp lib to blender libs
- prepared libiomp5 to link out of the box with cmake
- changed according in scons
- introduced a local var C_VENDOR, cause Apple clang 3.4 may not include omp support yet
- added a linklibs for msgfmt ( may not be needed for other than OSX )
2014-02-18 17:18:35 +01:00
Martijn Berger
f1aeb2ccf4 this is an attempted Fix: T38679
Cycles GPU Performance Regression

From my testing this (what i should have done in the first place) reduces the regression a lot.
Lets hope it is enough or we have to go back to busy waiting.
2014-02-17 20:11:45 +01:00
Jens Verwiebe
fc9215129e Adapt KDL for compile with clang 3.4, which is stricter with friend classes,
fixes ‘friend declaration specifying a default argument must be a definition’,
based on information from here:
http://www.orocos.org/forum/rtt/rtt-dev/bug-1053-new-compile-error-clang-34-patch-attached
2014-02-17 16:39:03 +01:00
Campbell Barton
1c866c377a Fix/Workaround for NDOF/X11 bug with unreliable GHOST_kFinished events. 2014-02-15 18:40:33 +11:00
Campbell Barton
6e54c87769 Code cleanup: use const short for ndof axis args 2014-02-15 18:35:48 +11:00
Campbell Barton
004decc1d9 Code cleanup: warnings 2014-02-15 18:21:07 +11:00