6 years agoimprovements to bevel
Campbell Barton [Mon, 19 Nov 2012 02:26:59 +0000 (02:26 +0000)]
improvements to bevel
- the resulting selection is now correct

internal details
- bev_rebuild_polygon() now only rebuilds polygons that are attached to a bevel vertex (was rebuilding ALL).
  ... need to take care we don't leave faces pointing to removed geometry, so far this works fine.

-  bev_rebuild_polygon() uses stack memory for <32 size ngons to reduce allocs.

- skip hash lookup when removing bevel verts (use tag instead).

6 years agobmesh: BM_verts_in_face was using bmesh operator flag which is no longer ensured...
Campbell Barton [Mon, 19 Nov 2012 00:54:55 +0000 (00:54 +0000)]
bmesh: BM_verts_in_face was using bmesh operator flag which is no longer ensured to be available,
use internal apiflag instead, Thanks to Nicholas Bishop for spotting.

also quiet some warnings.

6 years agoBGE: The Step Height for a character physics controller is now set to 0.01, which...
Mitchell Stokes [Sun, 18 Nov 2012 20:56:50 +0000 (20:56 +0000)]
BGE: The Step Height for a character physics controller is now set to 0.01, which means that Step Height can no longer be 0, which causes issues such as those noted in issue #33221, "KX_CharacterWrapper inconsistencies and error," reported by Angus Hollands (agoose77). I've also added a do_versions() fix that will give objects with 0 Step Height sane defaults. This means old files will now work better with character physics.

6 years agoBGE: Changing "transform_uv" -> "transformUV" in some error messages.
Mitchell Stokes [Sun, 18 Nov 2012 20:38:27 +0000 (20:38 +0000)]
BGE: Changing "transform_uv" -> "transformUV" in some error messages.

6 years agoPartial fix to version_ge (greater or equal), was not working correctly with eaqual...
Bastien Montagne [Sun, 18 Nov 2012 20:31:58 +0000 (20:31 +0000)]
Partial fix to version_ge (greater or equal), was not working correctly with eaqual versions, now will do with exact same versions at least (yet have to fix case like comparing 1.0 and 1.0.0).

Also refactored a bit osl/llvm/etc. stuff for DEB (so that now all osl-deps are only installed when we do have a valid llvm and want to [try to!] build osl).

And added osl/llvm/etc. code for RPM (osl does not compile under fedora currently, though :/ ).

