bilateral contact response for dynamic particles and rigid bodies, test update
This commit is contained in:
		| @@ -40,21 +40,48 @@ public: | ||||
| 		b3ClothDef def; | ||||
| 		def.mesh = &m_rectangleClothMesh; | ||||
| 		def.density = 0.2f; | ||||
| 		def.structural = 10000.0f; | ||||
| 		def.structural = 100000.0f; | ||||
| 		def.damping = 0.0f; | ||||
|  | ||||
| 		m_cloth = m_world.CreateCloth(def); | ||||
|  | ||||
| 		b3AABB3 aabb; | ||||
| 		aabb.m_lower.Set(-5.0f, -1.0f, -6.0f); | ||||
| 		aabb.m_upper.Set(5.0f, 1.0f, -4.0f); | ||||
| 		b3AABB3 aabb1; | ||||
| 		aabb1.m_lower.Set(-5.0f, -1.0f, -6.0f); | ||||
| 		aabb1.m_upper.Set(5.0f, 1.0f, -4.0f); | ||||
|  | ||||
| 		b3AABB3 aabb2; | ||||
| 		aabb2.m_lower.Set(-5.0f, -1.0f, 4.0f); | ||||
| 		aabb2.m_upper.Set(5.0f, 1.0f, 6.0f); | ||||
|  | ||||
| 		for (b3Particle* p = m_cloth->GetParticleList().m_head; p; p = p->GetNext()) | ||||
| 		{ | ||||
| 			if (aabb.Contains(p->GetPosition())) | ||||
| 			if (aabb1.Contains(p->GetPosition())) | ||||
| 			{ | ||||
| 				p->SetType(e_staticParticle); | ||||
| 			} | ||||
|  | ||||
| 			if (aabb2.Contains(p->GetPosition())) | ||||
| 			{ | ||||
| 				p->SetType(e_staticParticle); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		{ | ||||
| 			b3BodyDef bd; | ||||
| 			bd.type = e_dynamicBody; | ||||
| 			bd.position.Set(0.0f, 5.0f, 0.0f); | ||||
|  | ||||
| 			b3Body* b = m_world.CreateBody(bd); | ||||
|  | ||||
| 			b3SphereShape sphere; | ||||
| 			sphere.m_center.SetZero(); | ||||
| 			sphere.m_radius = 2.0f; | ||||
|  | ||||
| 			b3ShapeDef sd; | ||||
| 			sd.shape = &sphere; | ||||
| 			sd.density = 1.0f; | ||||
|  | ||||
| 			b3Shape* s = b->CreateShape(sd); | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user