Commit Graph

4909 Commits

Author SHA1 Message Date
Joseph Gilbert
beece21d1f project file update
*Added the boolop project
2005-11-03 20:07:55 +00:00
Ken Hughes
881f3419c6 -- avoid some divide-by-zero errors/assertions in boolean modifiers which
caused "Trace/BPT trap" errors (don't normalize zero-length vectors)
2005-11-01 19:42:55 +00:00
Brecht Van Lommel
9cce3710ae Support for adding elements in random positions in an opennl matrix.
Also some code formatting.
2005-10-30 18:38:35 +00:00
Johnny Matthews
e6f5f9bf85 fixing case issue for blender_BOP.lib to blender_bop.lib 2005-10-29 13:47:41 +00:00
Johnny Matthews
1d366b3fe9 Scons files for Boolop
also a fix in BOP_Material so that MSVC won't complain about template issues
2005-10-29 13:26:31 +00:00
Alexander Ewering
767bae35f2 (Hopefully) last part of Booleans commit.
Please update, compile (make) and test.
2005-10-28 20:18:56 +00:00
Alexander Ewering
d243bfb61e New files from new booleans 2005-10-28 20:17:27 +00:00
Alexander Ewering
d3dd5c5b7a Somehow, most files are missing from this commit, and I have no idea why,
so there will be more files following.

Anyway: NEW BOOLEANS from Google Summer of Code (Courtesy of Marc Freixas)

Known problems:

 - Random freezes while using them as a modifier. This may not be directly
   related to modifiers though - it's maybe just the huge number of
   operations that leads to a higher probability of triggering a bug

 - Static booleans (the first 3 entries in the WKEY menu) are borked
   anyway, this is not due to this commit.

 - Errors when exiting Blender (dupli_alloc stuff), is not related to this
   commit, either.

Please test if everything works, and check the other build systems, I only
know that make works.

Also, compare the results of, say, cube-cylinder, in old and new booleans
:)
2005-10-28 19:54:16 +00:00
Nils Thuerey
d348027499 - hopefully fixed osx compilation by forcing compilation
with a single file again (intern/elbeem/intern/solver_main.cpp
	includes intern/elbeem/intern/solver_init.cpp and
	intern/elbeem/intern/solver_util.cpp when __APPLE_CC__ is defined)
- minor cleanup of inlined functions
2005-10-26 12:07:51 +00:00
Jens Ole Wund
dd38751a84 updated elbeem project for new / removed files 2005-10-25 18:18:43 +00:00
Nils Thuerey
a7e9a9d9c0 Only restructured code:
- added Hos fixes
- split up solver into 3 cpp files (as suggested by jonathan)
- de-inlined function that caused gcc33 to use >1GB of memory
2005-10-25 08:07:52 +00:00
Jean-Luc Peurière
acf2fda50e fix for Game engine bug #1961 furnished by Josh Nimoy.
Thanks.

Although the fix is not perfect (lacks screen requisition safeguards),
it does indeed allow to run game engine fullscreen
2005-10-20 18:05:06 +00:00
Kent Mein
85939c5839 looks like the warning fix caused problems so reverting it.
Kent
2005-10-11 19:21:31 +00:00
Kent Mein
c6524703d3 A couple of small fixes to get things working on solaris.
added #include <ieeefp.h>  similar to where its included in
other files.  (made an ifdef that matches other includes of the same
file)

solaris does a lot of type overloading so there is no expf  its just exp
so I added a #define expf exp wrapped in an ifndef

Finally, I fixed a warning in cfglexer.cpp about multiply defined
yy_wrap functions.

Kent
2005-10-11 18:07:37 +00:00
Jens Ole Wund
ad915277a0 msvc6 project file suite complete again 2005-10-10 17:27:17 +00:00
Joseph Gilbert
ee77c42f01 Projectfile update
* added new file to elbeem project
2005-10-10 15:34:56 +00:00
Nils Thuerey
7095d8a11f - minor solver fix for msvc compilation
- added pop up menues for fluid sim bake with no
  fluid objects or without valid output dir settings