6 years agoMore cleanup/deduplication. Also explicitly using gawk (so system without it should...
Bastien Montagne [Sun, 18 Nov 2012 17:47:26 +0000 (17:47 +0000)]
More cleanup/deduplication. Also explicitly using gawk (so system without it should print a much comprehensive error message!).

Note: RPM-related edits not yet tested.

6 years agoBetter handing of llvm version (now we can be sure to use the same for osl and blende...
Bastien Montagne [Sun, 18 Nov 2012 17:27:29 +0000 (17:27 +0000)]
Better handing of llvm version (now we can be sure to use the same for osl and blender - and the latest one available!).

And more cosmetic cleanups...

6 years agoCMakeList: Better handling of llvm under linux (now you can try to force usage of...
Bastien Montagne [Sun, 18 Nov 2012 17:26:23 +0000 (17:26 +0000)]
CMakeList: Better handling of llvm under linux (now you can try to force usage of a specific version of llvm before using default one).

Also cleared LIBDIR var from linux code, as we have no more those svn folders!

6 years agoWindows / OSL:
Thomas Dinges [Sun, 18 Nov 2012 15:02:09 +0000 (15:02 +0000)]
Windows / OSL:
* Scons cleanup, to avoid redeclaration of /EHsc. Linking still fails.

6 years agoFix own stupid mistake for threads count, and edits to user messages (mostly adding...
Bastien Montagne [Sun, 18 Nov 2012 14:27:19 +0000 (14:27 +0000)]
Fix own stupid mistake for threads count, and edits to user messages (mostly adding the ldconfig trick for dynamic boost libs).

6 years agoRequest from Riggers/Animators at BlenderPRO:
Joshua Leung [Sun, 18 Nov 2012 13:10:43 +0000 (13:10 +0000)]
Request from Riggers/Animators at BlenderPRO:

Armature modifiers added via Ctrl-P operation will no longer have "envelope"
deforms enabled. This helps cut down the number of unintended deformations
arising from rouge-sized envelopes or stray control bones.

6 years agobmesh: lazy initialize bmesh tool flag pool, has the advantage that modifiers that...
Campbell Barton [Sun, 18 Nov 2012 12:14:22 +0000 (12:14 +0000)]
bmesh: lazy initialize bmesh tool flag pool, has the advantage that modifiers that dont use bmesh operators can skip allocating it.

6 years agofix for skin modifier calling rotate_normalized_v3_v3v3fl with a non unit length...
Campbell Barton [Sun, 18 Nov 2012 11:48:21 +0000 (11:48 +0000)]
fix for skin modifier calling rotate_normalized_v3_v3v3fl with a non unit length axis.

6 years agobmesh: move internal API flags out of BMFlagLayer, into BMHeader which was being...
Campbell Barton [Sun, 18 Nov 2012 10:17:07 +0000 (10:17 +0000)]
bmesh: move internal API flags out of BMFlagLayer, into BMHeader which was being padded up anyway, added static assert to make sure it stays <=16 bytes.

6 years agobevel now only takes manifold edges (so it doesnt need to check for them)
Campbell Barton [Sun, 18 Nov 2012 09:33:11 +0000 (09:33 +0000)]
bevel now only takes manifold edges (so it doesnt need to check for them)

6 years agobmesh function was still using bmesh operator flags, use edge tags instead.
Campbell Barton [Sun, 18 Nov 2012 09:25:57 +0000 (09:25 +0000)]
bmesh function was still using bmesh operator flags, use edge tags instead.

6 years agocommented bevel modifier code now calls bevel direct rather then the bevel operator.
Campbell Barton [Sun, 18 Nov 2012 08:56:47 +0000 (08:56 +0000)]
commented bevel modifier code now calls bevel direct rather then the bevel operator.

6 years agofinish moving bevel code out of the operator dir (it works again)
Campbell Barton [Sun, 18 Nov 2012 08:35:27 +0000 (08:35 +0000)]
finish moving bevel code out of the operator dir (it works again)

6 years agomoving bevel to tools dir as-is to keep svn history (breaks build, will fix next).
Campbell Barton [Sun, 18 Nov 2012 08:20:02 +0000 (08:20 +0000)]
moving bevel to tools dir as-is to keep svn history (breaks build, will fix next).

6 years agomove decimator into tools/ dir
Campbell Barton [Sun, 18 Nov 2012 08:16:09 +0000 (08:16 +0000)]
move decimator into tools/ dir

6 years agomove source/darwin into release/darwin since these files are for osx packaging.
Campbell Barton [Sun, 18 Nov 2012 07:41:38 +0000 (07:41 +0000)]
move source/darwin into release/darwin since these files are for osx packaging.

6 years agoOSL / Windows:
Thomas Dinges [Sun, 18 Nov 2012 03:56:53 +0000 (03:56 +0000)]
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.

6 years agotypo in own recent commit.
Campbell Barton [Sun, 18 Nov 2012 03:01:31 +0000 (03:01 +0000)]
typo in own recent commit.

6 years agostyle cleanup: if's on the same line.
Campbell Barton [Sun, 18 Nov 2012 02:41:55 +0000 (02:41 +0000)]
style cleanup: if's on the same line.

6 years agostyle cleanup: comments & spelling
Campbell Barton [Sun, 18 Nov 2012 01:22:31 +0000 (01:22 +0000)]
style cleanup: comments & spelling

6 years agocode cleanup: gpl header update (formatting)
Campbell Barton [Sun, 18 Nov 2012 00:30:06 +0000 (00:30 +0000)]
code cleanup: gpl header update (formatting)

6 years agoBuildbot:
Brecht Van Lommel [Sun, 18 Nov 2012 00:20:23 +0000 (00:20 +0000)]
* Use rsync upload for Mac slave, rather than uploading entire file. This could
  be enabled for more slaves, should make more frequent builds possible.
* Split Mac into 10.6 and 10.5 builds.

6 years agoBuildbot: show OS X target version in buildbot zip filename.
Brecht Van Lommel [Sat, 17 Nov 2012 23:00:04 +0000 (23:00 +0000)]
Buildbot: show OS X target version in buildbot zip filename.

6 years agoInstall dependencies: added check for minimal version of x264
Sergey Sharybin [Sat, 17 Nov 2012 17:58:15 +0000 (17:58 +0000)]
Install dependencies: added check for minimal version of x264

Also fixed parsing of package version with epoch

6 years agoFix compositing normal node not properly showing vector XYZ values when opening
Brecht Van Lommel [Sat, 17 Nov 2012 16:11:02 +0000 (16:11 +0000)]
Fix compositing normal node not properly showing vector XYZ values when opening
socket menu, and make the normal animatable.

6 years agoFix render layer properties not being animatable.
Brecht Van Lommel [Sat, 17 Nov 2012 16:10:47 +0000 (16:10 +0000)]
Fix render layer properties not being animatable.

6 years agoOne more remained issue in legacy compositor, Hopefully last one.
Sergey Sharybin [Sat, 17 Nov 2012 15:34:06 +0000 (15:34 +0000)]
One more remained issue in legacy compositor, Hopefully last one.

6 years agoMono-core platform seem to not output the cores field in /proc/cpuinfo :/
Bastien Montagne [Sat, 17 Nov 2012 14:41:18 +0000 (14:41 +0000)]
Mono-core platform seem to not output the cores field in /proc/cpuinfo :/
Also adding gawk packages (gnu awk), looks like some distro do not have that one by default!

6 years agoWindows / Cmake:
Thomas Dinges [Sat, 17 Nov 2012 14:35:35 +0000 (14:35 +0000)]
Windows / Cmake:
* Another place where "psapi" was missing, caused OIIO errors.

6 years agoOld compositor should be compilable now
Sergey Sharybin [Sat, 17 Nov 2012 13:44:05 +0000 (13:44 +0000)]
Old compositor should be compilable now

6 years agoFix #33210: Diffuse Pass in scale node leads to problems
Sergey Sharybin [Sat, 17 Nov 2012 13:38:39 +0000 (13:38 +0000)]
Fix #33210: Diffuse Pass in scale node leads to problems

Was own mistake in render layers interpolation changes.

6 years agoInstall dependencies: workaround for SHA linking issues
Sergey Sharybin [Sat, 17 Nov 2012 12:59:24 +0000 (12:59 +0000)]
Install dependencies: workaround for SHA linking issues

6 years agoInstall dependencies: abort script if compilation of some component failed
Sergey Sharybin [Sat, 17 Nov 2012 12:10:35 +0000 (12:10 +0000)]
Install dependencies: abort script if compilation of some component failed

6 years agoOSX/scons: little cleanup to BF_PROGRAM_LINKFLAGS
Jens Verwiebe [Sat, 17 Nov 2012 12:09:50 +0000 (12:09 +0000)]
OSX/scons: little cleanup to BF_PROGRAM_LINKFLAGS

6 years agoInstall dependencies: disable OSL for now
Sergey Sharybin [Sat, 17 Nov 2012 11:57:10 +0000 (11:57 +0000)]
Install dependencies: disable OSL for now

It's really horror even for me to compile it on release environment,
i do not want anybody to spend time trying to support this lib in
automatic script or make it so user's are easily frustrated by some
hack added to OSL repository.

If you REALLY want to build OSL with this script, set BUILD_OSL to
truth (it's in the top of the script).

6 years agoInstall dependencies: dead links should not occur
Sergey Sharybin [Sat, 17 Nov 2012 11:42:37 +0000 (11:42 +0000)]
Install dependencies: dead links should not occur

6 years agoInstall dependencies: use OIIO 1.1.1 where SHA crap seems to be solved
Sergey Sharybin [Sat, 17 Nov 2012 11:35:13 +0000 (11:35 +0000)]
Install dependencies: use OIIO 1.1.1 where SHA crap seems to be solved

6 years agoMade sure open OIIO does not use system's boost in cases it was compiled from sources
Sergey Sharybin [Sat, 17 Nov 2012 11:28:12 +0000 (11:28 +0000)]
Made sure open OIIO does not use system's boost in cases it was compiled from sources

6 years agoInstall dependencies: made it sure llvm-3.1 or llvm-3.0 is installing
Sergey Sharybin [Sat, 17 Nov 2012 11:23:53 +0000 (11:23 +0000)]
Install dependencies: made it sure llvm-3.1 or llvm-3.0 is installing

llvm-dev could be a meta-package for older version of llvm

6 years agoFix #33209: Opening an image with image node on Compositing freezes Blender
Sergey Sharybin [Sat, 17 Nov 2012 11:07:46 +0000 (11:07 +0000)]
Fix #33209: Opening an image with image node on Compositing freezes Blender

Own mistake in image threading commit.

6 years agoplayanim: make alphanumeric +/- and numpad +/- work the same way.
Campbell Barton [Sat, 17 Nov 2012 06:32:35 +0000 (06:32 +0000)]
playanim: make alphanumeric +/- and numpad +/- work the same way.
better for users without a numpad.
- Ctrl +/-: Zooms
- +/-: Controls playback speed

6 years agoFix #33204: Blur node ignores Gamma setting
Sergey Sharybin [Sat, 17 Nov 2012 06:14:25 +0000 (06:14 +0000)]
Fix #33204: Blur node ignores Gamma setting

Gamma correction option was ignored by new compositor system.
Also new compositor was doing alpha premul in a wrong way. In fact,
not sure if it should do premul -- old compositor didn't do that..

6 years agoplayanim move zooming into a static function, the switch statement passthrough was...
Campbell Barton [Sat, 17 Nov 2012 06:05:37 +0000 (06:05 +0000)]
playanim move zooming into a static function, the switch statement passthrough was unnecessarily confusing.

6 years agoquiet scons deprecation warnings and correct --with_filesystem --> --with-filesystem...
Campbell Barton [Sat, 17 Nov 2012 05:16:54 +0000 (05:16 +0000)]
quiet scons deprecation warnings and correct --with_filesystem --> --with-filesystem in

6 years agoanimation playback window now pauses properly.
Campbell Barton [Sat, 17 Nov 2012 04:47:33 +0000 (04:47 +0000)]
animation playback window now pauses properly.

6 years agofix for 'Playanim' playing past the last frame of an animation. also print -s and...
Campbell Barton [Sat, 17 Nov 2012 01:15:28 +0000 (01:15 +0000)]
fix for 'Playanim' playing past the last frame of an animation. also print -s and -e in help message.

6 years agouse quad-strip for filling even when no segments are being added, this gives quad...
Campbell Barton [Fri, 16 Nov 2012 21:25:11 +0000 (21:25 +0000)]
use quad-strip for filling even when no segments are being added, this gives quad-loops along the bevel whereas before it made ngons.

6 years agomore straightforward way to implement quad-strip face filling suggested by Howard...
Campbell Barton [Fri, 16 Nov 2012 21:05:27 +0000 (21:05 +0000)]
more straightforward way to implement quad-strip face filling suggested by Howard Trickey,

also some other changes - no need to check the new loops face is larger and no longer split up the ngon more times then there are subdivisions in the face strip (now ngons will remain on both sides).

6 years agoMore fixes and cleanup...
Bastien Montagne [Fri, 16 Nov 2012 17:14:01 +0000 (17:14 +0000)]
More fixes and cleanup...

Now OSL should work for DEB-like systems with CMake (not yet tested with scones, nor fedora).
Fedora version-checking bug should be fixed.
Also simplified a bit compile_FOO funcs code.

6 years agoOSX/scons/osl: use Xlinker for the BF_PROGRAM_LINKFLAGS, so we can alternative again...
Jens Verwiebe [Fri, 16 Nov 2012 15:18:14 +0000 (15:18 +0000)]
OSX/scons/osl: use Xlinker for the BF_PROGRAM_LINKFLAGS, so we can alternative again compile with gcc-4.6

6 years agoPython/Context: do not allow any UI context access from threads like render
Brecht Van Lommel [Fri, 16 Nov 2012 15:15:40 +0000 (15:15 +0000)]
Python/Context: do not allow any UI context access from threads like render
or baking. This basically means you will only have access to and
bpy.context.scene, not current window, active object, etc, as those are not
thread safe anyway and were likely to cause issues already.

This fixes #30858, where the UI would lose buttons due to context getting
corrupted when editing objects in pre/post render or using luxrender. The
context access they did (indirectly) was only using the current scene or
data so they still work.

6 years agoOSX/scons/osl: working but not optimally designed atm
Jens Verwiebe [Fri, 16 Nov 2012 14:42:04 +0000 (14:42 +0000)]
OSX/scons/osl: working but not optimally designed atm

6 years agorework the bevel quad strip logic to work with ngons correctly, previously it only...
Campbell Barton [Fri, 16 Nov 2012 14:28:37 +0000 (14:28 +0000)]
rework the bevel quad strip logic to work with ngons correctly, previously it only worked properly with triangles.

6 years agofix for own bug in quad-stip fill method, quad strips were skewed.
Campbell Barton [Fri, 16 Nov 2012 13:41:21 +0000 (13:41 +0000)]
fix for own bug in quad-stip fill method, quad strips were skewed.

6 years agoFirst atempt to add OSL.
Bastien Montagne [Fri, 16 Nov 2012 12:42:01 +0000 (12:42 +0000)]
First atempt to add OSL.

DEB only for now: installs needed deps (LLVM & co), downloads OSL source and compiles the lib. However, blender linking fails currently... :/

6 years agoBLI_assert() when math functions that require are normalize vector are called without...
Campbell Barton [Fri, 16 Nov 2012 12:41:40 +0000 (12:41 +0000)]
BLI_assert() when math functions that require are normalize vector are called without one.

6 years agomore minor improvements to bevel use of math functions
Campbell Barton [Fri, 16 Nov 2012 12:33:24 +0000 (12:33 +0000)]
more minor improvements to bevel use of math functions

6 years agocode cleanup: remove unneeded normalize (face normal), and unneeded call to len_v3v3
Campbell Barton [Fri, 16 Nov 2012 12:25:15 +0000 (12:25 +0000)]
code cleanup: remove unneeded normalize (face normal), and unneeded call to len_v3v3

6 years agoWindows x64:
Thomas Dinges [Fri, 16 Nov 2012 12:18:47 +0000 (12:18 +0000)]
Windows x64:
* Fix compile after recent OIIO changes.

6 years agobevel: save some memory by aligning struct members.
Campbell Barton [Fri, 16 Nov 2012 10:15:25 +0000 (10:15 +0000)]
bevel: save some memory by aligning struct members.

6 years agowip - alternate bevel curve calculation (still disabled)
Campbell Barton [Fri, 16 Nov 2012 08:12:06 +0000 (08:12 +0000)]
wip - alternate bevel curve calculation (still disabled)

now USE_ALTERNATE_ADJ works, giving more stable corners that don't flicker and glitch out as the offset changes.

The shape is not a circle though and doesnt look quite as nice as the existing method.

6 years agodebug utility for drawing in the 3d viewport (uncomment define to use), helpful for...
Campbell Barton [Fri, 16 Nov 2012 07:56:47 +0000 (07:56 +0000)]
debug utility for drawing in the 3d viewport (uncomment define to use), helpful for debugging modifiers/bmesh code, especially other peoples :)

6 years agominor edits so new bevel operator can be used from the modifier (testing only, still...
Campbell Barton [Fri, 16 Nov 2012 03:23:46 +0000 (03:23 +0000)]
minor edits so new bevel operator can be used from the modifier (testing only, still disabled by default)

6 years agofix [#33180] text editor line height issue
Justin Dailey [Fri, 16 Nov 2012 01:12:01 +0000 (01:12 +0000)]
fix [#33180] text editor line height issue

Added small space between lines in the text editor.

6 years agoOSX/scons/osl: ready for compile now, little hack to be resolved, todo:fix a crash...
Jens Verwiebe [Fri, 16 Nov 2012 00:43:28 +0000 (00:43 +0000)]
OSX/scons/osl: ready for compile now, little hack to be resolved, todo:fix a crash with shadercompile

6 years agobevel: wip ifdef'd code to test an alternative method of placing corner vertices.
Campbell Barton [Thu, 15 Nov 2012 23:21:21 +0000 (23:21 +0000)]
bevel: wip ifdef'd code to test an alternative method of placing corner vertices.

6 years agocode cleanup: some renaming to avoid confusion.
Campbell Barton [Thu, 15 Nov 2012 22:32:29 +0000 (22:32 +0000)]
code cleanup: some renaming to avoid confusion.

6 years agocode cleanup: replace most DO_MINMAX2 -> minmax_v2v2_v2
Campbell Barton [Thu, 15 Nov 2012 22:20:18 +0000 (22:20 +0000)]
code cleanup: replace most DO_MINMAX2 -> minmax_v2v2_v2
also add UNPACK macros's. handy for printing vectors for eg.

6 years agoFix #33170: cycles viewport update issue with motion blur enabled
Brecht Van Lommel [Thu, 15 Nov 2012 21:52:17 +0000 (21:52 +0000)]
Fix #33170: cycles viewport update issue with motion blur enabled
(which is supposed to do nothing in this case).

6 years agoOSX/scons/osl: initial osl compiling, todo: fix shader compile and copy to bundle
Jens Verwiebe [Thu, 15 Nov 2012 21:35:25 +0000 (21:35 +0000)]
OSX/scons/osl: initial osl compiling, todo: fix shader compile and copy to bundle

6 years agoFix #33188: AO pass wrong after recent change.
Brecht Van Lommel [Thu, 15 Nov 2012 21:32:05 +0000 (21:32 +0000)]
Fix #33188: AO pass wrong after recent change.

6 years agoFix #33192: Opening Blender breaks drag-and-drop support on the KDE desktop
Sergey Sharybin [Thu, 15 Nov 2012 20:50:48 +0000 (20:50 +0000)]
Fix #33192: Opening Blender breaks drag-and-drop support on the KDE desktop

Do not set root window as DND aware.

6 years ago* Fix typo in cmake, own fault.
Thomas Dinges [Thu, 15 Nov 2012 20:21:33 +0000 (20:21 +0000)]
* Fix typo in cmake, own fault.

6 years agoWindows / CMake:
Thomas Dinges [Thu, 15 Nov 2012 19:45:37 +0000 (19:45 +0000)]
Windows / CMake:
* Disable Debug Boost detection in cmake. Debug libs for boost will be removed, they are quite huge in svn.
Keeping the lines here though, so devs with own debug libs can compile with it.

6 years agoWindows OIIO:
Thomas Dinges [Thu, 15 Nov 2012 19:37:29 +0000 (19:37 +0000)]
Windows OIIO:
* bin/OpenImageIO.dll not needed anymore, now statically linked.

6 years agoEnable OSL for linux 32 bit builders, it should work now
Sergey Sharybin [Thu, 15 Nov 2012 19:26:11 +0000 (19:26 +0000)]
Enable OSL for linux 32 bit builders, it should work now

6 years agoAdd some missing Node rna update calls
Dan Eicher [Thu, 15 Nov 2012 17:55:11 +0000 (17:55 +0000)]
Add some missing Node rna update calls

6 years agoAnother nuch of fixes/improvements to install_deps script, among which:
Bastien Montagne [Thu, 15 Nov 2012 17:31:18 +0000 (17:31 +0000)]
Another nuch of fixes/improvements to install_deps script, among which:
*New $INST variable to easily change the installation root dir of compiled libs.
*Better handling of versions for debian (DEB) too (and fix a bug for fedora (RPM) ones).
*Enhancements/fixes to compile_FOO funcs:
**Most notable, we now can force a recompile when we change something into these funcs, so user will always have latest-instructions compiled libs (else, he would have have to manually remove lib dirs under $INST...)
*General naming cleanup inside script (still wip).

Also adding boost date_time lib to linux in cmake file (why wasn't it there???).

6 years agoCycles OSL: windows build system changes to support static OSL/OIIO.
Brecht Van Lommel [Thu, 15 Nov 2012 17:16:27 +0000 (17:16 +0000)]
Cycles OSL: windows build system changes to support static OSL/OIIO.

6 years agoWindows / Scons OSL:
Thomas Dinges [Thu, 15 Nov 2012 16:34:22 +0000 (16:34 +0000)]
Windows / Scons OSL:
* Initial support, still commented.

6 years agoImage thread safe improvements
Sergey Sharybin [Thu, 15 Nov 2012 15:59:58 +0000 (15:59 +0000)]
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

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 :)

6 years agoCycles: ambient occlusion now takes per-BSDF normals into account.
Brecht Van Lommel [Thu, 15 Nov 2012 15:37:58 +0000 (15:37 +0000)]
Cycles: ambient occlusion now takes per-BSDF normals into account.

6 years agoFix #33183: cycles bump mapping was not executed with only an AO node in a material.
Brecht Van Lommel [Thu, 15 Nov 2012 14:08:46 +0000 (14:08 +0000)]
Fix #33183: cycles bump mapping was not executed with only an AO node in a material.

6 years agoCorrection to 32bit buildslaves
Sergey Sharybin [Thu, 15 Nov 2012 13:26:32 +0000 (13:26 +0000)]
Correction to 32bit buildslaves

6 years agocode cleanup: move local math functions into math_geom.c, math_vector.c, no functiona...
Campbell Barton [Thu, 15 Nov 2012 13:24:14 +0000 (13:24 +0000)]
code cleanup: move local math functions into math_geom.c, math_vector.c, no functional changes.

6 years agoOSL Scons rules
Sergey Sharybin [Thu, 15 Nov 2012 13:11:12 +0000 (13:11 +0000)]
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 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.

6 years agoZ sampling for nodes backdrop
Dalai Felinto [Thu, 15 Nov 2012 13:10:24 +0000 (13:10 +0000)]
Z sampling for nodes backdrop
As it turned out,  the node space was the only place we have the option to sample the backdrop buffer RGB, but not the zed.
This code is copied from image space.

Now one can use the viewer node and sample the depth while looking at the color buffer (so Map Range Node works even better)
Patch written during BlenderPRO 2012, Brasília ;)
(reviewed by Lukas Toenne)

6 years agofix [#33179] Can't delete centered edge loop if x-mirror is activated
Campbell Barton [Thu, 15 Nov 2012 06:10:09 +0000 (06:10 +0000)]
fix [#33179] Can't delete centered edge loop if x-mirror is activated

6 years agofix for 3d text input failing for non utf8 input.
Campbell Barton [Thu, 15 Nov 2012 06:02:32 +0000 (06:02 +0000)]
fix for 3d text input failing for non utf8 input.

6 years agofix for deleting lines hanging the text editor when no markers are used, presence...
Campbell Barton [Thu, 15 Nov 2012 02:11:40 +0000 (02:11 +0000)]
fix for deleting lines hanging the text editor when no markers are used, presence of markers still hangs.

also compiler warnings and some style edits.

6 years agoFix 'polygon eating' problem in bevel (bug #33141)
Howard Trickey [Thu, 15 Nov 2012 02:05:32 +0000 (02:05 +0000)]
Fix 'polygon eating' problem in bevel (bug #33141)
which was due to almost-parallel lines.

6 years agolooks like we need those libs as well to compile with static ffmpeg on fedora (by...
Bastien Montagne [Wed, 14 Nov 2012 23:20:16 +0000 (23:20 +0000)]
looks like we need those libs as well to compile with static ffmpeg on fedora (by why in hell librt???)...

6 years agoPatch [#31006] Text editor undo buffer rework.
Justin Dailey [Wed, 14 Nov 2012 23:10:19 +0000 (23:10 +0000)]
Patch [#31006] Text editor undo buffer rework.

6 years agoFix OSL build error on linux.
Brecht Van Lommel [Wed, 14 Nov 2012 22:45:44 +0000 (22:45 +0000)]
Fix OSL build error on linux.

6 years agofix range map node clipping when max < min
Dalai Felinto [Wed, 14 Nov 2012 22:15:45 +0000 (22:15 +0000)]
fix range map node clipping when max < min
(useful for flipping the values inside the node)