C# 클래스 OpenSim.Region.Physics.Manager.PhysicsScene

파일 보기 프로젝트 열기: N3X15/VoxelSim 1 사용 예제들

공개 메소드들

메소드 설명
AddAvatar ( string avName, System.Vector3 position, System.Vector3 size, bool isFlying ) : PhysicsActor
AddPhysicsActorTaint ( PhysicsActor prim ) : void
AddPrimShape ( string primName, OpenSim.Framework.PrimitiveBaseShape pbs, System.Vector3 position, System.Vector3 size, Quaternion rotation ) : PhysicsActor
AddPrimShape ( string primName, OpenSim.Framework.PrimitiveBaseShape pbs, System.Vector3 position, System.Vector3 size, Quaternion rotation, bool isPhysical ) : PhysicsActor
Combine ( PhysicsScene pScene, System.Vector3 offset, System.Vector3 extents ) : void
DeleteTerrain ( ) : void
Dispose ( ) : void
DumpJointInfo ( ) : void
GetJointAnchor ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : System.Vector3
GetJointAxis ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : System.Vector3
GetResults ( ) : void
GetTopColliders ( ) : float>.Dictionary
Initialise ( IMesher meshmerizer, IVoxelMesher voxmesher, IConfigSource config ) : void
RaycastWorld ( System.Vector3 position, System.Vector3 direction, float length, RaycastCallback retMethod ) : void

Queue a raycast against the physics scene. The provided callback method will be called when the raycast is complete Many physics engines don't support collision testing at the same time as manipulating the physics scene, so we queue the request up and callback a custom method when the raycast is complete. This allows physics engines that give an immediate result to callback immediately and ones that don't, to callback when it gets a result back. ODE for example will not allow you to change the scene while collision testing or it asserts, 'opteration not valid for locked space'. This includes adding a ray to the scene. This is named RayCastWorld to not conflict with modrex's Raycast method.

RemoveAllJointsConnectedToActorThreadLocked ( PhysicsActor actor ) : void
RemoveAvatar ( PhysicsActor actor ) : void
RemovePrim ( PhysicsActor prim ) : void
RequestJointCreation ( string objectNameInScene, PhysicsJointType jointType, System.Vector3 position, Quaternion rotation, string parms, List bodyNames, string trackedBodyName, Quaternion localRotation ) : OpenSim.Region.Physics.Manager.PhysicsJoint
RequestJointDeletion ( string objectNameInScene ) : void
SetTerrain ( bool heightMap ) : void
SetWaterLevel ( float baseheight ) : void
Simulate ( float timeStep ) : float
SupportsCombining ( ) : bool
SupportsRayCast ( ) : bool

True if the physics plugin supports raycasting against the physics scene

TriggerPhysicsBasedRestart ( ) : void
UnCombine ( PhysicsScene pScene ) : void

보호된 메소드들

메소드 설명
DoJointDeactivated ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : void
DoJointErrorMessage ( OpenSim.Region.Physics.Manager.PhysicsJoint joint, string message ) : void
DoJointMoved ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : void

메소드 상세

AddAvatar() 공개 추상적인 메소드

public abstract AddAvatar ( string avName, System.Vector3 position, System.Vector3 size, bool isFlying ) : PhysicsActor
avName string
position System.Vector3
size System.Vector3
isFlying bool
리턴 PhysicsActor

AddPhysicsActorTaint() 공개 추상적인 메소드

public abstract AddPhysicsActorTaint ( PhysicsActor prim ) : void
prim PhysicsActor
리턴 void

AddPrimShape() 공개 추상적인 메소드

public abstract AddPrimShape ( string primName, OpenSim.Framework.PrimitiveBaseShape pbs, System.Vector3 position, System.Vector3 size, Quaternion rotation ) : PhysicsActor
primName string
pbs OpenSim.Framework.PrimitiveBaseShape
position System.Vector3
size System.Vector3
rotation Quaternion
리턴 PhysicsActor

AddPrimShape() 공개 추상적인 메소드

public abstract AddPrimShape ( string primName, OpenSim.Framework.PrimitiveBaseShape pbs, System.Vector3 position, System.Vector3 size, Quaternion rotation, bool isPhysical ) : PhysicsActor
primName string
pbs OpenSim.Framework.PrimitiveBaseShape
position System.Vector3
size System.Vector3
rotation Quaternion
isPhysical bool
리턴 PhysicsActor

Combine() 공개 메소드

public Combine ( PhysicsScene pScene, System.Vector3 offset, System.Vector3 extents ) : void
pScene PhysicsScene
offset System.Vector3
extents System.Vector3
리턴 void

DeleteTerrain() 공개 추상적인 메소드

public abstract DeleteTerrain ( ) : void
리턴 void

