Motores de Fisica

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Cambios Recientes)
(BulletX Plugin en OpenSim: Modificado BulletX)
Line 68: Line 68:
 
* 30m Espacio separación por prim.
 
* 30m Espacio separación por prim.
  
== BulletX Plugin en OpenSim: Modificado BulletX ==
+
== BulletX Plugin en OpenSim: BulletX Modificado==
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 [http://www.codeplex.com/xnadevru 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)
+
BulletX Plugin en OpenSim se ejecuta con una versión modificada de BulletX. La versión original de BulletX se ejecuta y tiene dependencias de código con MS.XNA. La versión original BulletX se puede encontrar en [http://www.codeplex.com/xnadevru XNADev.ru]. La versión modificada elimina la totalidad de las dependencias de código con MS.XNA. Por otra parte, es necesario trabajar con otra librería. Esta biblioteca se basa en Mono.Xna y se llama MonoCompactMaths. BulletX modificado y MonoXnaCompactMaths pueden encontrarse en el svn de OpenSim. Debido a su independencia código de MS.XNA, BulletX modificado se puede ejecutar tanto en MS.Net como 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:
+
Actualmente, el plugin de BulletX soporta colisiones Avatar vs Avatar, Avatar vs Prim y Prim vs Prim. El movimiento de Prims y avies está soportado. Por cierto, las colisiones necesitan afinarse. El comportamiento de las colisiones es el siguiente:
* Para avies, y como esfera de 1m de radious y 50Kg de masa
+
* Para avies, y como esfera de 1m de radio 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 los prims, como un cubo de del tamaño del tamaño del prim y una masa que depende de su tamaño. La masa es la masa de un cubo lleno de agua de densidad = 1Kg / L = 1Kg/dm3 = 1000Kg/m3 (Be water my friend! :D).
  
 
=== Para lista de tareas (al lado de los cambios) ===
 
=== Para lista de tareas (al lado de los cambios) ===

Revision as of 05:47, 16 December 2007

OpenSimIcon ALPHAespañol.png

AVISO: Esta página es una traducción de la original en inglés y puede no estar actualizada. La original en inglés se puede encontrar aquí: PhysicsEngines

Template:Aviso Traduccion Provisional Hay varios 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 ODE desde el código fuente (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!]

Compilar ODE desde el código fuente (Windows)

La distribución estándar de ode.org tiene una compilación, en el cual se encuentran subdirectorios para diferentes compiladores de Microsoft.

Los archivos .sln estándars (por lo menos para VS2005) compilan ode.dll tal que dependen de al menos dos runtime dlls de Microsoft. Esto puede causar que falle y algo de confusión, así que hacer lo siguiente: Pulsar con el botón derecho en ode en el Explorador de Soluciones, y seleccione Propiedades. Bajo Configuración Propiedades/General, cambiar "Usar MFC" por "Usar MFC en una librería estática".

Luego compilar como de costumbre.

ODE Plugin en OpenSim

Actualmente, el plugin de ODE suporta colisiones Avatar vs Avatar, Avatar vs Prim y Prim vs Prim. Avies y prims (activos) físicos están soportados.

El comportamiento de las colisiones es actualmente:

  • 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.
  • Los prims están separados en espacios de ~30m con su propio cubo de contorno para accelerar el cálculo de proximidad.
  • La fricción está reducida en el avatar con las colisiones objeto/terreno cuando este se mueve.

Lista de tareas a hacer(próximos cambios)

  • Afinar todas las colisiones
  • Introducir más tipos de forma de Prim a parte del cubo utilizando el generador tri-mesh Meshmerizer .
  • Corregir errores
  • Implementar agarrar y tirar
  • Linksets
  • Vehículos

Errores conocidos

  • Colisiones con el terreno: Algunos terrenos pueden causar al avatar que rebote en el aire sin ningún aviso
  • Terreno desalineados: El terreno visible está levemente desalineado con el mapa de altura. Esto hace al avatar aparecer como estando en un espacio vacío y provoca que éste aparezca con las rodillas dobladas.
  • Los Linksets no funcionan: Hacer un linkset físico, deja el geometrías de sus prims hijos donde se encuentran... incluso si el prim padre se mueve.
  • Arrastrar es tratado como 'moverse':arrastrar un prim dentro de otro hace que se interpenetren y la fuerzas restaurativas los golpean enviando el prim fuera de órbita.

Cambios Recientes

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

BulletX Plugin en OpenSim: BulletX Modificado

BulletX Plugin en OpenSim se ejecuta con una versión modificada de BulletX. La versión original de BulletX se ejecuta y tiene dependencias de código con MS.XNA. La versión 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 con otra librería. Esta biblioteca se basa en Mono.Xna y se llama MonoCompactMaths. BulletX modificado y MonoXnaCompactMaths pueden encontrarse en el svn de OpenSim. Debido a su independencia código de MS.XNA, BulletX modificado se puede ejecutar tanto en MS.Net como Mono y, por lo tanto, ya sea Windows o Linux (obviamente puede combinar Windows + Mono)

Actualmente, el plugin de BulletX soporta colisiones Avatar vs Avatar, Avatar vs Prim y Prim vs Prim. El movimiento de Prims y avies está soportado. Por cierto, las colisiones necesitan afinarse. El comportamiento de las colisiones es el siguiente:

  • Para avies, y como esfera de 1m de radio y 50Kg de masa
  • Para los prims, como un cubo de del tamaño del tamaño del prim y una masa que depende de su tamaño. La masa es la masa de un cubo lleno de agua de densidad = 1Kg / L = 1Kg/dm3 = 1000Kg/m3 (Be water my friend! :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