remove some dead code
parent
e9638ee9e9
commit
bca5fd98dc
|
@ -2121,12 +2121,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
if (localGlobalTF)
|
if (localGlobalTF)
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
Quaternion grot = GetWorldRotation();
|
|
||||||
Quaternion AXgrot = grot;
|
|
||||||
Vector3 AXimpulsei = impulsei;
|
|
||||||
Vector3 newimpulse = AXimpulsei * AXgrot;
|
|
||||||
*/
|
|
||||||
torque *= GetWorldRotation();
|
torque *= GetWorldRotation();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2265,16 +2259,8 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
|
|
||||||
if (userExposed)
|
if (userExposed)
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
if (dupe.m_shape.SculptEntry && dupe.m_shape.SculptTexture != UUID.Zero)
|
|
||||||
{
|
|
||||||
ParentGroup.Scene.AssetService.Get(
|
|
||||||
dupe.m_shape.SculptTexture.ToString(), dupe, dupe.AssetReceived);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
bool UsePhysics = ((dupe.Flags & PrimFlags.Physics) != 0);
|
bool UsePhysics = ((dupe.Flags & PrimFlags.Physics) != 0);
|
||||||
dupe.DoPhysicsPropertyUpdate(UsePhysics, true);
|
dupe.DoPhysicsPropertyUpdate(UsePhysics, true);
|
||||||
// dupe.UpdatePhysicsSubscribedEvents(); // not sure...
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dupe.PhysActor != null)
|
if (dupe.PhysActor != null)
|
||||||
|
@ -2287,23 +2273,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
return dupe;
|
return dupe;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Called back by asynchronous asset fetch.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id">ID of asset received</param>
|
|
||||||
/// <param name="sender">Register</param>
|
|
||||||
/// <param name="asset"></param>
|
|
||||||
/*
|
|
||||||
protected void AssetReceived(string id, Object sender, AssetBase asset)
|
|
||||||
{
|
|
||||||
if (asset != null)
|
|
||||||
SculptTextureCallback(asset);
|
|
||||||
// else
|
|
||||||
// m_log.WarnFormat(
|
|
||||||
// "[SCENE OBJECT PART]: Part {0} {1} requested mesh/sculpt data for asset id {2} from asset service but received no data",
|
|
||||||
// Name, UUID, id);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Do a physics property update for a NINJA joint.
|
/// Do a physics property update for a NINJA joint.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -3285,39 +3254,6 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
ParentGroup.ScriptSetPhysicsStatus(UsePhysics);
|
ParentGroup.ScriptSetPhysicsStatus(UsePhysics);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Set sculpt and mesh data, and tell the physics engine to process the change.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="texture">The mesh itself.</param>
|
|
||||||
/*
|
|
||||||
public void SculptTextureCallback(AssetBase texture)
|
|
||||||
{
|
|
||||||
if (m_shape.SculptEntry)
|
|
||||||
{
|
|
||||||
// commented out for sculpt map caching test - null could mean a cached sculpt map has been found
|
|
||||||
//if (texture != null)
|
|
||||||
{
|
|
||||||
if (texture != null)
|
|
||||||
{
|
|
||||||
// m_log.DebugFormat(
|
|
||||||
// "[SCENE OBJECT PART]: Setting sculpt data for {0} on SculptTextureCallback()", Name);
|
|
||||||
|
|
||||||
m_shape.SculptData = texture.Data;
|
|
||||||
}
|
|
||||||
|
|
||||||
PhysicsActor pa = PhysActor;
|
|
||||||
|
|
||||||
if (pa != null)
|
|
||||||
{
|
|
||||||
// Update the physics actor with the new loaded sculpt data and set the taint signal.
|
|
||||||
pa.Shape = m_shape;
|
|
||||||
|
|
||||||
ParentGroup.Scene.PhysicsScene.AddPhysicsActorTaint(pa);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Send a full update to the client for the given part
|
/// Send a full update to the client for the given part
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -4058,103 +3994,6 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public EntityIntersection TestIntersection(Ray iray, Quaternion parentrot)
|
|
||||||
{
|
|
||||||
// In this case we're using a sphere with a radius of the largest dimension of the prim
|
|
||||||
// TODO: Change to take shape into account
|
|
||||||
|
|
||||||
EntityIntersection result = new EntityIntersection();
|
|
||||||
Vector3 vAbsolutePosition = AbsolutePosition;
|
|
||||||
Vector3 vScale = Scale;
|
|
||||||
Vector3 rOrigin = iray.Origin;
|
|
||||||
Vector3 rDirection = iray.Direction;
|
|
||||||
|
|
||||||
//rDirection = rDirection.Normalize();
|
|
||||||
// Buidling the first part of the Quadratic equation
|
|
||||||
Vector3 r2ndDirection = rDirection*rDirection;
|
|
||||||
float itestPart1 = r2ndDirection.X + r2ndDirection.Y + r2ndDirection.Z;
|
|
||||||
|
|
||||||
// Buidling the second part of the Quadratic equation
|
|
||||||
Vector3 tmVal2 = rOrigin - vAbsolutePosition;
|
|
||||||
Vector3 r2Direction = rDirection*2.0f;
|
|
||||||
Vector3 tmVal3 = r2Direction*tmVal2;
|
|
||||||
|
|
||||||
float itestPart2 = tmVal3.X + tmVal3.Y + tmVal3.Z;
|
|
||||||
|
|
||||||
// Buidling the third part of the Quadratic equation
|
|
||||||
Vector3 tmVal4 = rOrigin*rOrigin;
|
|
||||||
Vector3 tmVal5 = vAbsolutePosition*vAbsolutePosition;
|
|
||||||
|
|
||||||
Vector3 tmVal6 = vAbsolutePosition*rOrigin;
|
|
||||||
|
|
||||||
// Set Radius to the largest dimension of the prim
|
|
||||||
float radius = 0f;
|
|
||||||
if (vScale.X > radius)
|
|
||||||
radius = vScale.X;
|
|
||||||
if (vScale.Y > radius)
|
|
||||||
radius = vScale.Y;
|
|
||||||
if (vScale.Z > radius)
|
|
||||||
radius = vScale.Z;
|
|
||||||
|
|
||||||
// the second part of this is the default prim size
|
|
||||||
// once we factor in the aabb of the prim we're adding we can
|
|
||||||
// change this to;
|
|
||||||
// radius = (radius / 2) - 0.01f;
|
|
||||||
//
|
|
||||||
radius = (radius / 2) + (0.5f / 2) - 0.1f;
|
|
||||||
|
|
||||||
//radius = radius;
|
|
||||||
|
|
||||||
float itestPart3 = tmVal4.X + tmVal4.Y + tmVal4.Z + tmVal5.X + tmVal5.Y + tmVal5.Z -
|
|
||||||
(2.0f*(tmVal6.X + tmVal6.Y + tmVal6.Z + (radius*radius)));
|
|
||||||
|
|
||||||
// Yuk Quadradrics.. Solve first
|
|
||||||
float rootsqr = (itestPart2*itestPart2) - (4.0f*itestPart1*itestPart3);
|
|
||||||
if (rootsqr < 0.0f)
|
|
||||||
{
|
|
||||||
// No intersection
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
float root = ((-itestPart2) - (float) Math.Sqrt((double) rootsqr))/(itestPart1*2.0f);
|
|
||||||
|
|
||||||
if (root < 0.0f)
|
|
||||||
{
|
|
||||||
// perform second quadratic root solution
|
|
||||||
root = ((-itestPart2) + (float) Math.Sqrt((double) rootsqr))/(itestPart1*2.0f);
|
|
||||||
|
|
||||||
// is there any intersection?
|
|
||||||
if (root < 0.0f)
|
|
||||||
{
|
|
||||||
// nope, no intersection
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// We got an intersection. putting together an EntityIntersection object with the
|
|
||||||
// intersection information
|
|
||||||
Vector3 ipoint =
|
|
||||||
new Vector3(iray.Origin.X + (iray.Direction.X*root), iray.Origin.Y + (iray.Direction.Y*root),
|
|
||||||
iray.Origin.Z + (iray.Direction.Z*root));
|
|
||||||
|
|
||||||
result.HitTF = true;
|
|
||||||
result.ipoint = ipoint;
|
|
||||||
|
|
||||||
// Normal is calculated by the difference and then normalizing the result
|
|
||||||
Vector3 normalpart = ipoint - vAbsolutePosition;
|
|
||||||
result.normal = normalpart / normalpart.Length();
|
|
||||||
|
|
||||||
// It's funny how the Vector3 object has a Distance function, but the Axiom.Math object doesn't.
|
|
||||||
// I can write a function to do it.. but I like the fact that this one is Static.
|
|
||||||
|
|
||||||
Vector3 distanceConvert1 = new Vector3(iray.Origin.X, iray.Origin.Y, iray.Origin.Z);
|
|
||||||
Vector3 distanceConvert2 = new Vector3(ipoint.X, ipoint.Y, ipoint.Z);
|
|
||||||
float distance = (float) Util.GetDistanceTo(distanceConvert1, distanceConvert2);
|
|
||||||
|
|
||||||
result.distance = distance;
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
public EntityIntersection TestIntersectionOBB(Ray iray, Quaternion parentrot, bool frontFacesOnly, bool faceCenters)
|
public EntityIntersection TestIntersectionOBB(Ray iray, Quaternion parentrot, bool frontFacesOnly, bool faceCenters)
|
||||||
{
|
{
|
||||||
// In this case we're using a rectangular prism, which has 6 faces and therefore 6 planes
|
// In this case we're using a rectangular prism, which has 6 faces and therefore 6 planes
|
||||||
|
@ -4522,15 +4361,7 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
|
||||||
public void UpdateExtraParam(ushort type, bool inUse, byte[] data)
|
public void UpdateExtraParam(ushort type, bool inUse, byte[] data)
|
||||||
{
|
{
|
||||||
m_shape.ReadInUpdateExtraParam(type, inUse, data);
|
m_shape.ReadInUpdateExtraParam(type, inUse, data);
|
||||||
/*
|
|
||||||
if (type == 0x30)
|
|
||||||
{
|
|
||||||
if (m_shape.SculptEntry && m_shape.SculptTexture != UUID.Zero)
|
|
||||||
{
|
|
||||||
ParentGroup.Scene.AssetService.Get(m_shape.SculptTexture.ToString(), this, AssetReceived);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
if (ParentGroup != null)
|
if (ParentGroup != null)
|
||||||
{
|
{
|
||||||
ParentGroup.HasGroupChanged = true;
|
ParentGroup.HasGroupChanged = true;
|
||||||
|
@ -5088,42 +4919,6 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// If the part is a sculpt/mesh, retrieve the mesh data and reinsert it into the shape so that the physics
|
|
||||||
/// engine can use it.
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// When the physics engine has finished with it, the sculpt data is discarded to save memory.
|
|
||||||
/// </remarks>
|
|
||||||
/*
|
|
||||||
public void CheckSculptAndLoad()
|
|
||||||
{
|
|
||||||
// m_log.DebugFormat("Processing CheckSculptAndLoad for {0} {1}", Name, LocalId);
|
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (ParentGroup.IsDeleted)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if ((ParentGroup.RootPart.GetEffectiveObjectFlags() & (uint)PrimFlags.Phantom) != 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (Shape.SculptEntry && Shape.SculptTexture != UUID.Zero)
|
|
||||||
{
|
|
||||||
// check if a previously decoded sculpt map has been cached
|
|
||||||
// We don't read the file here - the meshmerizer will do that later.
|
|
||||||
// TODO: Could we simplify the meshmerizer code by reading and setting the data here?
|
|
||||||
if (File.Exists(System.IO.Path.Combine("j2kDecodeCache", "smap_" + Shape.SculptTexture.ToString())))
|
|
||||||
{
|
|
||||||
SculptTextureCallback(null);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ParentGroup.Scene.AssetService.Get(Shape.SculptTexture.ToString(), this, AssetReceived);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Update the texture entry for this part.
|
/// Update the texture entry for this part.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -5299,41 +5094,8 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
|
||||||
{
|
{
|
||||||
objectflagupdate |= (uint) PrimFlags.AllowInventoryDrop;
|
objectflagupdate |= (uint) PrimFlags.AllowInventoryDrop;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
PhysicsActor pa = PhysActor;
|
|
||||||
if (pa != null)
|
|
||||||
{
|
|
||||||
if (
|
|
||||||
// ((AggregateScriptEvents & scriptEvents.collision) != 0) ||
|
|
||||||
// ((AggregateScriptEvents & scriptEvents.collision_end) != 0) ||
|
|
||||||
// ((AggregateScriptEvents & scriptEvents.collision_start) != 0) ||
|
|
||||||
// ((AggregateScriptEvents & scriptEvents.land_collision_start) != 0) ||
|
|
||||||
// ((AggregateScriptEvents & scriptEvents.land_collision) != 0) ||
|
|
||||||
// ((AggregateScriptEvents & scriptEvents.land_collision_end) != 0) ||
|
|
||||||
((AggregateScriptEvents & PhysicsNeededSubsEvents) != 0) || ((ParentGroup.RootPart.AggregateScriptEvents & PhysicsNeededSubsEvents) != 0) || (CollisionSound != UUID.Zero)
|
|
||||||
)
|
|
||||||
{
|
|
||||||
// subscribe to physics updates.
|
|
||||||
pa.OnCollisionUpdate += PhysicsCollision;
|
|
||||||
pa.SubscribeEvents(1000);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
pa.UnSubscribeEvents();
|
|
||||||
pa.OnCollisionUpdate -= PhysicsCollision;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
UpdatePhysicsSubscribedEvents();
|
|
||||||
|
|
||||||
//if ((GetEffectiveObjectFlags() & (uint)PrimFlags.Scripted) != 0)
|
UpdatePhysicsSubscribedEvents();
|
||||||
//{
|
|
||||||
// ParentGroup.Scene.EventManager.OnScriptTimerEvent += handleTimerAccounting;
|
|
||||||
//}
|
|
||||||
//else
|
|
||||||
//{
|
|
||||||
// ParentGroup.Scene.EventManager.OnScriptTimerEvent -= handleTimerAccounting;
|
|
||||||
//}
|
|
||||||
|
|
||||||
LocalFlags = (PrimFlags)objectflagupdate;
|
LocalFlags = (PrimFlags)objectflagupdate;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue