Commit Graph

201 Commits

Author SHA1 Message Date
Campbell Barton
1e4b612d6a Cleanup: add _types.h suffix to DNA headers 2018-02-07 11:14:08 +11:00
Campbell Barton
b0af44fa4d Fix T50630: Fluid fails on win32 w/ unicode paths
Allow overriding gzip open w/ elbeem.
2018-01-30 14:31:04 +11:00
Lucas Veber
405121d613 Fix T51759: fluid simulation particles not remoevd when colliding with outflow objects.
Reviewed By: brecht

Differential Revision: https://developer.blender.org/D2719
2017-07-02 22:42:08 +02:00
Howard Trickey
76eefa5c0d Better fix for isfinite problem - works in older gcc's too.
Previous fix relying on __cplusplus value didn't fix for older
gcc's on linux, but this fix does.
2017-06-30 09:04:01 -04:00
Howard Trickey
1938a81e42 Fix compile error after recent 9c2bbfb6 commit.
Older C++ compilers use finite instead of isfinite.
2017-06-30 07:47:37 -04:00
Campbell Barton
9c2bbfb6ce Fix T50887: Holes in fluid mesh on Windows
D2556 by @chrisr
2017-06-30 11:48:12 +10:00
Aaron Carlisle
9f044cb422 Remove MinGW support
The Issue
=======

For a long time now MinGW has been unsupported and unmaintained and at this point,
it looks like something that we should just leave behind and move on.


Why Remove
==========

One of the big motivations for MinGW back in the day is that it was free compared to MSVC which was licensed based.
However, now that this is no longer true we have basically stopped updating the need CMake files.
Along with the CMake files, there are several patches to the extern libs needed to make this work.  For example, see:
https://developer.blender.org/diffusion/B/browse/master/extern/carve/patches/mingw_w64.patch

If we wanted to keep MinGW then we would need to make more custom patches to the external libs and
this is not something our platform maintainers are willing to do.

For example, here is the patches needed to build python: https://github.com/Alexpux/MINGW-packages/tree/master/mingw-w64-python3

Fixes T51301

Differential Revision: https://developer.blender.org/D2648
2017-05-27 15:34:55 -04:00
Brecht Van Lommel
49ad4215ba Fix fluid sim build error with MSVC. 2016-10-03 22:15:24 +02:00
Brecht Van Lommel
3f9b69287d Fluids: improve multithreaded CPU usage.
Fixes for clamp-omp, fewer shared variables, fix some cases of threads writing
to the same memory location. Issue found by Jens Verwiebe, who reports 30%
speedup with 16 core CPU, when using this with a recent clang-omp version.
2016-10-02 16:38:14 +02:00
Sergey Sharybin
f7263b8b1a Cleanup: Reduce amount of misleading indentation
Was polluting compile output too much.
2016-09-01 12:14:16 +02:00
Sergey Sharybin
87dcee0c0c Silence some annoying warnings when doing full build with strict flags
This mainly touches extern libraries and few debug-only places in intern.

Some summary:

- External libraries are not strict at all about missing declarations,
  so we can rather safely remove such warning together with other strict
  flags.

- Bullet has some static functions which are not used.
  Those were commented out.

- Carve now has some unused debug-only functions commented out as well.
  While we're on the way of getting rid of Carve, it makes sense to make
  things a bit cleaner for the time being.

- In LZMA we have some parts disabled which gives some set but unused
  variables which is rather correct.

- Elbeem had quite some variables set and never used because their usage
  is inside of debug-only code which is commented out.

Note about patching upstream libraries: surely one might say that we
have to make local patchset against this, but own experience says it
only gives extra work trying to merge such tweaks to a new upstream
version and usually it's just faster to re-apply such fixes again after
bundling new upstream library.
2016-04-22 10:59:15 +02:00
Sergey Sharybin
5d99cde822 Remove SCons building system
While SCons building system was serving us really good for ages it's no longer
having much attention by the developers and started to become quite a difficult
task to maintain.

What's even worse -- there started to be quite serious divergence between SCons
and CMake which was only accumulating over the releases now. The fact that none
of the active developers are really using SCons and that our main studio is also
using CMake spotting bugs in the SCons builds became quite a difficult task and
we aren't always spotting them in time.

Meanwhile CMake became really mature building system which is available on every
platform we support and arguably it's also easier and more robust to use.

