mirror of
https://github.com/opensim/opensim.git
synced 2026-08-10 03:06:05 +08:00
Merge branch 'avination' into careminster
Conflicts: OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
This commit is contained in:
@@ -352,10 +352,11 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||
if (m_assetFailed)
|
||||
{
|
||||
d.GeomSetCategoryBits(prim_geom, 0);
|
||||
d.GeomSetCollideBits(prim_geom, BadMeshAssetCollideBits);
|
||||
d.GeomSetCollideBits(prim_geom, BadAssetColideBits());
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
d.GeomSetCategoryBits(prim_geom, (int)m_collisionCategories);
|
||||
d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags);
|
||||
}
|
||||
@@ -425,7 +426,7 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||
if (m_assetFailed)
|
||||
{
|
||||
d.GeomSetCategoryBits(prim_geom, 0);
|
||||
d.GeomSetCollideBits(prim_geom, BadMeshAssetCollideBits);
|
||||
d.GeomSetCollideBits(prim_geom, BadAssetColideBits());
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -858,6 +859,11 @@ namespace OpenSim.Region.Physics.OdePlugin
|
||||
|
||||
private static Dictionary<IMesh, IntPtr> m_MeshToTriMeshMap = new Dictionary<IMesh, IntPtr>();
|
||||
|
||||
public int BadAssetColideBits()
|
||||
{
|
||||
return (m_isphysical ? (int)CollisionCategories.Land : 0);
|
||||
}
|
||||
|
||||
private void setMesh(OdeScene parent_scene, IMesh mesh)
|
||||
{
|
||||
// m_log.DebugFormat("[ODE PRIM]: Setting mesh on {0} to {1}", Name, mesh);
|
||||
@@ -1139,7 +1145,7 @@ Console.WriteLine("ZProcessTaints for " + Name);
|
||||
if (prm.m_assetFailed)
|
||||
{
|
||||
d.GeomSetCategoryBits(prm.prim_geom, 0);
|
||||
d.GeomSetCollideBits(prm.prim_geom, prm.BadMeshAssetCollideBits);
|
||||
d.GeomSetCollideBits(prm.prim_geom, prm.BadAssetColideBits());
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1193,7 +1199,7 @@ Console.WriteLine("ZProcessTaints for " + Name);
|
||||
if (m_assetFailed)
|
||||
{
|
||||
d.GeomSetCategoryBits(prim_geom, 0);
|
||||
d.GeomSetCollideBits(prim_geom, BadMeshAssetCollideBits);
|
||||
d.GeomSetCollideBits(prim_geom, BadAssetColideBits());
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1395,7 +1401,7 @@ Console.WriteLine("ZProcessTaints for " + Name);
|
||||
if (m_assetFailed)
|
||||
{
|
||||
d.GeomSetCategoryBits(prim_geom, 0);
|
||||
d.GeomSetCollideBits(prim_geom, BadMeshAssetCollideBits);
|
||||
d.GeomSetCollideBits(prim_geom, BadAssetColideBits());
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2139,7 +2145,7 @@ Console.WriteLine(" JointCreateFixed");
|
||||
}
|
||||
|
||||
if (m_assetFailed)
|
||||
d.GeomSetCollideBits(prim_geom, BadMeshAssetCollideBits);
|
||||
d.GeomSetCollideBits(prim_geom, BadAssetColideBits());
|
||||
else
|
||||
|
||||
d.GeomSetCollideBits(prim_geom, (int)m_collisionFlags);
|
||||
@@ -3367,4 +3373,4 @@ Console.WriteLine(" JointCreateFixed");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user