Revision: 46813
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46813
Author:   genscher
Date:     2012-05-20 17:25:45 +0000 (Sun, 20 May 2012)
Log Message:
-----------
- Use Smoke code from trunk again: 
Unforeseen problems: The new code uses hidden arrays, file based functions. 
Nils himself describes the code as following in one of his new papers 
"Unuseable for rising smoke". What a bummer.
- New approach: Backport features as moving obstacles, preconditioned conjugate 
gradient solver, etc.

- This commit also contains the following code:
Better pressure and divergence calculation, idea taken from NVIDIA (graphic 
gems #3)

Modified Paths:
--------------
    branches/smoke2/intern/smoke/CMakeLists.txt
    branches/smoke2/intern/smoke/SConscript
    branches/smoke2/intern/smoke/extern/smoke_API.h
    branches/smoke2/intern/smoke/intern/smoke_API.cpp

Added Paths:
-----------
    branches/smoke2/intern/smoke/intern/EIGENVALUE_HELPER.cpp
    branches/smoke2/intern/smoke/intern/EIGENVALUE_HELPER.h
    branches/smoke2/intern/smoke/intern/FFT_NOISE.h
    branches/smoke2/intern/smoke/intern/FLUID_3D.cpp
    branches/smoke2/intern/smoke/intern/FLUID_3D.cpp.bak
    branches/smoke2/intern/smoke/intern/FLUID_3D.h
    branches/smoke2/intern/smoke/intern/FLUID_3D_SOLVERS.cpp
    branches/smoke2/intern/smoke/intern/FLUID_3D_SOLVERS.cpp.bak
    branches/smoke2/intern/smoke/intern/FLUID_3D_STATIC.cpp
    branches/smoke2/intern/smoke/intern/IMAGE.h
    branches/smoke2/intern/smoke/intern/INTERPOLATE.h
    branches/smoke2/intern/smoke/intern/LICENSE.txt
    branches/smoke2/intern/smoke/intern/LU_HELPER.cpp
    branches/smoke2/intern/smoke/intern/LU_HELPER.h
    branches/smoke2/intern/smoke/intern/MERSENNETWISTER.h
    branches/smoke2/intern/smoke/intern/Makefile.FFT
    branches/smoke2/intern/smoke/intern/Makefile.cygwin
    branches/smoke2/intern/smoke/intern/Makefile.linux
    branches/smoke2/intern/smoke/intern/Makefile.mac
    branches/smoke2/intern/smoke/intern/OBSTACLE.h
    branches/smoke2/intern/smoke/intern/SPHERE.cpp
    branches/smoke2/intern/smoke/intern/SPHERE.h
    branches/smoke2/intern/smoke/intern/VEC3.h
    branches/smoke2/intern/smoke/intern/WAVELET_NOISE.h
    branches/smoke2/intern/smoke/intern/WTURBULENCE.cpp
    branches/smoke2/intern/smoke/intern/WTURBULENCE.h
    branches/smoke2/intern/smoke/intern/main.cpp_disabled

Removed Paths:
-------------
    branches/smoke2/intern/smoke/intern/COPYING
    branches/smoke2/intern/smoke/intern/Makefile
    branches/smoke2/intern/smoke/intern/README.txt
    branches/smoke2/intern/smoke/intern/source/
    branches/smoke2/intern/smoke/intern/util/

Modified: branches/smoke2/intern/smoke/CMakeLists.txt
===================================================================
--- branches/smoke2/intern/smoke/CMakeLists.txt 2012-05-20 16:53:34 UTC (rev 
46812)
+++ branches/smoke2/intern/smoke/CMakeLists.txt 2012-05-20 17:25:45 UTC (rev 
46813)
@@ -24,9 +24,9 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-       intern/util
-       intern/source
+       intern
        ../memutil
+       ../../extern/bullet2/src
 )
 
 set(INC_SYS
@@ -35,44 +35,68 @@
 )
 
 set(SRC
+       intern/EIGENVALUE_HELPER.cpp
+       intern/FLUID_3D.cpp
+       intern/FLUID_3D_SOLVERS.cpp
+       intern/FLUID_3D_STATIC.cpp
+       intern/LU_HELPER.cpp
+       intern/SPHERE.cpp
+       intern/WTURBULENCE.cpp
        intern/smoke_API.cpp
-       
-       intern/source/advectionplugins.cpp
-       intern/source/animplugins.cpp
-       intern/source/conjugategrad.cpp
-       intern/source/fileio.cpp
-       intern/source/fluidsolver.cpp
-       intern/source/glutgui.cpp
-       intern/source/guihelpers.cpp
-       intern/source/initplugins.cpp
-       intern/source/smoke.cpp
-       intern/source/poissonsolvers.cpp
-       intern/source/smokeplugins.cpp
-       intern/source/solverinit.cpp
-       intern/source/solverparams.cpp
-       intern/source/stdplugins.cpp
-       intern/source/vortexpart.cpp
-       intern/source/vortexplugins.cpp
-       
-       intern/util/globals.cpp
-       intern/util/paramset.cpp
+
+       extern/smoke_API.h
+       intern/EIGENVALUE_HELPER.h
+       intern/FFT_NOISE.h
+       intern/FLUID_3D.h
+       intern/IMAGE.h
+       intern/INTERPOLATE.h
+       intern/LU_HELPER.h
+       intern/MERSENNETWISTER.h
+       intern/OBSTACLE.h
+       intern/SPHERE.h
+       intern/VEC3.h
+       intern/WAVELET_NOISE.h
+       intern/WTURBULENCE.h
+       intern/tnt/jama_eig.h
+       intern/tnt/jama_lu.h
+       intern/tnt/tnt.h
+       intern/tnt/tnt_array1d.h
+       intern/tnt/tnt_array1d_utils.h
+       intern/tnt/tnt_array2d.h
+       intern/tnt/tnt_array2d_utils.h
+       intern/tnt/tnt_array3d.h
+       intern/tnt/tnt_array3d_utils.h
+       intern/tnt/tnt_cmat.h
+       intern/tnt/tnt_fortran_array1d.h
+       intern/tnt/tnt_fortran_array1d_utils.h
+       intern/tnt/tnt_fortran_array2d.h
+       intern/tnt/tnt_fortran_array2d_utils.h
+       intern/tnt/tnt_fortran_array3d.h
+       intern/tnt/tnt_fortran_array3d_utils.h
+       intern/tnt/tnt_i_refvec.h
+       intern/tnt/tnt_math_utils.h
+       intern/tnt/tnt_sparse_matrix_csr.h
+       intern/tnt/tnt_stopwatch.h
+       intern/tnt/tnt_subscript.h
+       intern/tnt/tnt_vec.h
+       intern/tnt/tnt_version.h
 )
 
 # quiet -Wundef
 add_definitions(-DDDF_DEBUG=0)
 
 if(WITH_OPENMP)