- fixed 3d view redraw for fluidsim buttons
2005-10-10 11:31:06 +00:00
Nils Thuerey
d3d8441f67 - fixed fluidsim inflow speed init
- fixed intersecting fluid objects init
- added MSVC6 fixes from bjornmose (thanks!)
2005-10-10 08:52:42 +00:00
Nils Thuerey
328eeaf10b - added option to switch off compiling elbeem to scons files (set USE_FLUIDSIM=true)
in this case only the new blenderdummy.cpp and utilities.cpp have to be compiled
- restructured gui:
   * domain options split up into 2 sections
	 * added compressibility and refinement settings
	 * added inflow/outflow object types
- increased progress bar by 1
2005-10-10 06:59:47 +00:00
Jens Ole Wund
42bd456060 added elbeem though it won't compile without modifications
thus i did not add to dependencies but still a nice reminder to build it at times
2005-10-04 20:39:31 +00:00
Jens Ole Wund
f342f06920 again an intermediate solution for the msvc6 builders
added msvc6 project file for builing elbeem

NOTE: it won't build unless some spots in elbeem code are cangend

see -->
fixing elbeem to build on msvc6
http://projects.blender.org/pipermail/bf-committers/2005-September/011952.html


[quote]
And no.. i won't set up a msvc6 project for building blender_elbeem.lib
until things calmed down a bit.
[/quote]

well i did for me to continue work, why not share.

if you do *rebuild all* in this project (release mode) on success will do a
post build step which will copy blender_elbeem.lib to the lib/windows..blah folder
such that the msvc6 (blender) project will find it for happy linking.

it even #defines MSVC6 so all the above changes could be nicly hidden behind that
( my local tree does so ) but it is on Nils to decide if he wants his code to be *pested*.
2005-10-02 20:57:53 +00:00
Joseph Gilbert
f6c7cf7c13 projectfile update to elbeem
* fixed lib paths
* removed files
* fix preprocessor define
2005-09-29 02:22:56 +00:00
Nils Thuerey
227c88c293 - corrected MSVC6 fix in ntl_vector3dim.h (caused problems with SDL includes)
- removed print from SConscript
2005-09-28 17:52:06 +00:00
Nils Thuerey
d7b441473a - removed some unecessary files & code
- debug output now controlled globally by elbeem debug level
  (BLENDER_ELBEEMDEBUG environment var), also for fluidsimBake
	and read/writeBobj
- debug output is written to file for WIN32
- added "for" and "vector" etc. defines for MSVC6
  (I couldnt get hold of the compiler itself, so not tested yet)
2005-09-28 16:20:57 +00:00
Joseph Gilbert
b6ecdb8c35 Project file update for elbeem
Warning clean up of python project
2005-09-26 14:46:14 +00:00
Nils Thuerey
4fb0cccc68 - merged latest version of fluid solver
(fixed shadowed variables warnings, removed cfgparser.hpp,
	added cfgparser.h, removed debugging output)
- added support for env. var BLENDER_ELBEEMDEBUG to enable
  debugging output again
- fixed missing triangle display (marching cubes produced v3=0 triangles)
- fixed geometry init bug (nearest intersection check
  for intersecting objects was messed up)
- changed position of derived mesh creation in DerivedMesh.c
  (for some reason the useDeform code is necessary, without it or
	 with useDeform=0 nothing is displayed)
- 3dviews now update every 2 seconds to show simulation progress
- note: mesh_strip_loose_faces(me); in ./source/blender/blenkernel/intern/mesh.c:937
  not necessary anymore?
