BulletSim: add debugging messages to know when assets for physical
objects have been fetched. Update TODO list with more work.user_profiles
parent
daef2b8d87
commit
61ff79587b
|
@ -855,7 +855,10 @@ public sealed class BSCharacter : BSPhysObject
|
||||||
_rotationalVelocity = entprop.RotationalVelocity;
|
_rotationalVelocity = entprop.RotationalVelocity;
|
||||||
|
|
||||||
// Do some sanity checking for the avatar. Make sure it's above ground and inbounds.
|
// Do some sanity checking for the avatar. Make sure it's above ground and inbounds.
|
||||||
PositionSanityCheck(true);
|
if (PositionSanityCheck(true))
|
||||||
|
{
|
||||||
|
entprop.Position = _position;
|
||||||
|
}
|
||||||
|
|
||||||
// remember the current and last set values
|
// remember the current and last set values
|
||||||
LastEntityProperties = CurrentEntityProperties;
|
LastEntityProperties = CurrentEntityProperties;
|
||||||
|
|
|
@ -108,8 +108,8 @@ public sealed class BSLinksetCompound : BSLinkset
|
||||||
// Schedule a refresh to happen after all the other taint processing.
|
// Schedule a refresh to happen after all the other taint processing.
|
||||||
private void ScheduleRebuild(BSPhysObject requestor)
|
private void ScheduleRebuild(BSPhysObject requestor)
|
||||||
{
|
{
|
||||||
DetailLog("{0},BSLinksetCompound.ScheduleRebuild,,rebuilding={1},hasChildren={2}",
|
DetailLog("{0},BSLinksetCompound.ScheduleRebuild,,rebuilding={1},hasChildren={2},actuallyScheduling={3}",
|
||||||
requestor.LocalID, Rebuilding, HasAnyChildren);
|
requestor.LocalID, Rebuilding, HasAnyChildren, (!Rebuilding && HasAnyChildren));
|
||||||
// When rebuilding, it is possible to set properties that would normally require a rebuild.
|
// When rebuilding, it is possible to set properties that would normally require a rebuild.
|
||||||
// If already rebuilding, don't request another rebuild.
|
// If already rebuilding, don't request another rebuild.
|
||||||
// If a linkset with just a root prim (simple non-linked prim) don't bother rebuilding.
|
// If a linkset with just a root prim (simple non-linked prim) don't bother rebuilding.
|
||||||
|
|
|
@ -513,6 +513,7 @@ public sealed class BSShapeCollection : IDisposable
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// return 'true' if the shape was changed
|
||||||
public bool CreateGeomMeshOrHull(BSPhysObject prim, ShapeDestructionCallback shapeCallback)
|
public bool CreateGeomMeshOrHull(BSPhysObject prim, ShapeDestructionCallback shapeCallback)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -872,8 +873,7 @@ public sealed class BSShapeCollection : IDisposable
|
||||||
{
|
{
|
||||||
prim.LastAssetBuildFailed = true;
|
prim.LastAssetBuildFailed = true;
|
||||||
BSPhysObject xprim = prim;
|
BSPhysObject xprim = prim;
|
||||||
DetailLog("{0},BSShapeCollection.VerifyMeshCreated,fetchAsset,lID={1},lastFailed={2}",
|
DetailLog("{0},BSShapeCollection.VerifyMeshCreated,fetchAsset,lastFailed={1}", prim.LocalID, prim.LastAssetBuildFailed);
|
||||||
LogHeader, prim.LocalID, prim.LastAssetBuildFailed);
|
|
||||||
Util.FireAndForget(delegate
|
Util.FireAndForget(delegate
|
||||||
{
|
{
|
||||||
RequestAssetDelegate assetProvider = PhysicsScene.RequestAssetMethod;
|
RequestAssetDelegate assetProvider = PhysicsScene.RequestAssetMethod;
|
||||||
|
@ -882,19 +882,34 @@ public sealed class BSShapeCollection : IDisposable
|
||||||
BSPhysObject yprim = xprim; // probably not necessary, but, just in case.
|
BSPhysObject yprim = xprim; // probably not necessary, but, just in case.
|
||||||
assetProvider(yprim.BaseShape.SculptTexture, delegate(AssetBase asset)
|
assetProvider(yprim.BaseShape.SculptTexture, delegate(AssetBase asset)
|
||||||
{
|
{
|
||||||
if (!yprim.BaseShape.SculptEntry)
|
bool assetFound = false; // DEBUG DEBUG
|
||||||
return;
|
string mismatchIDs = String.Empty; // DEBUG DEBUG
|
||||||
if (yprim.BaseShape.SculptTexture.ToString() != asset.ID)
|
if (yprim.BaseShape.SculptEntry)
|
||||||
return;
|
{
|
||||||
|
if (yprim.BaseShape.SculptTexture.ToString() == asset.ID)
|
||||||
|
{
|
||||||
yprim.BaseShape.SculptData = asset.Data;
|
yprim.BaseShape.SculptData = asset.Data;
|
||||||
// This will cause the prim to see that the filler shape is not the right
|
// This will cause the prim to see that the filler shape is not the right
|
||||||
// one and try again to build the object.
|
// one and try again to build the object.
|
||||||
// No race condition with the normal shape setting since the rebuild is at taint time.
|
// No race condition with the normal shape setting since the rebuild is at taint time.
|
||||||
yprim.ForceBodyShapeRebuild(false);
|
yprim.ForceBodyShapeRebuild(false /* inTaintTime */);
|
||||||
|
assetFound = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mismatchIDs = yprim.BaseShape.SculptTexture.ToString() + "/" + asset.ID;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DetailLog("{0},BSShapeCollection,fetchAssetCallback,found={1},isSculpt={2},ids={3}",
|
||||||
|
yprim.LocalID, assetFound, yprim.BaseShape.SculptEntry, mismatchIDs );
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
PhysicsScene.Logger.ErrorFormat("{0} Physical object requires asset but no asset provider. Name={1}",
|
||||||
|
LogHeader, PhysicsScene.Name);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -907,8 +922,7 @@ public sealed class BSShapeCollection : IDisposable
|
||||||
}
|
}
|
||||||
|
|
||||||
// While we figure out the real problem, stick in a simple box for the object.
|
// While we figure out the real problem, stick in a simple box for the object.
|
||||||
BulletShape fillinShape =
|
BulletShape fillinShape = BuildPhysicalNativeShape(prim, BSPhysicsShapeType.SHAPE_BOX, FixedShapeKey.KEY_BOX);
|
||||||
BuildPhysicalNativeShape(prim, BSPhysicsShapeType.SHAPE_BOX, FixedShapeKey.KEY_BOX);
|
|
||||||
|
|
||||||
return fillinShape;
|
return fillinShape;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,23 @@
|
||||||
CURRENT PRIORITIES
|
CURRENT PRIORITIES
|
||||||
=================================================
|
=================================================
|
||||||
|
Crazyness during 20130115 office hours was PositionAdjustUnderground for both char and prim
|
||||||
|
m1:logs/20130115.0934/physics-BulletSim-20130115083613.log
|
||||||
|
Creation of Neb's terrain made the terrain "disappear". Everything started to fall
|
||||||
|
and then get restored to be above terrain.
|
||||||
|
Create tests for different interface components
|
||||||
|
Have test objects/scripts measure themselves and turn color if correct/bad
|
||||||
|
Test functions in SL and calibrate correctness there
|
||||||
|
Create auto rezzer and tracker to run through the tests
|
||||||
|
Mantis 6040 script http://opensimulator.org/mantis/view.php?id=6040
|
||||||
|
Msg Kayaker on OSGrid when working
|
||||||
|
Teravus llMoveToTarget script debug
|
||||||
|
Mixing of hover, buoyancy/gravity, moveToTarget, into one force
|
||||||
|
Surf board debugging
|
||||||
|
Boats floating at proper level
|
||||||
Nebadon vehicles turning funny in arena
|
Nebadon vehicles turning funny in arena
|
||||||
limitMotorUp calibration (more down?)
|
limitMotorUp calibration (more down?)
|
||||||
|
llRotLookAt
|
||||||
|
llLookAt
|
||||||
Vehicle angular vertical attraction
|
Vehicle angular vertical attraction
|
||||||
Vehicle angular deflection
|
Vehicle angular deflection
|
||||||
Preferred orientation angular correction fix
|
Preferred orientation angular correction fix
|
||||||
|
@ -167,6 +183,7 @@ Enforce physical parameter min/max:
|
||||||
Restitution [0, 1]
|
Restitution [0, 1]
|
||||||
http://wiki.secondlife.com/wiki/Physics_Material_Settings_test
|
http://wiki.secondlife.com/wiki/Physics_Material_Settings_test
|
||||||
Avatar attachments have no mass? http://forums-archive.secondlife.com/54/f0/31796/1.html
|
Avatar attachments have no mass? http://forums-archive.secondlife.com/54/f0/31796/1.html
|
||||||
|
Keep avatar scaling correct. http://pennycow.blogspot.fr/2011/07/matter-of-scale.html
|
||||||
|
|
||||||
INTERNAL IMPROVEMENT/CLEANUP
|
INTERNAL IMPROVEMENT/CLEANUP
|
||||||
=================================================
|
=================================================
|
||||||
|
|
Loading…
Reference in New Issue