This commit includes:

- Removal of actual SCons building system
- Removal of SCons git submodule
- Removal of documentation which is stored in the sources and covers SCons
- Tweaks to the buildbot master to stop using SCons submodule
  (this change requires deploying to the server)
- Tweaks to the install dependencies script to skip installing or mentioning
  SCons building system
- Tweaks to various helper scripts to avoid mention of SCons folders/files
  as well

Reviewers: mont29, dingto, dfelinto, lukastoenne, lukasstockner97, brecht, Severin, merwin, aligorith, psy-fi, campbellbarton, juicyfruit

Reviewed By: campbellbarton, juicyfruit

Differential Revision: https://developer.blender.org/D1680
2016-01-04 14:20:48 +05:00
Brecht Van Lommel
b098609186 Fix various compiler warnings. 2015-10-10 17:35:30 +02:00
Campbell Barton
2e840e56cf CMake: correct include dirs 2014-07-01 09:36:28 +10:00
Juergen Herrmann
5559302369 Cleanup some useless/unneeded #ifdefs for MSVC2013. 2014-03-09 00:25:08 +01:00
Campbell Barton
6bb090f4bb Building elbeem without openmp failed 2014-02-06 02:26:48 +11:00
Daniel Genrich
1ab86e3f1f Fix T36769: fluid sim modifier can crash blender
Crash only happened when the number of openmp threads were greater than the resolution.
2014-02-05 15:37:38 +01:00
Alexandr Kuznetsov
e2429d6492 Woo Hoo. First git commit.
Changes for VC2013

Now, I can build Blender with VC2013 with Cycles, Collada, OpenExr,OpenImageIO disabled. Also, you need VC2008 sp1 installed to make old libs compatible.
2013-11-29 15:13:12 -05:00
Brecht Van Lommel
7c29744111 Fix build error when building without OpenMP. 2013-09-27 19:44:06 +00:00
Sergey Sharybin
dad37860e2 Elbeem: fix memory leak and add guarded allocator directives 2013-09-27 18:55:26 +00:00
Sergey Sharybin
16da43ef19 Elbeem: Use pragma directive instead of overriding number of omp threads
Global OpenMP threads override is not a good idea because this would affect
all possible OpenMP blocks running at the same time as simulation.

