Commit Graph

2793 Commits

Author SHA1 Message Date
Brecht Van Lommel
6094011c90 Fixes for OS X default locale: use pclose and do error checking for file read. 2012-11-21 15:14:19 +00:00
Jens Verwiebe
d314eef7a7 OSX/locale: moved command up, so errorchecking also happens 2012-11-21 14:29:34 +00:00
Jens Verwiebe
d0b7b0d228 OSX/locale: workaround to get osx system locale from user defaults 2012-11-21 13:54:54 +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
Brecht Van Lommel
36d2d090f6 Fix for #33250: animation player shortcut keys not working on OS X. 2012-11-21 03:33:49 +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
Brecht Van Lommel
fd619cd7f1 Fix #33177: OSL render difference with missing textures and HSV nodes. 2012-11-20 17:40:21 +00:00
Brecht Van Lommel
ab1b5af08d Fix cycles OSL missing support for texture mapping paramaters found in texture
properties tab.
2012-11-20 17:40:10 +00:00
Brecht Van Lommel
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
Campbell Barton
68e9fdeb81 code cleanup: comment unused members of bmesh operator slots and some osl style edits. 2012-11-20 14:31:58 +00:00
Thomas Dinges
f92359cc29 Fix [#33239] Cycles OSL : Environment Texture Rotation Incorrect:
* Projection mappings were not implemented yet.
2012-11-20 14:18:56 +00:00
Brecht Van Lommel
abce6309e3 Scons: better fix for OSL compiler path, so it also works on OS X. 2012-11-19 15:50:28 +00:00
Brecht Van Lommel
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
Sergey Sharybin
9947f70f19 Localization should not depend on debug locale library
Linking happens fine, but blender crashes on startup -- crash with familiar
backtrace happens with i18n disabled (in that case it's something to do with OIIO).
2012-11-19 13:15:11 +00:00
Jens Verwiebe
3b570440e4 OSX/scons: refine oslc compile workaround 2012-11-19 11:46:55 +00:00
Thomas Dinges
70b6e2717a Windows / OSL:
* Scons cleanup, to avoid redeclaration of /EHsc. Linking still fails.
2012-11-18 15:02:09 +00:00
Thomas Dinges
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
Campbell Barton
973cb29d84 style cleanup: if's on the same line. 2012-11-18 02:41:55 +00:00
Jens Verwiebe
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
Brecht Van Lommel
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
Jens Verwiebe
69320ea595 OSX/scons/osl: initial osl compiling, todo: fix shader compile and copy to bundle 2012-11-15 21:35:25 +00:00
Brecht Van Lommel
7e97cd4b49 Fix #33188: AO pass wrong after recent change. 2012-11-15 21:32:05 +00:00
Brecht Van Lommel
2324c80f50 Cycles OSL: windows build system changes to support static OSL/OIIO. 2012-11-15 17:16:27 +00:00
Thomas Dinges
1c9b548d92 Windows / Scons OSL:
* Initial support, still commented.
2012-11-15 16:34:22 +00:00
Sergey Sharybin
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
Brecht Van Lommel
613cf7ae37 Cycles: ambient occlusion now takes per-BSDF normals into account. 2012-11-15 15:37:58 +00:00
Brecht Van Lommel
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
Sergey Sharybin
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
Brecht Van Lommel
16f1c86953 Fix OSL build error on linux. 2012-11-14 22:45:44 +00:00
Brecht Van Lommel
71389d4d74 Cycles OSL: windows build fixes. 2012-11-14 17:18:47 +00:00
Campbell Barton
1c1e7a0237 avoid divide by zero in cycles progress calculation 2012-11-13 01:53:07 +00:00
Bastien Montagne
e811a2d0ff Fix to allow several include dirs for python under scons build system (needed with new py3.3 debian-like packages). 2012-11-12 18:31:15 +00:00
Campbell Barton
40382c15ac enable multi-sampling on x11 2012-11-12 10:16:50 +00:00
Campbell Barton
cf6994b910 code cleanup: spelling,
also initialize bmesh-bevel settings struct to zero to avoid possible uninitialized memory later.
2012-11-12 07:33:01 +00:00
Bastien Montagne
5ff3017900 Replacing gettext i18n backend by boost::locale one.
This commit adds a small and simplistic C wrapper around boost's locale library as intern/locale, and heavily simplifies/reduces Blender's own i18n code (under blenfont/ dir). And it adds back UI translation on windows' official builds (with msvc)!

Note to platform maintainers: iconv and gettext (libintl) can now be removed from precompiled libs (not gettext binaries, under windows, of course ;) ).

Note to MinGW32/64 users: boost_locale lib has not yet been uploaded for those build env, please disable WITH_INTERNATIONAL for now (hopefully will be fixed very soon, have contacted psy-fy).
2012-11-11 16:54:26 +00:00
Brecht Van Lommel
afd42031a9 Fix #32974: cycles curved motion blur is not working well combined with rotation,
problem is that the curved interpolation is not constant speed which leads to
mismatches. Turns out this is really hard to solve and implement efficiently, so
curved motion blur is disabled for now, until I can find a solution.
2012-11-11 15:02:05 +00:00
Brecht Van Lommel
1ca4670267 Cycles: panorama camera in viewport camera view now shows the render mapped
to the camera border rather than the entire viewport.
2012-11-10 22:31:29 +00:00
Jens Verwiebe
45cd54bcd1 OSX/ndof: rollback 52072, test showed we need individually weak functions -> todo: solve the clang link issue other way 2012-11-10 15:13:41 +00:00
Brecht Van Lommel
5ddc5fbfb3 Fix #33135: cycles object info random number not working anymore. 2012-11-10 14:50:34 +00:00
Jens Verwiebe
4ec5a42456 OSX/cmake: little cleanup in ghost 2012-11-10 13:53:58 +00:00
Jens Verwiebe
472b3d47f9 OSX/ndof: test link whole framework weak rather than single functions to fix clang compile issue 2012-11-10 13:53:02 +00:00
Campbell Barton
fecc3b9d68 add 2 new utility functions to the BGE mesh py api.
mesh.transform(matid, matrix)
  mesh.transform_uv(matid, matrix, uv_index=-1))


much more efficient then looping over verts in python to transform them.
2012-11-10 09:45:43 +00:00
Sergey Sharybin
f5c9f2c253 Cycles: correction to how device of lists is exposed to blender
compute_device_list is using static vector of device information which
had pointers (identifier and name) to values from device information
structures. That structures are also stored in static vector and being
refreshed every 5 seconds.

The issue is, as soon as device information is being updated, pointers
in vector from compute_device_list became incorrect.

Seems it was the reason of issues with sudden switching from CUDA to
OpenCL on my desktop and from CUDA to CPU on my laptop, It was also
seems to be making persistent images behaves instable.

Made it so device identifier and name are copied from device info
to structures used by RNA (CCLDeviceInfo).

Alternative could be avoid cacheing CCLDeviceInfo and always use actual
list of device information by RNA. It shouldn't be so much slow.
2012-11-10 08:37:02 +00:00
Sergey Sharybin
c9cd4d61ba Fix #33132: Incorrect render session update when using persistent images issue and changing resolution 2012-11-10 08:13:13 +00:00
Campbell Barton
936f0388e8 code cleanup: some warnings and formatting for PyMethodDef's in the BGE. 2012-11-10 05:42:50 +00:00