Commit Graph

512 Commits

Author SHA1 Message Date
Antony Riakiotakis
8fa55d95e4 World background working on cycle nodes.
This is added in the spirit of the general cycles GLSL system
which is pretty much WIP still.

This will only work on cycles at the moment but generating for blender
internal is possible too of course though it will be done in a separate
commit.

This hasn't been tested with all and every node in cycles, but
environment and regular textures with texture coordinates work.

There is some difference between the way cycles treats some coordinates,
which is in world space and the way GLSL treats them, which is in view
space.
We might want to explore and improve this further in the future.

...also </drumroll>
2014-11-26 15:07:26 +01:00
Sergey Sharybin
e05be6bdbd SCons: Proper solution for local symbols map
Configuration used to override the link flags, it better restore them
once the configuration is done.
2014-11-20 15:27:10 +01:00
Sergey Sharybin
82d2718c8f Switch to SDL2 on OSX 2014-11-19 19:41:41 +01:00
Sergey Sharybin
80d1d624d3 Support dynamic loading of SDL libraries
This is mainly to address old issue when one need to have SDL library installed
in order to use our official builds. Some hip distros already installs SDL,
but it's not quite the same across all the variety of the distros.

We also now switching to SDL-2.0, most of the distros have it in repositories
already, so it shouldn't be huge deal to install it if needed.

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D878
2014-11-17 17:43:18 +05:00
Martijn Berger
96ca64629d Windows (MSVC2013) move to SDL2 2014-11-13 16:23:27 +01:00
Jason Wilkins
8d084e8c8f Ghost Context Refactor
https://developer.blender.org/D643
Separates graphics context creation from window code in Ghost so that they can vary separately.
2014-10-07 15:47:32 -05:00
Sergey Sharybin
bd671f1005 Fix scons leaving partially generated files when aborting 2014-09-12 22:56:37 +06:00
Sergey Sharybin
feba2d3edf Attempt to fix compilation error on ubuntu linux 2014-09-08 14:29:34 +06:00
Martijn Berger
cebf728250 Add sqlite3 dll's on windows.
Fix T41144
2014-08-31 09:08:07 +02:00
Sergey Sharybin
526ae635d1 Fix T41629: Won't open blend files with non-Latin charasters in the name 2014-08-29 23:06:11 +06:00
Sergey Sharybin
9b9ddb4669 Make SCons's DEBUG/_DEBUG consistent with CMake
Also move this to a generic place in SConstruct instead of having this
defines in 6 different configurations.

Should not be functional changes, but please verify all the platforms.
2014-08-27 14:49:47 +06:00
Thomas Dinges
fb3f32760d Cycles: Add an experimental CUDA kernel.
Now we build 2 .cubins per architecture (e.g. kernel_sm_21.cubin, kernel_experimental_sm_21.cubin).
The experimental kernel can be used by switching to the Experimental Feature Set: http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Experimental_Features

This enables Subsurface Scattering and Correlated Multi Jitter Sampling on GPU, while keeping the stability and performance of the regular kernel.

Differential Revision: https://developer.blender.org/D762
Patch by Sergey and myself.

Developer / Builder Note:
CUDA Toolkit 6.5 is highly recommended for this, also note that building the experimental kernel requires a lot of system memory (~7-8GB).
2014-08-26 17:02:26 +02:00
Jens Verwiebe
664f8e9048 OSX/Scons: make sure BF_OSL implies BF_LLVM 2014-08-14 12:16:11 +02:00
Sergey Sharybin
e438c450b4 Manifest used to be installed on non-windows platforms 2014-08-11 17:26:20 +06:00
Sergey Sharybin
0e9c677343 Add blender launcher application when building with MSVC
Main idea of this change is to make a small executable which
will set OMP_WAIT_POLICY environment variable and then will
launch blender itself.

This is a teporary solution for the time being we'll have a
more clear solution to high CPU usage with OpenMP when building
with MSVC.

Reviewers: campbellbarton, juicyfruit

Reviewed By: juicyfruit