And that was actually a big on restoring number of threads: code needed to
store current number of threads, not maximal one.
2013-09-27 18:55:15 +00:00
Campbell Barton
8f1e51a7d9 remove WINDOWS checks in cmake, this variable isn't defined on windows and checks weren't needed.
also remove redundant dot_v3v3 in shrinkwrap constraint.
2013-09-03 03:04:44 +00:00
Campbell Barton
ece766ee7e code cleanup: unused defines, remove unused scanfill success value from BLI_scanfill_begin(). 2013-04-10 23:52:07 +00:00
Jens Verwiebe
b9b23d697b Fluid threads: re-add an erratically forgotten line, fix typo, set default threadcount to logical threadcount of machine 2013-04-10 23:19:57 +00:00
Jens Verwiebe
5ac66ee378 Fluid threads: add a restore to former omp threadcount when baking is done, todo: default should be logical corecount 2013-04-10 23:10:25 +00:00
Jens Verwiebe
842d0a4258 The fluid threads setting is still WIP, for now fix compiling without openMP enabled 2013-04-10 20:05:11 +00:00
Jens Verwiebe
cbe9ae244e Add a gui control for setting omp threads in fluids 2013-04-10 18:35:18 +00:00
Daniel Genrich
68ac08681a Elbeem fluid: Remove hardcoded 16GB RAM limit on 64bit systems 2013-03-30 20:50:28 +00:00
Daniel Genrich
2cd0f0d2fe Bugfix [#34749] Fluid domain > 10GB crashes Blender - out of memory
I am unsure if I did catch all problematic code but I ran out of memorybefore the sim started ;)
2013-03-25 11:11:49 +00:00
Brecht Van Lommel
4f3ca854e1 Fix various warnings with clang build, and adjust cmake clang warnings flags
to include a few more that gcc is using too.
2013-02-26 21:58:06 +00:00
Bastien Montagne
ab2c273b12 Added GPL header to sconscripts!
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-17 08:01:43 +00:00
Daniel Genrich
e089c5a976 Bugfix [#33467] Fluid Simulations Speed factor animated wrong result
Thanks to Brecht for providing a patch and example blend.
I changed and extended it a bit since there was another bug in that loop.
2012-12-11 13:02:42 +00:00
Daniel Genrich
ef67ddeba9 Bugfix [#29186] Object contribute to fluid sim animation start earlier than keyframe
Also fix:
- Fluid simulation was always lagging 1 frame behind: E.g. the 250th frame in blender showed 249th frame of the fluid simulation.

Change:
- Animated enabled/disabled property only gets counted as "on" if value >= 1

Note that this bugfix should solve many problems with timings of animated fluid sim properties.
2012-11-23 05:00:07 +00:00
Campbell Barton
7deb8d8a26 code cleanup: spelling 2012-10-20 20:36:51 +00:00
Daniel Genrich
a580c891a7 Bugfix [#32703] elbeem's isSimworldOk() will never return FALSE
Fixed as suggested by Campbell, thank you!
2012-10-09 13:09:03 +00:00
Daniel Genrich
24a00f14af Fix compile errors on VC++ 2012 RC1.
Note: Compile still fails during ceres compile (namespace tr1 problems).
2012-07-27 18:18:13 +00:00
Campbell Barton
f5f25b81e8 style cleanup:
also fix for building ghost test and fix double free in one of the tests
2012-06-17 09:58:26 +00:00
Campbell Barton
be53fde9cd code cleanup:
- remove duplicate includes
- blender builds with -Werror in C++ for fluids/smoke
2012-05-21 06:33:45 +00:00
Sergey Sharybin
7b31c3c198 Fix cosmetic typos
Patch provided by Matteo F. Vescovi, thanks!
2012-05-15 16:11:04 +00:00
Daniel Genrich
d8ae4b35f2 Patch [#31264] Elbeem Fixes by Jason Wilkins.
Thank you for submitting!
2012-05-14 16:19:58 +00:00
Antony Riakiotakis
4e6590067d revert 45924, not a very clean solution, especially for external libraries and looks like -fpermissive is used in linux too 2012-04-24 16:14:23 +00:00
Antony Riakiotakis
0db3c5f743 Remove mingw-w64 errors from loss of precision by converting 64bit pointers to ints. All cases found were harmless and the error behaviour could be turned off by the -fpermissive flag but I'd rather keep that off to detect any real problems should they arise. 2012-04-24 14:33:44 +00:00
Daniel Genrich
fb6ee37aa2 corrected more issues from [#31069] Analyzing the Blender project with PVS-Studio.
Remark: I think that "!(nbored & CFBnd)" would be correct but it introduced other bugs so, I just quiet compiler warnings leaving the running system untouched.
2012-04-23 17:33:12 +00:00
Daniel Genrich
a164aa1ab6 Bugfix [#30298] Fluid-Sytem does not work! (Part 2, Part 1 fixed by Brecht)
Canceling fluid simulation did not work when speed was zero.
2012-04-22 17:31:39 +00:00
Daniel Genrich
21f6bac0a3 Fix [#30954] Fluid obstacle checkbox has no effect
Note: Supporting obstacles which can be enabled/disabled as animated propoerty is not likely to happen. So I marked this as "Won't fix"/TODO.
I also reverted last commit on this bug because it didn't work and disabled the property from UI to avoid confusion.
2012-04-21 22:09:09 +00:00
Daniel Genrich
c96be5c5f9 Bugfix [#30954] Fluid obstacle checkbox has no effect
Needs testing for sideeffects. 

If there are negative sideeffects, revert commit and mark as "will not fix"/"not supported"/"needs UI fix".
2012-04-15 10:31:38 +00:00
Campbell Barton
1f3df9e659 patch from Jochen Schmitt to get blender building with gcc4.7 2012-02-09 07:01:30 +00:00
Campbell Barton
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Brecht Van Lommel
9520295ade Fix #28416: setting fluid simulation start time to anything other than zero
gave wrong results. Note how in this code it already incremented to the start
time and then incorrectly added it again. Patch by Chris Foster, thanks!
2011-09-29 14:18:01 +00:00
Daniel Salazar
7ff634b8ef Reverting change to solver_relax.h from commit 40539, caused this nasty bug http://projects.blender.org/tracker/?func=detail&atid=498&aid=28748&group_id=9
I'd say better be careful with code so complex as the fluid sim!
2011-09-26 09:36:51 +00:00