Commit Graph

48 Commits

Author SHA1 Message Date
83617d24d5 Rework carve integration into boolean modifier
Goal of this commit is to support NGons for boolean modifier
(currently mesh is being tessellated before performing boolean
operation) and also solve the limitation of loosing edge custom
data layers after boolean operation is performed.

Main idea is to make it so boolean modifier uses Carve library
directly via it's C-API, avoiding BSP intermediate level which
was doubling amount of memory needed for the operation and which
also used quite reasonable amount of overhead time.

Perhaps memory usage and CPU usage are the same after all the
features are implemented but we've got support now:

- ORIGINDEX for all the geometry
- Interpolation of edge custom data (seams, crease)
- NGons support

Triangulation rule is changed now as well, so now non-flat
polygons are not being merged back after Carve work. This is
so because it's not so trivial to support for NGons and
having different behavior for quads and NGons is even more
creepy.

Reviewers: lukastoenne, campbellbarton

Differential Revision: https://developer.blender.org/D274
2014-02-13 17:16:53 +06:00
225c5fee6b move BLO_sys_types.h -> BLI_sys_types.h (it had nothing todo with loading)
remove MEM_sys_types.h which was a duplicate.
2013-05-28 19:35:26 +00:00
e835863254 And another compile fix for Windows / scons for r55946. 2013-04-11 15:33:04 +00:00
66bf63d7af use inline functions for subsurf MVert,MEdge mesh array functions, also some include cleanup for scons/cmake. 2013-01-24 11:28:26 +00:00
936b82802a add bullet define & include for scons makesrna, also move meshcache utils into own file. 2013-01-24 02:14:39 +00:00
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
3ce334e188 Merge GSoC project from branch: Laplacian Smooth (Operator & Modifier)
by Alexander Pinzon Fernandez (apinzonf)

Supported by Google Summer of Code 2012

Project Documentation:
http://wiki.blender.org/index.php/User:Apinzonf

Manual Page:
http://wiki.blender.org/index.php/User:Apinzonf/Doc:2.6/Manual/Modifiers/Deform/Laplacian_Smooth
2012-10-24 10:39:11 +00:00
226a5ee834 remove LOD_Decimator (c++ decimator), now replaced by bmesh decimator. also remove CTR c++ classes that are no longer used. 2012-10-22 02:39:26 +00:00
788b47b788 Fix for yesterday i18n own commit (r44924): we now need to define WITH_INTERNATIONAL everywhere TIP_/IFACE_ macros are used (else, we get non-international, dummy NOP macros instead!).
Also fixed in main CMakeList file, when no addon dir found, we want to disable WITH_PYTHON (I guess, certainly not WITH_INTERNATIONAL ;) ).
2012-03-17 12:07:58 +00:00
46f2233a93 svn merge ^/trunk/blender -r43085:43092 2012-01-03 07:33:11 +00:00
434c1e6df8 Remesh Modifier:
* Fix for Campbell's "option to build without remesh modifier for cmake and scons" commit, this broke scons!
2012-01-03 04:03:41 +00:00
78a4e24614 svn merge ^/trunk/blender -r43009:43033 2011-12-31 12:03:36 +00:00
ba8d1b940f option to build without remesh modifier for cmake and scons 2011-12-31 03:34:44 +00:00
289c8b5758 Add remesh modifier (dual contouring).
This patch adds a new remeshing modifier. The algorithm is based on
the paper "Dual Contouring of Hermite Data", and the implementation
was contributed to Blender by Dr. Tao Ju.

The contributed code is in intern/dualcon, and was modified to compile
under gcc and work on 64-bit systems. Files not needed for Blender
were removed and a small C wrapper was added in order to interface it
with Blender. The rest of the patch is just standard modifier stuff.

Reviewed by Sergey, code review link:
http://codereview.appspot.com/5491053/

The remesh icon was contributed by Zafio:
http://blenderartists.org/forum/showthread.php?240751-Request-for-modifier-icon/page2.
Thanks to everyone in that thread for the icon proposals and
discussion.

Documentation and examples on the Blender wiki:
http://wiki.blender.org/index.php/User:Nicholasbishop/RemeshModifier

In case the history is needed for anything, check the remesh-modifier
branch of this git repository:
https://gitorious.org/~nicholasbishop/blenderprojects/nicholasbishop-blender
2011-12-30 21:11:40 +00:00
e6e265b2b5 svn merge -r41779:41847 ^/trunk/blender 2011-11-15 02:58:06 +00:00
Lukas Toenne
11c83d8432 Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi

This adds a new Modifier "Ocean" to simulate large-scale wave motion.
Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3]

The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled.

[1]
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean

[2]
http://www.savetheoceansim.com

[3]
http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
2011-11-13 12:17:27 +00:00
bd86ba2c88 svn merge -r41335:41371 2011-10-30 01:27:49 +00:00
f837b46a2b Modifier compilation tweaks (Blender conference commit)
* Fluid compilation: Inverse the compile flag from DISABLE_ELBEEM to WITH_MOD_FLUID for consistency. (scons/cmake)
* Use WITH_BF_FLUID in your user config (scons) 

