diff options
author | dan miller | 2007-11-05 12:25:53 +0000 |
---|---|---|
committer | dan miller | 2007-11-05 12:25:53 +0000 |
commit | fdb57b28b164f239de0f976b967b79dc2ca5f6ae (patch) | |
tree | e998ae9c7dd6e248e794e35ca19678e3b6f6fad1 /OpenSim/Region/Physics/PhysXPlugin | |
parent | Changed it so opensim.exe should scan for new application plugins every time ... (diff) | |
download | opensim-SC-fdb57b28b164f239de0f976b967b79dc2ca5f6ae.zip opensim-SC-fdb57b28b164f239de0f976b967b79dc2ca5f6ae.tar.gz opensim-SC-fdb57b28b164f239de0f976b967b79dc2ca5f6ae.tar.bz2 opensim-SC-fdb57b28b164f239de0f976b967b79dc2ca5f6ae.tar.xz |
prim cuts in ODE
Much thanks to Gerhard!
Merged with Darok's recent changes re: physical prims
Diffstat (limited to 'OpenSim/Region/Physics/PhysXPlugin')
-rw-r--r-- | OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs | 133 |
1 files changed, 85 insertions, 48 deletions
diff --git a/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs b/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs index 7a43a0a..5483703 100644 --- a/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs +++ b/OpenSim/Region/Physics/PhysXPlugin/PhysXPlugin.cs | |||
@@ -291,15 +291,23 @@ namespace OpenSim.Region.Physics.PhysXPlugin | |||
291 | gravityAccel = 0; | 291 | gravityAccel = 0; |
292 | } | 292 | } |
293 | } | 293 | } |
294 | 294 | public override PrimitiveBaseShape Shape | |
295 | public void UpdatePosition() | ||
296 | { | 295 | { |
297 | Vec3 vec = _character.Position; | 296 | set |
298 | _position.X = vec.X; | 297 | { |
299 | _position.Y = vec.Y; | 298 | return; |
300 | _position.Z = vec.Z; | 299 | } |
301 | } | 300 | } |
302 | } | 301 | |
302 | public void UpdatePosition() | ||
303 | { | ||
304 | Vec3 vec = this._character.Position; | ||
305 | this._position.X = vec.X; | ||
306 | this._position.Y = vec.Y; | ||
307 | this._position.Z = vec.Z; | ||
308 | } | ||
309 | } | ||
310 | |||
303 | 311 | ||
304 | public class PhysXPrim : PhysicsActor | 312 | public class PhysXPrim : PhysicsActor |
305 | { | 313 | { |
@@ -358,55 +366,84 @@ namespace OpenSim.Region.Physics.PhysXPlugin | |||
358 | } | 366 | } |
359 | } | 367 | } |
360 | 368 | ||
361 | public override PhysicsVector Size | 369 | public override PrimitiveBaseShape Shape |
362 | { | 370 | { |
363 | get { return new PhysicsVector(0, 0, 0); } | 371 | set |
364 | set { } | ||
365 | } | ||
366 | |||
367 | public override PhysicsVector Velocity | ||
368 | { | ||
369 | get { return _velocity; } | ||
370 | set { _velocity = value; } | ||
371 | } | ||
372 | |||
373 | public override bool Kinematic | ||
374 | { | ||
375 | get { return _prim.Kinematic; } | ||
376 | set { _prim.Kinematic = value; } | ||
377 | } | ||
378 | |||
379 | public override Quaternion Orientation | ||
380 | { | ||
381 | get | ||
382 | { | 372 | { |
383 | Quaternion res = new Quaternion(); | 373 | return; |
384 | PhysXWrapper.Quaternion quat = _prim.GetOrientation(); | ||
385 | res.w = quat.W; | ||
386 | res.x = quat.X; | ||
387 | res.y = quat.Y; | ||
388 | res.z = quat.Z; | ||
389 | return res; | ||
390 | } | 374 | } |
391 | set { } | ||
392 | } | ||
393 | |||
394 | public override PhysicsVector Acceleration | ||
395 | { | ||
396 | get { return _acceleration; } | ||
397 | } | 375 | } |
398 | 376 | ||
399 | public void SetAcceleration(PhysicsVector accel) | 377 | public override PhysicsVector Velocity |
400 | { | 378 | { |
401 | _acceleration = accel; | 379 | get |
402 | } | 380 | { |
381 | return _velocity; | ||
382 | } | ||
383 | set | ||
384 | { | ||
385 | _velocity = value; | ||
386 | } | ||
387 | } | ||
388 | |||
389 | public override bool Kinematic | ||
390 | { | ||
391 | get | ||
392 | { | ||
393 | return this._prim.Kinematic; | ||
394 | } | ||
395 | set | ||
396 | { | ||
397 | this._prim.Kinematic = value; | ||
398 | } | ||
399 | } | ||
400 | |||
401 | public override Quaternion Orientation | ||
402 | { | ||
403 | get | ||
404 | { | ||
405 | Quaternion res = new Quaternion(); | ||
406 | PhysXWrapper.Quaternion quat = this._prim.GetOrientation(); | ||
407 | res.w = quat.W; | ||
408 | res.x = quat.X; | ||
409 | res.y = quat.Y; | ||
410 | res.z = quat.Z; | ||
411 | return res; | ||
412 | } | ||
413 | set | ||
414 | { | ||
415 | |||
416 | } | ||
417 | } | ||
418 | |||
419 | public override PhysicsVector Acceleration | ||
420 | { | ||
421 | get | ||
422 | { | ||
423 | return _acceleration; | ||
424 | } | ||
425 | |||
426 | } | ||
427 | public void SetAcceleration (PhysicsVector accel) | ||
428 | { | ||
429 | this._acceleration = accel; | ||
430 | } | ||
431 | |||
432 | public override void AddForce(PhysicsVector force) | ||
433 | { | ||
434 | |||
435 | } | ||
436 | |||
437 | public override void SetMomentum(PhysicsVector momentum) | ||
438 | { | ||
439 | |||
440 | } | ||
403 | 441 | ||
404 | public override void AddForce(PhysicsVector force) | 442 | public override PhysicsVector Size |
405 | { | 443 | { |
444 | get { return new PhysicsVector(0, 0, 0); } | ||
445 | set { } | ||
406 | } | 446 | } |
407 | 447 | ||
408 | public override void SetMomentum(PhysicsVector momentum) | ||
409 | { | ||
410 | } | ||
411 | } | 448 | } |
412 | } | 449 | } |