Motores de Fisica

From OpenSimulator

Revision as of 01:25, 16 December 2007 by Darok (Talk | contribs)

Jump to: navigation, search

Hay varias motores de física para su uso en OpenSim. Actualmente, son "basicphysics", "OpenDynamicsEngine", "RealPhysX" & "BulletX" (versión modificada). El plugin "basicphysics" es el valor por defecto y se puede ver en el archivo OpenSim.ini .

  • Al arrancar OpenSim en Windows o Linux, se puede añadir

-physics=OpenDynamicsEngine - para ejecutar el OpenDynamicsEngine (ODE) en lugar de basicphysics, o cambiar el parámetro correspondiente en OpenSim.ini .

  • Al arrancar OpenSim en Windows, se puede añadir

-physics=RealPhysX si se tiene las DLLs que no están incluídas en el paquete de OpenSim debido a las limitaciones de la licencia.

  • Al arrancar OpenSim en Windows o Linux, se puede añadir

-physics=modified_BulletX para ejecutar una versión modificada de la motor de Física BulletX alias BulletX Modificado. Véase la siguiente información acerca de los detalles y el progreso.

Para concluir, basicphysics y OpenDynamicsEngine ambos son apropiados para Linux y además, RealPhysX es adecuadopara Windows si se tienen sus DLLs. BulletX Modificado debería funcionar bien para Windows y Linux (no el original BulletX).

A partir del 10/9/07, ODE ha sido sometido a un testeo bastante importante. Soporta colisiones básicas con primitivas con forma de cubo, así como primitivas con esta forma que tenga con agujeros con forma de cubo. BulletX soporta primitivas con forma de cubo y parece ser estable; pero ha sido poco provado y se sabe que tiene problemas con la fricción (se patinan en torno a las superficies sin nivel). Physx no se ha actualizado en mucho tiempo.

Contents

Compilar desde el código fuente de ODE (Linux)