* Add support for scons to disable build with Decimate and Boolean modifier. 
(WITH_BF_DECIMATE and WITH_BF_BOOLEAN)
2011-10-29 23:56:07 +00:00
161c3861bc svn merge ^/trunk/blender -r40395:40405 2011-09-23 10:58:20 +00:00
0169079bd1 Get rid of c++ in blenkernel and modifiers
Also use guarded allocations for navmesh stuff.
2011-09-20 16:24:50 +00:00
ca662d0fd6 svn merge -r40124:40140 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-12 00:38:57 +00:00
b988a2abf8 Recast: fix bad level calls, Recast compiled out if BGE not enabled. SCons updated but not tested. 2011-09-11 14:13:04 +00:00
75b3936128 svn merge -r40075:40104 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-10 23:49:39 +00:00
dbd6658d73 svn merge -r 37306:39975 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-07 15:34:04 +00:00
e74e245030 svn merge -r39890:39951 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-06 03:16:12 +00:00
Lukas Toenne
8e0fe8bff7 Merged the particles-2010 branch with node improvements into trunk.
This branch adds mostly organizational improvements to the node system by renaming the node folders and files. A couple of internal features have been added too.
Detailed information can be found on the wiki page:

http://wiki.blender.org/index.php/User:Phonybone/Particles2010
2011-09-05 21:01:50 +00:00
Nick Samarin
a918040902 synched with trunk at revision 36569 2011-05-16 20:30:59 +00:00
1e90add66c more syncing with trunk. 2011-05-11 09:31:00 +00:00
18494f8d33 scons fix 2011-03-17 23:39:26 +00:00
bbbbea6024 scons fix 2011-03-17 23:30:29 +00:00
f01261d040 merge with/from trunk at r35190 2011-02-27 06:19:40 +00:00
Nathan Letwory
322ff7dfe4 I swear, it was just an innocence change in guardedalloc!
The butterfly wing flap, causing a nice storm in the rest of blender.

Now all dependencies should point ok again. CMakers, do double-test.
2011-02-21 12:35:04 +00:00
Nick Samarin
c5f6a01dd5 synched with trunk at revision 34793 2011-02-16 17:07:18 +00:00
Nathan Letwory
d4ebace149 Tweak priority so link error on Linux is solved. Reported by Hypercrush on IRC. 2011-02-14 21:00:49 +00:00
Nathan Letwory
a8febab31b Workaround for blenderplayer not linking on linux with scons.
Maybe as a next big, uncool project would be: solve bad level calls.
2010-12-21 00:21:42 +00:00
05b297c52f CMake options to disable Decimate and Boolean Modifiers: WITH_MOD_BOOLEAN, WITH_MOD_DECIMATE, renamed WITH_FLUID to WITH_MOD_FLUID 2010-10-23 15:40:13 +00:00
Nick Samarin
90ab716cd5 synched with trunk at revision 32129 2010-10-03 16:28:28 +00:00
4f570347d9 scons fix, should work now yaypython scons/scons.py 2010-09-26 06:03:46 +00:00
a0ab8ea3aa scons priority tweak 2010-09-25 02:47:28 +00:00
82432d0d99 merge from trunk at r31523 2010-09-07 05:47:34 +00:00
a52f51df27 Recast: add SCons build system. 2010-09-01 21:43:22 +00:00
Nathan Letwory
6c113b54b3 Finally change SConscript tabs to spaces. 2010-08-29 20:52:05 +00:00
4b40d73bfb rename most scons build targets to match cmake 2010-08-25 04:30:47 +00:00
d057f700fe updated another sconscript 2010-07-22 03:35:42 +00:00
3a158d2101 updated another sconscript 2010-07-22 03:30:45 +00:00
982ab78728 updated another sconscript 2010-07-22 03:23:44 +00:00
9a85013692 Merge various small changes from render branch:
* Division by zero fix for TNT SVD code.
* Sound fix, in case ffmpeg decode fails, don't use the samples.
* Fix for incorrect bounds of transformed objects in new raytracing code.
* Gave memory arena's a name used for allocations for easier memory
  usage debugging.
* Dupligroup no_draw option was using layers but not restrict view/render
  setting. (not a bugfix exactly but would do display list context switching
  while drawing for no reason).
* Fix objects instanced on hair particles not giving consistent results
  when the object is transformed.
* New math functions: madd_v4_v4fl, len_squared_v3v3, interp_v4_v4v4v4,
  mul_v4_m4v4, SH and form factor functions, box_minmax_bounds_m4.
* mul_m4_m4m4 and mul_m3_m3m3 now accept the same pointers for multiple
  arguments.
* endjob callback for WM jobs system.
* Geometry node uv/color layer now has search list/autocomplete.
* Various small buildsystem tweaks, not strictly needed yet in trunk.
2010-04-15 10:28:32 +00:00
3fdaf5cecc [#14437] Modifier Stack Refactor
patch by Ben Batt (artificer)

Updated patch for 6 or so modifiers added since the patch was written.

- tested with CMake and SCons
- fixed one error were flags were being added to the fluids type.
- remove BKE_simple_deform.h, simple_deform.c, move functions into MOD_simpledeform.c since there were problems with circular deps.
- moved some fluid and boolean functions used by modifiers too.
2010-04-11 22:12:30 +00:00