Commit Graph

3238 Commits

Author SHA1 Message Date
Thomas Dinges
01dc4b034f Cycles / Tile Rendering:
* Code refactor of tile ordering to simplify the code and avoid some branching. 
* Changed the Center method, so it really follows center -> corners, instead of the BI method, which was confusing sometimes.
2013-05-08 19:49:09 +00:00
Brecht Van Lommel
360a86d658 Attempt to fix OS X build with 10.6 SDK, was not working due to recent fullscreen bug fixes. 2013-05-08 19:37:36 +00:00
Thomas Dinges
872a8ed1bf Cycles / Hair rendering:
* Enable hair rendering on the GPU.

Patch by Stuart Broadfoot, with small tweaks by me, to only enable it on sm_20 and above.
2013-05-08 17:33:25 +00:00
Brecht Van Lommel
3e763d7e4d Fix #35246: cycles has no simple way to combine bump and normal mapping. Now
the Bump node has a Normal input, so you can chain it after a Normal Map node.
Note that normal mapping always has to be done first because it is tied to the
particular mesh surface and tangents.
2013-05-08 13:23:13 +00:00
Campbell Barton
7d4eee2b18 add option to disable guardedalloc, helps for debugging memory errors
since guardedalloc confuses them.

The option cases a warning on build, since its ownly for experimental
use.
2013-05-08 12:55:23 +00:00
Sergey Sharybin
a4cf8b3779 Supress error message if dlopen for jack.so failed
This is mainly happening when there's no jack installed
in the system and no reason to cause general panic
messages in the terminal about this.
2013-05-07 15:49:23 +00:00
Brecht Van Lommel
2a4ee23a25 Fix #35225: new OS X Lion fullscreen did not work together well with old
fullscreen option. It was possible to enable both at the same time which got
you stuck in a state where it was impossible to exit fullscreen. Now I've made
them mutually exlusive, only one can be enabled at the same time.

