From 134f86e8d5c414409631b25b8c6f0ee45fbd8631 Mon Sep 17 00:00:00 2001
From: David Walter Seikel
Date: Thu, 3 Nov 2016 21:44:39 +1000
Subject: Initial update to OpenSim 0.8.2.1 source code.
---
.../Physics/BasicPhysicsPlugin/AssemblyInfo.cs | 58 ----
.../BasicPhysicsPlugin/BasicPhysicsActor.cs | 311 --------------------
.../BasicPhysicsPlugin/BasicPhysicsPlugin.cs | 64 -----
.../Physics/BasicPhysicsPlugin/BasicPhysicsPrim.cs | 315 ---------------------
.../BasicPhysicsPlugin/BasicPhysicsScene.cs | 194 -------------
5 files changed, 942 deletions(-)
delete mode 100644 OpenSim/Region/Physics/BasicPhysicsPlugin/AssemblyInfo.cs
delete mode 100644 OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsActor.cs
delete mode 100644 OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
delete mode 100644 OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPrim.cs
delete mode 100644 OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsScene.cs
(limited to 'OpenSim/Region/Physics/BasicPhysicsPlugin')
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/AssemblyInfo.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/AssemblyInfo.cs
deleted file mode 100644
index fb9cb66..0000000
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/AssemblyInfo.cs
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the OpenSimulator Project nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-// Information about this assembly is defined by the following
-// attributes.
-//
-// change them to the information which is associated with the assembly
-// you compile.
-
-[assembly : AssemblyTitle("BasicPhysicsPlugin")]
-[assembly : AssemblyDescription("")]
-[assembly : AssemblyConfiguration("")]
-[assembly : AssemblyCompany("http://opensimulator.org")]
-[assembly : AssemblyProduct("BasicPhysicsPlugin")]
-[assembly : AssemblyCopyright("Copyright (c) OpenSimulator.org Developers")]
-[assembly : AssemblyTrademark("")]
-[assembly : AssemblyCulture("")]
-
-// This sets the default COM visibility of types in the assembly to invisible.
-// If you need to expose a type to COM, use [ComVisible(true)] on that type.
-
-[assembly : ComVisible(false)]
-
-// The assembly version has following format :
-//
-// Major.Minor.Build.Revision
-//
-// You can specify all values by your own or you can build default build and revision
-// numbers with the '*' character (the default):
-
-[assembly : AssemblyVersion("0.7.5.*")]
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsActor.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsActor.cs
deleted file mode 100644
index e43136a..0000000
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsActor.cs
+++ /dev/null
@@ -1,311 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the OpenSimulator Project nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-using System;
-using System.Collections.Generic;
-using Nini.Config;
-using OpenMetaverse;
-using OpenSim.Framework;
-using OpenSim.Region.Physics.Manager;
-
-namespace OpenSim.Region.Physics.BasicPhysicsPlugin
-{
- public class BasicActor : PhysicsActor
- {
- private Vector3 _size;
-
- public BasicActor(Vector3 size)
- {
- Size = size;
- }
-
- public override int PhysicsActorType
- {
- get { return (int) ActorTypes.Agent; }
- set { return; }
- }
-
- public override Vector3 RotationalVelocity { get; set; }
-
- public override bool SetAlwaysRun
- {
- get { return false; }
- set { return; }
- }
-
- public override uint LocalID
- {
- set { return; }
- }
-
- public override bool Grabbed
- {
- set { return; }
- }
-
- public override bool Selected
- {
- set { return; }
- }
-
- public override float Buoyancy
- {
- get { return 0f; }
- set { return; }
- }
-
- public override bool FloatOnWater
- {
- set { return; }
- }
-
- public override bool IsPhysical
- {
- get { return false; }
- set { return; }
- }
-
- public override bool ThrottleUpdates
- {
- get { return false; }
- set { return; }
- }
-
- public override bool Flying { get; set; }
-
- public override bool IsColliding { get; set; }
-
- public override bool CollidingGround
- {
- get { return false; }
- set { return; }
- }
-
- public override bool CollidingObj
- {
- get { return false; }
- set { return; }
- }
-
- public override bool Stopped
- {
- get { return false; }
- }
-
- public override Vector3 Position { get; set; }
-
- public override Vector3 Size
- {
- get { return _size; }
- set {
- _size = value;
- _size.Z = _size.Z / 2.0f;
- }
- }
-
- public override PrimitiveBaseShape Shape
- {
- set { return; }
- }
-
- public override float Mass
- {
- get { return 0f; }
- }
-
- public override Vector3 Force
- {
- get { return Vector3.Zero; }
- set { return; }
- }
-
- public override int VehicleType
- {
- get { return 0; }
- set { return; }
- }
-
- public override void VehicleFloatParam(int param, float value)
- {
-
- }
-
- public override void VehicleVectorParam(int param, Vector3 value)
- {
-
- }
-
- public override void VehicleRotationParam(int param, Quaternion rotation)
- {
-
- }
-
- public override void VehicleFlags(int param, bool remove)
- {
-
- }
-
- public override void SetVolumeDetect(int param)
- {
-
- }
-
- public override Vector3 CenterOfMass
- {
- get { return Vector3.Zero; }
- }
-
- public override Vector3 GeometricCenter
- {
- get { return Vector3.Zero; }
- }
-
- public override Vector3 Velocity { get; set; }
-
- public override Vector3 Torque
- {
- get { return Vector3.Zero; }
- set { return; }
- }
-
- public override float CollisionScore
- {
- get { return 0f; }
- set { }
- }
-
- public override Quaternion Orientation
- {
- get { return Quaternion.Identity; }
- set { }
- }
-
- public override Vector3 Acceleration { get; set; }
-
- public override bool Kinematic
- {
- get { return true; }
- set { }
- }
-
- public override void link(PhysicsActor obj)
- {
- }
-
- public override void delink()
- {
- }
-
- public override void LockAngularMotion(Vector3 axis)
- {
- }
-
- public override void AddForce(Vector3 force, bool pushforce)
- {
- }
-
- public override void AddAngularForce(Vector3 force, bool pushforce)
- {
- }
-
- public override void SetMomentum(Vector3 momentum)
- {
- }
-
- public override void CrossingFailure()
- {
- }
-
- public override Vector3 PIDTarget
- {
- set { return; }
- }
-
- public override bool PIDActive
- {
- set { return; }
- }
-
- public override float PIDTau
- {
- set { return; }
- }
-
- public override float PIDHoverHeight
- {
- set { return; }
- }
-
- public override bool PIDHoverActive
- {
- set { return; }
- }
-
- public override PIDHoverType PIDHoverType
- {
- set { return; }
- }
-
- public override float PIDHoverTau
- {
- set { return; }
- }
-
- public override Quaternion APIDTarget
- {
- set { return; }
- }
-
- public override bool APIDActive
- {
- set { return; }
- }
-
- public override float APIDStrength
- {
- set { return; }
- }
-
- public override float APIDDamping
- {
- set { return; }
- }
-
- public override void SubscribeEvents(int ms)
- {
- }
-
- public override void UnSubscribeEvents()
- {
- }
-
- public override bool SubscribedEvents()
- {
- return false;
- }
- }
-}
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
deleted file mode 100644
index 7ab2a03..0000000
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPlugin.cs
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the OpenSimulator Project nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-using System;
-using System.Collections.Generic;
-using Nini.Config;
-using OpenSim.Framework;
-using OpenSim.Region.Physics.Manager;
-
-namespace OpenSim.Region.Physics.BasicPhysicsPlugin
-{
- ///
- /// Effectively a physics plugin that simulates no physics at all.
- ///
- public class BasicPhysicsPlugin : IPhysicsPlugin
- {
- public BasicPhysicsPlugin()
- {
- }
-
- public bool Init()
- {
- return true;
- }
-
- public PhysicsScene GetScene(string sceneIdentifier)
- {
- return new BasicScene(sceneIdentifier);
- }
-
- public string GetName()
- {
- return ("basicphysics");
- }
-
- public void Dispose()
- {
- }
- }
-}
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPrim.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPrim.cs
deleted file mode 100644
index 47d7df3..0000000
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsPrim.cs
+++ /dev/null
@@ -1,315 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the OpenSimulator Project nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-using System;
-using System.Collections.Generic;
-using Nini.Config;
-using OpenMetaverse;
-using OpenSim.Framework;
-using OpenSim.Region.Physics.Manager;
-
-namespace OpenSim.Region.Physics.BasicPhysicsPlugin
-{
- public class BasicPhysicsPrim : PhysicsActor
- {
- private Vector3 _size;
-// private PrimitiveBaseShape _shape;
-
- public BasicPhysicsPrim(
- string name, uint localId, Vector3 position, Vector3 size, Quaternion orientation, PrimitiveBaseShape shape)
- {
- Name = name;
- LocalID = localId;
- Position = position;
- Size = size;
- Orientation = orientation;
- Shape = shape;
- }
-
- public override int PhysicsActorType
- {
- get { return (int) ActorTypes.Agent; }
- set { return; }
- }
-
- public override Vector3 RotationalVelocity { get; set; }
-
- public override bool SetAlwaysRun
- {
- get { return false; }
- set { return; }
- }
-
- public override uint LocalID
- {
- set { return; }
- }
-
- public override bool Grabbed
- {
- set { return; }
- }
-
- public override bool Selected
- {
- set { return; }
- }
-
- public override float Buoyancy
- {
- get { return 0f; }
- set { return; }
- }
-
- public override bool FloatOnWater
- {
- set { return; }
- }
-
- public override bool IsPhysical
- {
- get { return false; }
- set { return; }
- }
-
- public override bool ThrottleUpdates
- {
- get { return false; }
- set { return; }
- }
-
- public override bool Flying { get; set; }
-
- public override bool IsColliding { get; set; }
-
- public override bool CollidingGround
- {
- get { return false; }
- set { return; }
- }
-
- public override bool CollidingObj
- {
- get { return false; }
- set { return; }
- }
-
- public override bool Stopped
- {
- get { return false; }
- }
-
- public override Vector3 Position { get; set; }
-
- public override Vector3 Size
- {
- get { return _size; }
- set {
- _size = value;
- _size.Z = _size.Z / 2.0f;
- }
- }
-
- public override PrimitiveBaseShape Shape
- {
-// set { _shape = value; }
- set {}
- }
-
- public override float Mass
- {
- get { return 0f; }
- }
-
- public override Vector3 Force
- {
- get { return Vector3.Zero; }
- set { return; }
- }
-
- public override int VehicleType
- {
- get { return 0; }
- set { return; }
- }
-
- public override void VehicleFloatParam(int param, float value)
- {
-
- }
-
- public override void VehicleVectorParam(int param, Vector3 value)
- {
-
- }
-
- public override void VehicleRotationParam(int param, Quaternion rotation)
- {
-
- }
-
- public override void VehicleFlags(int param, bool remove)
- {
-
- }
-
- public override void SetVolumeDetect(int param)
- {
-
- }
-
- public override Vector3 CenterOfMass
- {
- get { return Vector3.Zero; }
- }
-
- public override Vector3 GeometricCenter
- {
- get { return Vector3.Zero; }
- }
-
- public override Vector3 Velocity { get; set; }
-
- public override Vector3 Torque
- {
- get { return Vector3.Zero; }
- set { return; }
- }
-
- public override float CollisionScore
- {
- get { return 0f; }
- set { }
- }
-
- public override Quaternion Orientation { get; set; }
-
- public override Vector3 Acceleration { get; set; }
-
- public override bool Kinematic
- {
- get { return true; }
- set { }
- }
-
- public override void link(PhysicsActor obj)
- {
- }
-
- public override void delink()
- {
- }
-
- public override void LockAngularMotion(Vector3 axis)
- {
- }
-
- public override void AddForce(Vector3 force, bool pushforce)
- {
- }
-
- public override void AddAngularForce(Vector3 force, bool pushforce)
- {
- }
-
- public override void SetMomentum(Vector3 momentum)
- {
- }
-
- public override void CrossingFailure()
- {
- }
-
- public override Vector3 PIDTarget
- {
- set { return; }
- }
-
- public override bool PIDActive
- {
- set { return; }
- }
-
- public override float PIDTau
- {
- set { return; }
- }
-
- public override float PIDHoverHeight
- {
- set { return; }
- }
-
- public override bool PIDHoverActive
- {
- set { return; }
- }
-
- public override PIDHoverType PIDHoverType
- {
- set { return; }
- }
-
- public override float PIDHoverTau
- {
- set { return; }
- }
-
- public override Quaternion APIDTarget
- {
- set { return; }
- }
-
- public override bool APIDActive
- {
- set { return; }
- }
-
- public override float APIDStrength
- {
- set { return; }
- }
-
- public override float APIDDamping
- {
- set { return; }
- }
-
- public override void SubscribeEvents(int ms)
- {
- }
-
- public override void UnSubscribeEvents()
- {
- }
-
- public override bool SubscribedEvents()
- {
- return false;
- }
- }
-}
diff --git a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsScene.cs b/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsScene.cs
deleted file mode 100644
index f5826ed..0000000
--- a/OpenSim/Region/Physics/BasicPhysicsPlugin/BasicPhysicsScene.cs
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * Copyright (c) Contributors, http://opensimulator.org/
- * See CONTRIBUTORS.TXT for a full list of copyright holders.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * * Neither the name of the OpenSimulator Project nor the
- * names of its contributors may be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-using System;
-using System.Collections.Generic;
-using Nini.Config;
-using OpenMetaverse;
-using OpenSim.Framework;
-using OpenSim.Region.Physics.Manager;
-
-namespace OpenSim.Region.Physics.BasicPhysicsPlugin
-{
- ///
- /// This is an incomplete extremely basic physics implementation
- ///
- ///
- /// Not useful for anything at the moment apart from some regression testing in other components where some form
- /// of physics plugin is needed.
- ///
- public class BasicScene : PhysicsScene
- {
- private List _actors = new List();
- private List _prims = new List();
- private float[] _heightMap;
-
- //protected internal string sceneIdentifier;
-
- public BasicScene(string _sceneIdentifier)
- {
- //sceneIdentifier = _sceneIdentifier;
- }
-
- public override void Initialise(IMesher meshmerizer, IConfigSource config)
- {
- }
-
- public override void Dispose() {}
-
- public override PhysicsActor AddPrimShape(string primName, PrimitiveBaseShape pbs, Vector3 position,
- Vector3 size, Quaternion rotation, bool isPhysical, uint localid)
- {
- BasicPhysicsPrim prim = new BasicPhysicsPrim(primName, localid, position, size, rotation, pbs);
- prim.IsPhysical = isPhysical;
-
- _prims.Add(prim);
-
- return prim;
- }
-
- public override PhysicsActor AddAvatar(string avName, Vector3 position, Vector3 size, bool isFlying)
- {
- BasicActor act = new BasicActor(size);
- act.Position = position;
- act.Flying = isFlying;
- _actors.Add(act);
- return act;
- }
-
- public override void RemovePrim(PhysicsActor actor)
- {
- BasicPhysicsPrim prim = (BasicPhysicsPrim)actor;
- if (_prims.Contains(prim))
- _prims.Remove(prim);
- }
-
- public override void RemoveAvatar(PhysicsActor actor)
- {
- BasicActor act = (BasicActor)actor;
- if (_actors.Contains(act))
- _actors.Remove(act);
- }
-
- public override void AddPhysicsActorTaint(PhysicsActor prim)
- {
- }
-
- public override float Simulate(float timeStep)
- {
- float fps = 0;
- for (int i = 0; i < _actors.Count; ++i)
- {
- BasicActor actor = _actors[i];
- Vector3 actorPosition = actor.Position;
- Vector3 actorVelocity = actor.Velocity;
-
- actorPosition.X += actor.Velocity.X*timeStep;
- actorPosition.Y += actor.Velocity.Y*timeStep;
-
- if (actor.Position.Y < 0)
- {
- actorPosition.Y = 0.1F;
- }
- else if (actor.Position.Y >= Constants.RegionSize)
- {
- actorPosition.Y = ((int)Constants.RegionSize - 0.1f);
- }
-
- if (actor.Position.X < 0)
- {
- actorPosition.X = 0.1F;
- }
- else if (actor.Position.X >= Constants.RegionSize)
- {
- actorPosition.X = ((int)Constants.RegionSize - 0.1f);
- }
-
- float terrainHeight = 0;
- if (_heightMap != null)
- terrainHeight = _heightMap[(int)actor.Position.Y * Constants.RegionSize + (int)actor.Position.X];
-
- float height = terrainHeight + actor.Size.Z;
-
- if (actor.Flying)
- {
- if (actor.Position.Z + (actor.Velocity.Z * timeStep) < terrainHeight + 2)
- {
- actorPosition.Z = height;
- actorVelocity.Z = 0;
- actor.IsColliding = true;
- }
- else
- {
- actorPosition.Z += actor.Velocity.Z * timeStep;
- actor.IsColliding = false;
- }
- }
- else
- {
- actorPosition.Z = height;
- actorVelocity.Z = 0;
- actor.IsColliding = true;
- }
-
- actor.Position = actorPosition;
- actor.Velocity = actorVelocity;
- }
-
- return fps;
- }
-
- public override void GetResults()
- {
- }
-
- public override bool IsThreaded
- {
- get { return (false); // for now we won't be multithreaded
- }
- }
-
- public override void SetTerrain(float[] heightMap)
- {
- _heightMap = heightMap;
- }
-
- public override void DeleteTerrain()
- {
- }
-
- public override void SetWaterLevel(float baseheight)
- {
- }
-
- public override Dictionary GetTopColliders()
- {
- Dictionary returncolliders = new Dictionary();
- return returncolliders;
- }
- }
-}
--
cgit v1.1