Si uno quiere compilar el OpenDynamicsEngine (ODE) por su cuenta, se pueden obtener las últimas el código fuente en las librerías OpenSim (Ver. 0,9 como de Octubre'07) en el SVN: http://opensimulator.org/svn/opensim-libs Cambiar el directorio de ode y compilar de la siguiente manera:

./configure -- enable-shared make -k

(Se solía sugerir --with-trimesh=gimpact, pero ya no. Desde ODE 0,9, se prefiere Opcode porque soporta mejor la librería de colisiones)

Esto debería crear los archivos libode.a y lidode.so en el archivo subdirectorio src/ode . Copie estos dos archivos al directorio de opensim bin (después de haber hecho una copia de los archivos originales). [-er, No creo que el archivo .a sea necesario de poner en el bin!]

ODE Compilar desde el código fuente (Windows)

La norma de distribución de ode.org tiene una estructura de directorio, en el que se encontrará subdirectorios para varios compiladores Microsoft.

La norma. Sln archivos (por lo menos para VS2005) compilar ode.dll tal que depende de al menos dos de tiempo de ejecución Microsoft DLL's. Esto puede causar confusión y el fracaso, así que hacer lo siguiente: Pulse con el botón derecho en oda Solution Explorer, y seleccione Propiedades. En virtud de propiedades de configuración / General, el cambio "Uso de MFC" por el de "uso MFC en una biblioteca Static"

Luego compilar como de costumbre.

ODE Plugin en OpenSim

Actualmente, la ODE Plugin suports colisiones Av2Av, Av2Prim y Prim2Prim. Avies (activo) y física prim movimiento apoyado.

El comportamiento es actualmente colisión:

  • Para avies, una cápsula de .2 m de radio y una longitud de .9 m y 50Kg de masa
  • Para la posición, como un recuadro con una masa de una Caja de = 0.5Kg / L = 0.5Kg/dm3 = 500Kg/m3.
  • Prim están separados en el ~ 30m espacios con su propia caja de velocidad 'cerca de' cálculo.
  • Se reduce la fricción sobre la encarnación de oponerse / terreno colisiones cuando el avatar se desplazan

Para lista de tareas (al lado de los cambios)

  • Tune todas las colisiones
  • Introducir Prim Shape Tipo tener más de la caja utilizando la forma de la Meshmerizer trinacional generador de malla
  • Corregir errores
  • Llevar a la prácticaagarrar y tirar
  • Linksets
  • Vehículos

Errores conocidos

  • Ground Collisions:Algunas causas encarnación terreno terreno a rebotar en el aire sin previo aviso
  • Mis alineados Terreno:El terreno es levemente visibles errores alineados contra la heightmap. Esto hace que la encarnación a aparecer como si es de pie en el espacio vacío y un poco fuera de una colina y las causas de la encarnación parece como si las rodillas están dobladas o pies en el terreno en el otro lado.
  • Linksets no funcionan:Realización de una linkset física, deja el geometrías de los niños es donde se encuentran prim .. Incluso si la raíz se mueve prim.
  • Grab es tratado como 'moverse':arrastrar un prim prim a otro hace que se interpenetran y la restaurativa en las fuerzas de tiro para enviar el prim en órbita.

Cambios Recientes

  • Avatar altura se obtiene traducido a ODE
  • 30m Espacio separación de prim.

BulletX Plugin en OpenSim: Modificado BulletX

BulletX Plugin en OpenSim corre la versión modificada de BulletX. La versión original de BulletX ejecuta bajo y tiene código de las dependencias con MS.XNA. El original BulletX se puede encontrar en XNADev.ru. La versión modificada elimina la totalidad de las dependencias de código con MS.XNA. Por otra parte, es necesario trabajar a otra biblioteca. Esta biblioteca se basa en Mono.Xna y se llama MonoCompactMaths. El modificados BulletX y la MonoXnaCompactMaths puede encontrarse en la propiedad svn de OpenSim. Debido a su independencia código de MS.XNA, la modificación BulletX que se puede ejecutar como bien MS.Net o Mono y, por lo tanto, ya sea Windows o Linux (obviamente puede combinar Windows + Mono)

Actualmente, BulletX Plugin suports colisiones Av2Av, Av2Prim y Prim2Prim. Prims y avies movimiento apoyado. Por cierto, las colisiones necesidades tunning. La colisión actualmente la behavoir son:

  • Para avies, y como esfera de 1m de radious y 50Kg de masa
  • Para la posición, como un cuadro de la prim tamaño y una masa que depende de su tamaño. La masa es la masa de agua con la Caja de densidad = 1Kg / L = 1Kg/dm3 = 1000Kg/m3 (Be agua mi amigo!: D).

Para lista de tareas (al lado de los cambios)

  • Tune colisión
  • Introducir Prim Shape Tipo tener más de la caja forma.
  • Más de 1 región en un Sim y luego más de 1 sim (red)
  • Corregir errores

Errores conocidos

  • Icy error:actúa como un avatar es sobre hielo y tiende a la deriva fuera de los límites de la sim después de un tiempo
  • Crash sobre BulletX. Usted encontrará el siguiente mensaje en la consola a veces:Overflow en AABB, objeto eliminado de simulación Si usted puede reproducir este, por favor envíe un mensaje bugs@continuousphysics.com Por favor, incluya información anterior, su Plataforma, la versión de OS. Gracias.
  • Rotación no parece funcionar

POS Plugin en OpenSim

POS es la simplicidad de la Física. Es BasicPhysics con colisiones.

Me sacó a mi viejo de wiki cosas porque era, simplemente, está mal. El algoritmo que se aplica en POS no , modelo de la encarnación como una esfera, sino más bien modelos como un sólido rectilíneo, el mismo que la posición. Sin embargo, la detección de colisiones es siempre hecho en el marco de la rotación de prim, por lo que dependiendo de que usted llega prim contra, el avatar es realmente orientada hacia diferente.

Para lista de tareas (al lado de los cambios)

  • TODO

Errores conocidos

  • TODO

Física Testing Videos

, ODE ,

  • 360 Prims (Sim Crashes) [11/08/2007 rev.2308]
  QuickTime> http://www.nebadonizumi.com/vid/opensim/opensim_ODE_physics_test_01.mov
  Stage6> http://stage6.divx.com/user/3dlibre/video/1847652/
  YouTube> http://www.youtube.com/watch?v=Y0olsWlTc0A
  • 180 Prims (Sim ¿No Crash) [11/08/2007 rev.2308]
  QuickTime> http://www.nebadonizumi.com/vid/opensim/opensim_ODE_physics_test_02.mov
  Stage6> http://stage6.divx.com/user/3dlibre/video/1847715/
  YouTube> http://www.youtube.com/watch?v=9lR_2H7VODU
  • 90 Prims (Sim ¿No Crash) [11/08/2007 rev.2308]
  Quicktime> http://www.nebadonizumi.com/vid/opensim/opensim_ODE_physics_test_03.mov
  Stage6> http://stage6.divx.com/user/3dlibre/video/1847731/
  YouTube> http://www.youtube.com/watch?v=t9ulYO8I26Q

, BulletX ,

  • 360 Prims (Sim Crashes) [11/08/2007 rev.2308]
  QuickTime> http://www.nebadonizumi.com/vid/opensim/opensim_BulletX_physics_test_01.mov
  Stage6> http://stage6.divx.com/user/3dlibre/video/1847745/
  • 180 Prims (Sim Crashes) [11/08/2007 rev.2308]
  QuickTime> http://www.nebadonizumi.com/vid/opensim/opensim_BulletX_physics_test_02.mov
  • 90 Prims (Sim Crashes) [11/08/2007 rev.2308]
  QuickTime> http://www.nebadonizumi.com/vid/opensim/opensim_BulletX_physics_test_03.mov

, SecondLife Havok 1 ,

  • 360 Prims [11/08/2007]
  Http://www.nebadonizumi.com/vid/opensim/SecondLife_physics_test_01.mov

, SecondLife Havok 4 ,

  • 360 Prims [11/08/2007]
  Http://www.nebadonizumi.com/vid/opensim/SecondLifeBetaHavok_physics_test_01.mov
  • 1000 Prims [11/09/2007]
  Http://www.nebadonizumi.com/vid/opensim/SecondLifeBetaHavok_physics_test_02.mov
  • 1000 Prims [11/09/2007]
  Http://www.nebadonizumi.com/vid/opensim/SecondLifeBetaHavok_physics_test_03.mov
Personal tools
General
About This Wiki