2005-09-23 14:42:14 +00:00
Joseph Gilbert
38922c74c0 update to .NET project files
*Added elbeem project to /intern
(please rebuild intern)
2005-09-22 19:45:00 +00:00
Joseph Gilbert
f29f335ad5 Before including <GL/gl.h> on windows you have to include <windows.h> 2005-09-22 18:03:58 +00:00
Nils Thuerey
e1fe7c88ec - fixes elbeem SConscript file for python2.3
- added temporary fix for 128+ resolutions
2005-09-21 13:30:39 +00:00
Chris Burt
47d5cc2757 Added zlib include for solaris and windows to fix broken compilation of
new fluids sim. Thanks lukep and theeth!
2005-09-18 17:06:21 +00:00
Jean-Luc Peurière
e2d577de9e initial commit of the fluid simulator.
Ton reviewed and gave his blessing.
Zr, can you have a look ?

see :
http://projects.blender.org/tracker/?func=detail&atid=127&aid=3039&group_id=9

for initial comments.

N_T : the solver itself (elbeem) needs some works to get rid of
warnings
2005-09-18 13:27:12 +00:00
Chris Want
0a2b71a3a4 Getting blender to compile for IRIX, in particular:
IK: needed to change abs() to TNT::abs() (thanks brecht!)

Freetype: FT_ENCODING_UNICODE typecast to FT_CharMap (thanks intrr!)

header_image: missing include for liballoc stuff

Ketsji: needed to declare m_hitObject as public in KX_MouseFocusSensor.h.
This is probably the wrong thing to do, but KX_MouseFocusSensor.cpp
compilation fails on line 279 otherwise.
2005-09-14 21:50:37 +00:00
Brecht Van Lommel
0535d26e6d - Changed xz limit drawing to use same formulas as the limiting in the IK
module -- the previous method could be off pretty far.
- Added drawing of transparent surface for it, instead of just the border.
- Added "stretch IK", allowing bones not only to rotate, but also scale.
  The "Stretch" value below the DoF buttons is used to enabled this.

- Some code tweaking: slightly simplified computation of transform for IK,
  renamed chain to tree, removed unused pchan->ik_mat, ..

Internal IK module work:
- Do damping per DoF also based on stiffness, hopefully makes it converge
  faster with very stiff joints.
- Instead of having two joints types (translational and rotational), now
  all 6 DoF's can be enabled for one joint.
- Added limits for translational joints.
2005-08-31 22:09:44 +00:00
Joseph Gilbert
2ead4feddf Update to .NET project files
- added edgehash stuff
- added new IK solver stuff (rebuild /intern)
2005-08-30 22:11:31 +00:00
Brecht Van Lommel
c921ee25cc Bugfix; rotation limits for < 3 DOF bones were using wrong reference
rotation, causing incorrect limits if there was already a pose transform.
2005-08-29 12:06:23 +00:00
Simon Clitherow
30be6f0e67 updated MSVC 6 Project file for IKSolver. 2005-08-29 10:19:59 +00:00
Brecht Van Lommel
275c214195 IK rotation limits fixes:
- Z-axis rotation limits were not working, was using wrong flag.
- Don't allow min limit to go over max, or vice versa.
- Fix for jacobian getting overwritten with IK clamping.
2005-08-28 13:06:41 +00:00
Brecht Van Lommel
fa443a5f01 Bugfix; the IK solver would crash if there were 0 DOF's in the chain. 2005-08-27 23:04:37 +00:00
Brecht Van Lommel
8f5bff6051 Make IK DOF stiffness work in range 0.0-1.0, for consistency. 2005-08-27 14:27:05 +00:00
Brecht Van Lommel
ae9dcb3dc2 Update SConscript.
Fix some warnings.
Merge with latest soc code.

What changed in IK lib:

Fully restructured, with components now as follows:
  - IK_Solver: C <=> C++ interface
  - IK_QSegment: base class for bone/segment with 0
    to 3 DOF
  - IK_QTask: base class for a task (currently there's
    a position and a rotation task)
  - IK_QJacobian: the Jacobian matrix, with SVD
    decomposition, damping, etc
  - IK_QJacobianSolver: the iterative solver

