enable -noaudio option, so it actually works (and doesn't get overwritten by a game flag). audio initialization delays startup of game engine 2 seconds

add -nojoystick commandline option: it takes 5 seconds everytime to start the game engine, while there IS no joystick.

In other words: blender -noaudio -nojoystick improves workflow turnaround times for P - ESC from 7 seconds to 1 second!

Improved Bullet soft body advanced options, still work-in-progress. Make sure to create game Bullet soft bodies from scratch, it is not compatible with last weeks builds.
This commit is contained in:
Erwin Coumans
2008-09-28 03:07:13 +00:00
parent a765f54b1a
commit f8fb61f9fa
13 changed files with 457 additions and 111 deletions

View File

@@ -38,6 +38,20 @@ class btMotionState;
class RAS_MeshObject;
class btCollisionShape;
#define CCD_BSB_SHAPE_MATCHING 2
#define CCD_BSB_BENDING_CONSTRAINTS 8
#define CCD_BSB_AERO_VPOINT 16 /* aero model, Vertex normals are oriented toward velocity*/
#define CCD_BSB_AERO_VTWOSIDE 32 /* aero model, Vertex normals are flipped to match velocity */
/* BulletSoftBody.collisionflags */
#define CCD_BSB_COL_SDF_RS 2 /* SDF based rigid vs soft */
#define CCD_BSB_COL_CL_RS 4 /* Cluster based rigid vs soft */
#define CCD_BSB_COL_CL_SS 8 /* Cluster based soft vs soft */
#define CCD_BSB_COL_VF_SS 16 /* Vertex/Face based soft vs soft */
// Shape contructor
// It contains all the information needed to create a simple bullet shape at runtime
class CcdShapeConstructionInfo
@@ -162,9 +176,6 @@ struct CcdConstructionInfo
m_linearDamping(0.1f),
m_angularDamping(0.1f),
m_margin(0.06f),
m_linearStiffness(1.f),
m_angularStiffness(1.f),
m_volumePreservation(1.f),
m_gamesoftFlag(0),
m_collisionFlags(0),
m_bRigid(false),
@@ -189,10 +200,44 @@ struct CcdConstructionInfo
btScalar m_angularDamping;
btScalar m_margin;
btScalar m_linearStiffness;
btScalar m_angularStiffness;
btScalar m_volumePreservation;
int m_gamesoftFlag;
////////////////////
int m_gamesoftFlag;
float m_soft_linStiff; /* linear stiffness 0..1 */
float m_soft_angStiff; /* angular stiffness 0..1 */
float m_soft_volume; /* volume preservation 0..1 */
int m_soft_viterations; /* Velocities solver iterations */
int m_soft_piterations; /* Positions solver iterations */
int m_soft_diterations; /* Drift solver iterations */
int m_soft_citerations; /* Cluster solver iterations */
float m_soft_kSRHR_CL; /* Soft vs rigid hardness [0,1] (cluster only) */
float m_soft_kSKHR_CL; /* Soft vs kinetic hardness [0,1] (cluster only) */
float m_soft_kSSHR_CL; /* Soft vs soft hardness [0,1] (cluster only) */
float m_soft_kSR_SPLT_CL; /* Soft vs rigid impulse split [0,1] (cluster only) */
float m_soft_kSK_SPLT_CL; /* Soft vs rigid impulse split [0,1] (cluster only) */
float m_soft_kSS_SPLT_CL; /* Soft vs rigid impulse split [0,1] (cluster only) */
float m_soft_kVCF; /* Velocities correction factor (Baumgarte) */
float m_soft_kDP; /* Damping coefficient [0,1] */
float m_soft_kDG; /* Drag coefficient [0,+inf] */
float m_soft_kLF; /* Lift coefficient [0,+inf] */
float m_soft_kPR; /* Pressure coefficient [-inf,+inf] */
float m_soft_kVC; /* Volume conversation coefficient [0,+inf] */
float m_soft_kDF; /* Dynamic friction coefficient [0,1] */
float m_soft_kMT; /* Pose matching coefficient [0,1] */
float m_soft_kCHR; /* Rigid contacts hardness [0,1] */
float m_soft_kKHR; /* Kinetic contacts hardness [0,1] */
float m_soft_kSHR; /* Soft contacts hardness [0,1] */
float m_soft_kAHR; /* Anchors hardness [0,1] */
int m_soft_collisionflags; /* Vertex/Face or Signed Distance Field(SDF) or Clusters, Soft versus Soft or Rigid */
int m_soft_numclusteriterations; /* number of iterations to refine collision clusters*/
///////////////////
int m_collisionFlags;
bool m_bRigid;