Differential Revision: https://developer.blender.org/D717
2014-08-07 21:45:24 +06:00
Martijn Berger
d1217cc4b2 change scons default to be visual studio 2013 2014-08-07 10:06:13 +02:00
Sergey Sharybin
77b7e1fe9a Deduplicate CUDA and OpenCL wranglers
For now it was mainly about OpenCL wrangler being duplicated
between Cycles and Compositor, but with OpenSubdiv work those
wranglers were gonna to be duplicated just once again.

This commit makes it so Cycles and Compositor uses wranglers
from this repositories:

  - https://github.com/CudaWrangler/cuew
  - https://github.com/OpenCLWrangler/clew

This repositories are based on the wranglers we used before
and they'll be likely continued maintaining by us plus some
more players in the market.

Pretty much straightforward change with some tricks in the
CMake/SCons to make this libs being passed to the linker
after all other libraries in order to make OpenSubdiv linked
against those wranglers in the future.

For those who're worrying about Cycles being less standalone,
it's not truth, it's rather more flexible now and in the future
different wranglers might be used in Cycles. For now it'll
just mean those libs would need to be put into Cycles repository
together with some other libs from Blender such as mikkspace.

This is mainly platform maintenance commit, should not be any
changes to the user space.

Reviewers: juicyfruit, dingto, campbellbarton

Reviewed By: juicyfruit, dingto, campbellbarton

Differential Revision: https://developer.blender.org/D707
2014-08-05 13:57:50 +06:00
Jens Verwiebe
02b66f8a55 OSX/buildsystem: prepare usage on OSX 10.10 - Yosemite
- important: requires cmake >= 2.8.12 to read minor version right,
aka older cmake rates 10.10 lower than 10.6 for example ! ( sigh )
2014-08-03 12:51:35 +02:00
Martijn Berger
bcbbed0ccf Use dynamically linked SDL 1.2.15 on windows x64 2014-07-31 16:43:02 +02:00
Jens Verwiebe
a9c8a117a2 OSX/scons: Fix linking if llvm is not used ( new osl/llvm/oiio related ) 2014-07-29 10:59:57 +02:00
Antony Riakiotakis
f745564e4e GSOC 2013 paint
Yep, at last it's here!

There are a few minor issues remaining but development can go on in
master after discussion at blender institute.

For full list of features see:

http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.72/Painting

Thanks to Sergey and Campbell for the extensive review and to the
countless artists that have given their input and reported issues during
development.
2014-07-21 12:02:05 +02:00
Sergey Sharybin
30b4d0c0ec Need to disable Libmv for cudakernels target
This way no access to automated tests variables will happen.

Ideally it should be something more like using blenderlite
with just Cycles enabled, but let's keep it for a bigger
clean up.
2014-07-10 10:56:38 +06:00
Sergey Sharybin
430efd4228 SCons: Hopefully final fix for 32bit linux buildbot
No need to run automated tests for cudakernels target. TThis could
be harmless because CUDA binaries are built in the another chroot.
2014-07-10 10:48:31 +06:00
Sergey Sharybin
b2e9fffc3d Further tweaks to SCons's auto tests
We should do autotests only after setting path to sconsign,
otherwise using the same working directory and different
build directories will eventually break.
2014-07-10 03:53:37 +06:00
Sergey Sharybin
f0c06e71ba Another attempt to fix issues with 32bit OSX and scons 2014-07-10 02:33:44 +06:00
Jens Verwiebe
1c329fc54b OSX/Scons: after doublechecking. take out sdk_flags from cflags again, looks as we always get sdk properly fron ccflags in subcompiles 2014-07-06 15:46:16 +02:00
Jens Verwiebe
2440b3e158 OSX/scons: Try to get rid of buildproblems with openjpeg enabled in certain build environments and prepend SDK_FLAGS to CFLAGS always 2014-07-06 14:10:41 +02:00
Sergey Sharybin
d7d9e98352 Fix compilation error on OSX+Scons
Issue was caused by OSX tweaks happening in the SConstruct
after the old location of autotest.
2014-06-29 20:27:54 +06:00
Sergey Sharybin
72ac596e19 Update Ceres to latest upstream version
Brings new bounds limiting and also prepares build system
for the changes in the upstream.