Dispose() 공개 추상적인 메소드

public abstract Dispose ( ) : void
리턴 void

DoJointDeactivated() 보호된 메소드

protected DoJointDeactivated ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : void
joint OpenSim.Region.Physics.Manager.PhysicsJoint
리턴 void

DoJointErrorMessage() 보호된 메소드

protected DoJointErrorMessage ( OpenSim.Region.Physics.Manager.PhysicsJoint joint, string message ) : void
joint OpenSim.Region.Physics.Manager.PhysicsJoint
message string
리턴 void

DoJointMoved() 보호된 메소드

protected DoJointMoved ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : void
joint OpenSim.Region.Physics.Manager.PhysicsJoint
리턴 void

DumpJointInfo() 공개 메소드

public DumpJointInfo ( ) : void
리턴 void

GetJointAnchor() 공개 메소드

public GetJointAnchor ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : System.Vector3
joint OpenSim.Region.Physics.Manager.PhysicsJoint
리턴 System.Vector3

GetJointAxis() 공개 메소드

public GetJointAxis ( OpenSim.Region.Physics.Manager.PhysicsJoint joint ) : System.Vector3
joint OpenSim.Region.Physics.Manager.PhysicsJoint
리턴 System.Vector3

GetResults() 공개 추상적인 메소드

public abstract GetResults ( ) : void
리턴 void

GetTopColliders() 공개 추상적인 메소드

public abstract GetTopColliders ( ) : float>.Dictionary
리턴 float>.Dictionary

Initialise() 공개 추상적인 메소드

public abstract Initialise ( IMesher meshmerizer, IVoxelMesher voxmesher, IConfigSource config ) : void
meshmerizer IMesher
voxmesher IVoxelMesher
config IConfigSource
리턴 void

RaycastWorld() 공개 메소드

Queue a raycast against the physics scene. The provided callback method will be called when the raycast is complete Many physics engines don't support collision testing at the same time as manipulating the physics scene, so we queue the request up and callback a custom method when the raycast is complete. This allows physics engines that give an immediate result to callback immediately and ones that don't, to callback when it gets a result back. ODE for example will not allow you to change the scene while collision testing or it asserts, 'opteration not valid for locked space'. This includes adding a ray to the scene. This is named RayCastWorld to not conflict with modrex's Raycast method.
public RaycastWorld ( System.Vector3 position, System.Vector3 direction, float length, RaycastCallback retMethod ) : void
position System.Vector3 Origin of the ray
direction System.Vector3 Direction of the ray
length float Length of ray in meters
retMethod RaycastCallback Method to call when the raycast is complete
리턴 void

RemoveAllJointsConnectedToActorThreadLocked() 공개 메소드

public RemoveAllJointsConnectedToActorThreadLocked ( PhysicsActor actor ) : void
actor PhysicsActor
리턴 void

RemoveAvatar() 공개 추상적인 메소드

public abstract RemoveAvatar ( PhysicsActor actor ) : void
actor PhysicsActor
리턴 void

RemovePrim() 공개 추상적인 메소드

public abstract RemovePrim ( PhysicsActor prim ) : void
prim PhysicsActor
리턴 void

RequestJointCreation() 공개 메소드

public RequestJointCreation ( string objectNameInScene, PhysicsJointType jointType, System.Vector3 position, Quaternion rotation, string parms, List bodyNames, string trackedBodyName, Quaternion localRotation ) : OpenSim.Region.Physics.Manager.PhysicsJoint
objectNameInScene string
jointType PhysicsJointType
position System.Vector3
rotation Quaternion
parms string
bodyNames List
trackedBodyName string
localRotation Quaternion
리턴 OpenSim.Region.Physics.Manager.PhysicsJoint

RequestJointDeletion() 공개 메소드

public RequestJointDeletion ( string objectNameInScene ) : void
objectNameInScene string
리턴 void

SetTerrain() 공개 추상적인 메소드

public abstract SetTerrain ( bool heightMap ) : void
heightMap bool
리턴 void

SetWaterLevel() 공개 추상적인 메소드

public abstract SetWaterLevel ( float baseheight ) : void
baseheight float
리턴 void

Simulate() 공개 추상적인 메소드

public abstract Simulate ( float timeStep ) : float
timeStep float
리턴 float

SupportsCombining() 공개 메소드

public SupportsCombining ( ) : bool
리턴 bool

SupportsRayCast() 공개 메소드

True if the physics plugin supports raycasting against the physics scene
public SupportsRayCast ( ) : bool
리턴 bool

TriggerPhysicsBasedRestart() 공개 메소드

public TriggerPhysicsBasedRestart ( ) : void
리턴 void

UnCombine() 공개 메소드

public UnCombine ( PhysicsScene pScene ) : void
pScene PhysicsScene
리턴 void