The exponential map parametrization is no longer used,
instead we have now:
  - 3DOF and 2DOF XZ segments: directly update matrix
    with Rodrigues' formula
  - Other: Euler angles (no worries about singularities
    here)

Computation of the Jacobian inverse has also changed:
  - The SVD algorithm is now based on LAPACK code,
    instead of NR, to avoid some problems with rounding
    errors.
  - When the problem is underconstrained (as is the case
    most of the time), the SVD is computed for the transpose
    of the Jacobian (faster).
  - A new damping algorithm called the Selectively Damped
    Least Squares is used, result in faster and more
    stable convergence.
  - Stiffness is implemented as if a weighted psuedo-inverse
    was used.

Tree structure support.

Rotation limits:
  - 3DOF and 2DOF XZ segments limits are based on a swing
    (direct axis-angle over XZ) and twist/roll (rotation
    over Y) decomposition. The swing region is an ellipse
    on a sphere.
  - Rotation limits are implemented using an inner clamping
    loop: as long as there is a violation, a violating DOF
    is clamped and removed from the Jacobian, and the solution
    is recomputed.

Convergence checking is based now on the max norm of angle
change, or the maximum number of iterations.
2005-08-27 13:45:19 +00:00
Brecht Van Lommel
fa0bbaf380 Another file missed in IK commit. 2005-08-27 13:27:49 +00:00
Ton Roosendaal
8d36b517f9 Forgot to add new files... 2005-08-27 13:10:41 +00:00
Ton Roosendaal
a7f2ebf06c Second commit for Brecht's IK work.
(Moto needs 'make install' before you can do IK lib btw)
2005-08-27 12:45:29 +00:00
Ton Roosendaal
665a6b2d95 First commit of Brecht's new IK work. This only does the IK module.
Don't start compiling yet!
2005-08-27 12:44:41 +00:00
Ton Roosendaal
4d58808512 MEM_alloc allocated in units of 8 for 32 bits systems, and units of 4 for
64 bits systems... weird bug. :)
It now only does a unit-of-4 check, for all systems. This will work fine,
since the malloc code will return aligned anyway, and the guarded alloc
system only stores ints in the headers. Also, the sizeof() call will
correctly do padding, so there's no risk of allocating too small blocks.
2005-08-21 10:05:50 +00:00
Jean-Luc Peurière
b12f801681 updates to the OS X build system :
- XCode project
- Scons :
    scons stopped working for Os X in the last month (dont know when) :

     * the '.' and '..' keywords in CCPPATH
          are not recognized anymore for sconscripts compiling files at
          a sub level
     * when doing a scons clean, the 3 subdirs in build dir are removed
      and scons then fail to recreate them (exten, intern, source)

this commit solve the first problem as a temp workaround
for the latter simply recreate the dirs manually

I will investigate that further when on vacations,  which i should already
 be.
 ;(

all 3 build systems are now working on Os X
2005-08-04 16:05:28 +00:00
Joseph Gilbert
292c03ab8e _.NET projectfiles update_
* converted files to .NET 2002
* removed unneeded projectfiles from bullet
* PHY_Bullet outputs to correct directories
* Bullet linked to activex and blenderplayer
* misc updates
2005-08-02 13:44:49 +00:00
Martin Poirier
6116b36f4e BMFont didn't define correct character size for "Screen 15" font for TAB and NBSP.
Found out through ideasman's interactive console script.
2005-08-01 06:29:06 +00:00
Erwin Coumans
49499c49be updated vc7 projectfiles so they work with bullet 2005-07-31 14:40:51 +00:00
Erwin Coumans
411123b250 - added debug line drawing in gameengine (handy for debugging physics problems)
- added #ifdef for a visual studio 8 crashing problems
- added scaling and tolerances to triangle meshes
2005-07-27 09:30:53 +00:00