BulletSim: add debugging looking for doorway sculpty problems
							parent
							
								
									ad438ee59f
								
							
						
					
					
						commit
						13233da66c
					
				|  | @ -622,7 +622,6 @@ public sealed class BSShapeCollection : IDisposable | |||
|     private BulletShape CreatePhysicalMesh(string objName, System.UInt64 newMeshKey, PrimitiveBaseShape pbs, OMV.Vector3 size, float lod) | ||||
|     { | ||||
|         BulletShape newShape = new BulletShape(); | ||||
|         IMesh meshData = null; | ||||
| 
 | ||||
|         MeshDesc meshDesc; | ||||
|         if (Meshes.TryGetValue(newMeshKey, out meshDesc)) | ||||
|  | @ -632,7 +631,7 @@ public sealed class BSShapeCollection : IDisposable | |||
|         } | ||||
|         else | ||||
|         { | ||||
|             meshData = PhysicsScene.mesher.CreateMesh(objName, pbs, size, lod, true, false); | ||||
|             IMesh meshData = PhysicsScene.mesher.CreateMesh(objName, pbs, size, lod, true, false); | ||||
| 
 | ||||
|             if (meshData != null) | ||||
|             { | ||||
|  | @ -648,8 +647,31 @@ public sealed class BSShapeCollection : IDisposable | |||
|                     verticesAsFloats[vi++] = vv.Z; | ||||
|                 } | ||||
| 
 | ||||
|                 // m_log.DebugFormat("{0}: BSShapeCollection.CreatePhysicalMesh: calling CreateMesh. lid={1}, key={2}, indices={3}, vertices={4}", | ||||
|                 //                  LogHeader, prim.LocalID, newMeshKey, indices.Length, vertices.Count); | ||||
|                 // DetailLog("{0},BSShapeCollection.CreatePhysicalMesh,key={1},lod={2},size={3},indices={4},vertices={5}", | ||||
|                 //                     BSScene.DetailLogZero, newMeshKey.ToString("X"), lod, size, indices.Length, vertices.Count); | ||||
| 
 | ||||
|                 /*  | ||||
|                 // DEBUG DEBUG | ||||
|                 for (int ii = 0; ii < indices.Length; ii += 3) | ||||
|                 { | ||||
|                     DetailLog("{0,3}: {1,3},{2,3},{3,3}: <{4,10},{5,10},{6,10}>, <{7,10},{8,10},{9,10}>, <{10,10},{11,10},{12,10}>", | ||||
|                         ii / 3, | ||||
|                         indices[ii + 0], | ||||
|                         indices[ii + 1], | ||||
|                         indices[ii + 2], | ||||
|                         verticesAsFloats[indices[ii+0] + 0], | ||||
|                         verticesAsFloats[indices[ii+0] + 1], | ||||
|                         verticesAsFloats[indices[ii+0] + 2], | ||||
|                         verticesAsFloats[indices[ii+1] + 0], | ||||
|                         verticesAsFloats[indices[ii+1] + 1], | ||||
|                         verticesAsFloats[indices[ii+1] + 2], | ||||
|                         verticesAsFloats[indices[ii+2] + 0], | ||||
|                         verticesAsFloats[indices[ii+2] + 1], | ||||
|                         verticesAsFloats[indices[ii+2] + 2] | ||||
|                         ); | ||||
|                 } | ||||
|                 // END DEBUG DEBUG | ||||
|                  */ | ||||
| 
 | ||||
|                 newShape = PhysicsScene.PE.CreateMeshShape(PhysicsScene.World, | ||||
|                                     indices.GetLength(0), indices, vertices.Count, verticesAsFloats); | ||||
|  |  | |||
|  | @ -217,6 +217,10 @@ public static class BulletSimData | |||
| { | ||||
| 
 | ||||
| // Map of collisionTypes to flags for collision groups and masks. | ||||
| // An object's 'group' is the collison groups this object belongs to | ||||
| // An object's 'filter' is the groups another object has to belong to in order to collide with me | ||||
| // A collision happens if ((obj1.group & obj2.filter) != 0) || ((obj2.group & obj1.filter) != 0) | ||||
| // | ||||
| // As mentioned above, don't use the CollisionFilterGroups definitions directly in the code | ||||
| //     but, instead, use references to this dictionary. Finding and debugging | ||||
| //     collision flag problems will be made easier. | ||||
|  |  | |||
|  | @ -128,6 +128,9 @@ Physical and phantom will drop through the terrain | |||
| LINKSETS | ||||
| ====================================================== | ||||
| Child prims do not report collisions | ||||
| Allow children of a linkset to be phantom: | ||||
| 	http://opensim-dev.2196679.n2.nabble.com/Setting-a-single-child-prim-to-Phantom-tp7578513.html | ||||
| 	Add OS_STATUS_PHANTOM_PRIM to llSetLinkPrimitaveParamsFast. | ||||
| Editing a child of a linkset causes the child to go phantom | ||||
| 	Move a child prim once when it is physical and can never move it again without it going phantom | ||||
| Offset the center of the linkset to be the geometric center of all the prims | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Robert Adams
						Robert Adams