-       add_definitions(-DDDF_OPENMP=1)
+       add_definitions(-DPARALLEL=1)
 else()
-       add_definitions(-DDDF_OPENMP=0)
+       add_definitions(-DPARALLEL=0)
 endif()
 
-#if(WITH_FFTW3)
-#      add_definitions(-DWITH_FFTW3)
-#      list(APPEND INC
-#              ${FFTW3_INCLUDE_DIRS}
-#      )
-#endif()
+if(WITH_FFTW3)
+       add_definitions(-DWITH_FFTW3)
+       list(APPEND INC
+               ${FFTW3_INCLUDE_DIRS}
+       )
+endif()
 
 blender_add_lib(bf_intern_smoke "${SRC}" "${INC}" "${INC_SYS}")
 

Modified: branches/smoke2/intern/smoke/SConscript
===================================================================
--- branches/smoke2/intern/smoke/SConscript     2012-05-20 16:53:34 UTC (rev 
46812)
+++ branches/smoke2/intern/smoke/SConscript     2012-05-20 17:25:45 UTC (rev 
46813)
@@ -2,20 +2,21 @@
 Import ('env')
 
 sources = env.Glob('intern/*.cpp')
-sources += env.Glob('intern/util/*.cpp')
-sources += env.Glob('intern/source/*.cpp')
 
 incs = ''
-defs = ' DDF_GLUTGUI=0 '
+defs = ''
 
 if env['WITH_BF_OPENMP']:
     if env['OURPLATFORM'] == 'linuxcross':
         incs += ' ' + env['BF_OPENMP_INC']
 
-    defs += ' DDF_OPENMP=1'
+    defs += ' PARALLEL=1'
 
 incs += ' ' + env['BF_PNG_INC'] + ' ' + env['BF_ZLIB_INC'] 
-incs += ' intern intern/util intern/source  '
+incs += ' intern ../../extern/bullet2/src ../memutil ../guardealloc '
 
+if env['WITH_BF_FFTW3']:
+    defs += ' WITH_FFTW3'
+    incs += env['BF_FFTW3_INC'] 
 
 env.BlenderLib ('bf_intern_smoke', sources, Split(incs), Split(defs), 
libtype=['intern'], priority=[40] )

Modified: branches/smoke2/intern/smoke/extern/smoke_API.h
===================================================================
--- branches/smoke2/intern/smoke/extern/smoke_API.h     2012-05-20 16:53:34 UTC 
(rev 46812)
+++ branches/smoke2/intern/smoke/extern/smoke_API.h     2012-05-20 17:25:45 UTC 
(rev 46813)
@@ -53,6 +53,8 @@
 float *smoke_get_velocity_y(struct FLUID_3D *fluid);
 float *smoke_get_velocity_z(struct FLUID_3D *fluid);
 
+float *smoke_get_pressure(struct FLUID_3D *fluid);
+
 /* Moving obstacle velocity provided by blender */
 void smoke_get_ob_velocity(struct FLUID_3D *fluid, float **x, float **y, float 
**z);
 
@@ -61,7 +63,6 @@
 float *smoke_get_force_z(struct FLUID_3D *fluid);
 
 unsigned char *smoke_get_obstacle(struct FLUID_3D *fluid);
-unsigned char *smoke_get_obstacle_anim(struct FLUID_3D *fluid);
 
 size_t smoke_get_index(int x, int max_x, int y, int max_y, int z);
 size_t smoke_get_index2d(int x, int max_x, int y);

Deleted: branches/smoke2/intern/smoke/intern/COPYING
===================================================================
--- branches/smoke2/intern/smoke/intern/COPYING 2012-05-20 16:53:34 UTC (rev 
46812)
+++ branches/smoke2/intern/smoke/intern/COPYING 2012-05-20 17:25:45 UTC (rev 
46813)
@@ -1,339 +0,0 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                           Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such

@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to