Note the reason we need to support both is because the new Lion fullscreen does
not work with multiple monitors, it will just give black screens on the other
monitors. This is a limitation of OS X, you can find many complaints about this
online.
2013-05-06 13:39:25 +00:00
Brecht Van Lommel
62087935ec Fix #35209: cycles generated texture coordinates did not stick to deforming meshes. 2013-05-05 05:56:41 +00:00
Brecht Van Lommel
838949c3e7 Fix #35207: addition to previous fix to avoid OSL getting uninitialized
ray differentials for lighting, which could cause bad texture filtering
artifacts or performance.
2013-05-03 21:34:51 +00:00
Brecht Van Lommel
356ca7ec8a Fix for recent glossy BSDF fix, color ramp test file was rendering different. 2013-05-03 13:17:28 +00:00
Brecht Van Lommel
a5d6820b6d Possible fix for #35198: uninitialized memory access with background multiple
importance sampling + OSL.
2013-05-03 05:24:05 +00:00
Brecht Van Lommel
273f5226da Fix #35160: cycles was rendering glossy BSDF's with zero roughness too rough
after a bugfix for precision issues with low roughness. Now it renders them as
perfectly sharp which avoids the problematic calculations rather than increasing
the roughness.
2013-05-02 22:05:57 +00:00
Bastien Montagne
30556d4cd5 Some minor cleanup/polish... 2013-05-01 17:49:19 +00:00
Bastien Montagne
fd6ab0564d This should at least prevent crash in [#35172]... 2013-05-01 17:11:07 +00:00
Lukas Toenne
8843eb9063 Fix for bug reported by Thomas Dinges on IRC: OSL script node was not initializing the data_type variable for shader sockets and so tried to set a non-existing float RNA property, leading to failed assert. 2013-05-01 13:28:44 +00:00
Brecht Van Lommel
aa2a0e4ab0 More build fixes for visual studio 2012.
Patch #35019, #35131 and #35152 by Jurgen Herrmann.
2013-04-29 19:15:56 +00:00
Thomas Dinges
b13ef55973 Cycles / SCons:
* Fast math compiler flag was set for Cycles, but not OSL.
2013-04-29 15:52:38 +00:00
Sergey Sharybin
b1b5274549 Tweak allocation vars for XYZ space for more accurate GPU transform
Also extend 3DLUT edge size to 64 (1 meg of memory) to increase
transform accuracy as well.
2013-04-29 10:53:10 +00:00
Bastien Montagne
428debd9c8 Fix for "new" Cycles handling of textures, UI code assumed all texture users use "texture" as prop name, but at least WeightVG modifiers do not.
Fixed by adding a "texture_user_property" member to spacebuts' context, and using it to get the prop identifier in ui script.

Thanks to Brecht for its advice!
2013-04-28 15:20:52 +00:00
Brecht Van Lommel
8cd455f9b4 Fix #35121: cycles 3D viewport render pause button not working during render. 2013-04-28 12:31:24 +00:00
Ton Roosendaal
753fe9f0b9 Keeping my commit count high!
Previous GLSL code had error, the if() statement had to be negated.
2013-04-28 11:05:49 +00:00
Ton Roosendaal
eae651db3a GLSL display of float buffers with alpha:
Previous version worked, now a version with simplifying this GLSL code.
2013-04-28 11:03:01 +00:00
Ton Roosendaal
e355abebee This glsl shader works for OCIO with alpha. OSX iMac with ATI.
There's no logical reason I can find... but I commit it because many others have
the same error, so we can check.
2013-04-28 10:46:18 +00:00
Sergey Sharybin
69b0b0a624 Fix for fix in alpha de-premul
We do not need to premul shader result, opengl
is already configured for straight alpha.
2013-04-27 17:50:11 +00:00
Sergey Sharybin
6a04ff11af Premultiplication in OCIO shader went wrong,
it used to apply alpha on source color after
conversion, not on result.
2013-04-27 17:08:37 +00:00
Sergey Sharybin
d376a1b740 Apparently better not to use values like 1.0f in GLSL code
Fix from debug session of self and Ton, was affecting OSX
builds, making GLSL display transform not working on this
platform.
2013-04-27 16:43:15 +00:00
Sergey Sharybin
514e322895 Print error log to the console if OCIO shader compilation failed 2013-04-27 16:34:56 +00:00
Brecht Van Lommel
ac849f98f5 Fix #35102: crash with experimental cycles displacement feature due to
uninitialized memory usage.
2013-04-27 02:54:24 +00:00
Brecht Van Lommel
48a6fe86ca Fix #34172: cycles BVH build crashing in some rare circumstances on 32 bit linux.
The problem was (again) the x86 extended precision float register being used for
one float value while the other was rounded to lower precision. This caused the
strictly weak order requirement for std::sort to be broken.
2013-04-26 02:18:29 +00:00
Sergej Reich
3d1b24af00 rigidbody: Code cleanup
Remove outdated comment.
2013-04-25 19:50:51 +00:00
Brecht Van Lommel
811587ce32 Fix #35077: cycles incorrectly rendered an empty with dupligroup that was
dupliverted by its parent.
2013-04-25 14:16:24 +00:00
Francisco De La Cruz
70de23dabb Fix #29932 Left Shift + Numpad 1,2,3 not Aligning to Active
Intermediate Shift+Key messages were resetting modifier flags.
2013-04-25 05:32:32 +00:00
Brecht Van Lommel
18b1ab1598 Fix #34714: cycles viewport render would restart when minimizing and unminimizing
a maximized Blender window in Ubuntu Unity. The window size would slightly change
as part of the unminimize effect.

Now cycles waits 0.2 seconds before restarting rendering after a viewport resize,
also a bit less flickery when changing the 3d view size in Blender itself.
2013-04-24 20:12:12 +00:00
Brecht Van Lommel
dee74c299f Attempt to fix #35041 and #34725: cycles crash with OSL and both a 3D viewport
and preview running at the same time.

It seems there's something in OSL/LLVM that's not thread safe, but I couldn't
figure out what exactly. Now all renders share the same OSL ShadingSystem which
should avoid the problem.
2013-04-22 14:27:12 +00:00
Sergej Reich
ed19108891 rigidbody: Add function to perform convex sweep test
This is a experimental collision detection function, so the API might
change in the future.

Note: The simulation needs to be stepped before this function can be
used, otherwise the rigid body world might not be valid.

Patch [#34989]  Bullet Convex sweep test API
by Vilem Novak (pildanovak), thanks!
2013-04-21 19:53:40 +00:00
Alexander Kuznetsov
b0f8ece9d9 Forgot disable else and it became: else /* */ break;
Caused a crash on Windows on alt-key when a tablet was plug in.
2013-04-20 16:14:31 +00:00
Sergey Sharybin
349b71fd02 Bring back support of FFmpeg >= 0.7
After planar codecs support minimal FFmpeg was
bumped to 0.10 which was not so much nice because
it was only released only later last year.

Didn't find a way to make compatibility code local
in ffmpeg_compat, so there're some ifdefs in
audaspace and writeffmpeg.

Not entirely happy, but having a bit of ifdefs in
code better than lots of real PITA for platform
maintainers.
2013-04-19 17:23:08 +00:00
Alexander Kuznetsov
177080a15d Disabling live resize for Windows for now.
Bug #34990

However, cleanscreen on redraw is still disabled, so when resizing blender will have frozen image.
2013-04-18 13:30:41 +00:00
Antony Riakiotakis
a34acd0de4 Beware of SUBSURAFACES (sounds latin) 2013-04-18 12:40:04 +00:00
Brecht Van Lommel
ed1a08382f Cycles: code refactoring to deduplicate the various BVH traversal variations.
Now there is a single BVH traversal code with #ifdefs for various features.
At runtime it will then select the appropriate variation to use depending if
instancing, hair or motion blur is in use.

This makes scenes without hair render a bit faster, especially after the
minimum width feature was added. It's not the most beautiful code, but we can't
use c++ templates and there were already 4 copies, adding 4 more to handle the
hair case separately would be too much.
2013-04-17 20:07:22 +00:00
Brecht Van Lommel
45552a4595 Cycles: initialize LCG for sss and hair sampling without using the sobol sampler,
slightly faster but also fixes the u/v sampling dimensions not longer being at even
values which is needed for best results.
2013-04-17 14:48:01 +00:00
Brecht Van Lommel
cf0e457e52 Fix #35004: fireflies with .tif image in cycles, try to avoid extreme values when
openimageio can't detect premul/straight alpha correct.
2013-04-17 14:47:58 +00:00
Stuart Broadfoot
8c246ddb99 Cycles Hair: Corrected own stochastic hair rng mistake and removed an unnecessary padding variable
- Corrected the Sobol dimension and removed a pad variable in Curve Struct.
2013-04-17 11:27:56 +00:00
Brecht Van Lommel
c9fc3874d6 Cycles: when render layers have per layer number of samples set, the Sampling
panel now has an option to specify how to use them. There's three options:

* Use: render layer samples override scene samples
* Bounded: bound render layer samples by scene samples
* Ignore: ignore render layer sample settings
2013-04-16 16:18:14 +00:00
Brecht Van Lommel
18feb1630d Fix #34966: cycles packed PNG images were showing alpha fringe, packed images
were not properly premultiplied.
2013-04-16 13:52:38 +00:00
Campbell Barton
a120049c3b use psys->seed for smoke random number generator, increase size of MATHUTILS_TOT_CB and reduce float->double conversions. 2013-04-16 09:04:34 +00:00
Campbell Barton
d044fd3299 update uncrustify config, use floats for FloatProperty() min/max 2013-04-16 03:27:51 +00:00
Antony Riakiotakis
e93f00d73d Compile fixes for recent commits 2013-04-16 00:56:24 +00:00
Stuart Broadfoot
638b084f82 Cycles Hair: Strand Minimum Pixel Size
Code is added to restrict the pixel size of strands in cycles. It works best with ribbon primitives and a preset for these is included. It uses distance dependent expansion of the strands and then stochastic strand removal to give a fading. To prevent a slowdown for triangle mesh objects in the BVH an extra visibility flag has been added. It is also only applied for camera rays.

The strand width settings are also changed, so that the particle size is not included in the width calculation. Instead there is a separate particle system parameter for width scaling.
2013-04-15 21:38:31 +00:00
Sergey Sharybin
427f56f1f0 Fix compilation with current FFmpeg trunk
AVCODEC_MAX_AUDIO_FRAME_SIZE was deprecated and
finally removed from current trunk.

Initial patch by Lawrence D'Oliveiro (ldo) with
own modification, Thanks!
2013-04-15 11:08:02 +00:00