Namely shared_ptr header and namespace is now being detected
by a build system rather than by hacks in the code.

This commit includes some changes to auto-detection flags
in SCons, presumably adding more consistency there. This
is main changes which are suppoed to be reviewed here.

Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D581
2014-06-27 14:08:27 +06:00
Sergey Sharybin
283abdf3b2 Fix compilation error with scons and older pythons 2014-06-26 16:03:52 +06:00
Campbell Barton
2dce13d213 Python: Remove deprecated uses of os.popen
T40415 by Lawrence D'Oliveiro
2014-06-20 02:00:46 +10:00
Campbell Barton
b252915b68 CMake/SCons: finish removing MSVC2012 references 2014-05-15 16:16:25 +10:00
Jens Verwiebe
8ff74bed9b Scons/cycles: fix header distribution for geom 2014-04-04 13:07:32 +02:00
Campbell Barton
617557b08e Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT define 2014-04-01 15:22:28 +11:00
3f769776fe Splash screen: use a retina resolution image for Mac OS X. 2014-02-18 19:38:44 +01: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
Jens Verwiebe
c9f7ebce80 OSX/scons: adapt forgotten CCVERSION conditional, sorry 2014-02-10 15:56:37 +01:00
Jens Verwiebe
151d93d2bf OSX/scons; Adapt ftemplate-depth=1024 condition to new compiler versioning 2014-02-10 15:05:19 +01:00
Jens Verwiebe
6b7f03678e OSX/scons: fix breakage after clang-openmp commit:
use the svn clang version instead of Apple compiler naming,
this also makes Brecht’s cycles sse/avx conditionals behave right
2014-02-10 14:55:44 +01:00
Jens Verwiebe
a84bcea070 OSX/scons: allow for compiling with clang-openmp-3.4
See: http://clang-omp.github.io
+ fix a longstanding bad include in darwin-config
2014-02-09 18:03:13 +01:00
Lawrence D'Oliveiro
cb0a5adc56 SCons: cleaner determination of 32-bit/64-bit builds
Try not to be x86-centric, remove unneeded blenderdeps variable.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D240
2014-02-04 19:01:10 +01:00
Jens Verwiebe
74ae93d1cd Scons: Fix cycles OpenCL kernelcompile by distributing util_half.h 2014-01-17 00:33:32 +01:00
Thomas Dinges
5d88f7c7db Cycles: Build SSE41 kernel per default, remove build option. This hopefully also fixes some compile errors on various systems. 2014-01-14 22:04:32 +01:00
Campbell Barton
4c9a3a53bd UI Icons: store icons in git as uncompressed pixmaps (D196)
this allows for updating icons without committing a new PNG each time
(which is inefficient with git). The data files are converted into a
PNG at builds time and used just as they were before.
2014-01-14 00:14:03 +11:00
Campbell Barton
3072d817d8 Scons: disable player along with game-engine. 2014-01-11 14:55:56 +11:00
Jens Verwiebe
17a4ba2c7c OSX/scons: after discussion i was told cycles does decide to use sse4.1 kernel on the fly,
so autodetection is obsolete @buildtime. Leave in print for testing case
2014-01-06 23:29:21 +01:00
Jens Verwiebe
d21ef02e8f OSX/scons: autodetecting sse4.1 capability and set it to used 2014-01-06 22:46:20 +01:00
6eedddc12d Fix T37780: no languages in user preferences with SCons on Windows / Linux.
The "languages" file was not copied, probably this was not noticed earlier
because it only affects clean builds.
2013-12-12 06:09:58 +01:00
Jens Verwiebe
901ebbd94a Scons: as requested by Ideasman, make MACOSX_COMPILER -> C_COMPILER_ID,
leave env set for OSX exclusive for now”
2013-12-08 15:35:21 +01:00
Jens Verwiebe
31871c763f OSX/scons: forgot Intel CC ( ‘icc’ ) in detection
Todo: perhaps unify this for all OS, but keep in mind:
Apple compiler versions may have other capabilities
than std gcc, llvm, clang ( other versioning also )
2013-12-07 18:05:27 +01:00