Gravedad

Started by zelda99, November 19, 2012, 11:21:43 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Erkosone

Bueno, a primera vista suena bastante razonable, pero por algún motivo este concepto no se explica en ningún artículo sobre el tema "de los que yo he estudiado", he estado empollando primero una buena base de matemáticas y vectores y luego me he metido con la física dinámica aplicada y no he visto que se hable desde este punto de vista en ningún sitio, lo cual no quiere decir que no tenga sentido ni mucho menos, supongo que mirar la física de una forma tan "global" o "desde lejos" quizá dista un poco de lo que es en si una simulación sobre una escena.


Pero es una buena pregunta, la verdad es que no me lo había planteado de esta manera.

SplinterGU

#16
no importa, si liberas los fuentes luego cuando tenga tiempo la adapto yo para eso, no creo sea complicado.

pero si piensas en el angry bird space, seguro tiene algo de eso, porque hay muchos niveles donde hay mas de 1 planeta y los pajaros cambian la trayectoria segun a que distancia de cada planeta se encuentre, y tambien si mal no recuerdo, afecta segun el tamaño de cada uno de los planetas.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

KeoH

Yo creo q el metodo de Erkosone es igual de valido que el que plantea Splinter. Con la diferencia que estais refiriendoos a la gravedad en dos escalas distintas. Lo que plantea Erkosone es un campo gravitatorio donde la gravedad apunta en una dirección, es perfectamente valido para un microentorno, como por ejemplo como actuaría la gravedad en una ciudad. Lo que dice Splinter es mas apropiado para un macroentorno donde las fuentes de esa gravedad tienen una dimension puntual, porque toda esa masa esta en un punto y el potencial gravitatorio apunta a ese unico punto del espacio. Esto es mas apropiado para simular planetas y esta clase de condiciones.


Los dos estais diciendo cosas correctas pero en niveles de escala distinta.

KeoH

Por cierto Erkosone cuando liberes la libreria .. toda la explicación de como funciona y ejemplos hazlo en un pdf como el manual de Osk para que este todo junto y tal y así mejoramos la calidad de la documentación.

Erkosone

Ok, montaré un manual de uso junto con una explicación del código, así se podrá ampliar facilmente.

laghengar

Mi método que es perfectamente válido y sencillo no le gusta a nadie no? Vale, vale, joios XD.
!!!Blender Blender Blender yuhuuuuuuu¡¡¡ novato o_O

SplinterGU

todo metodo es valido...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

laghengar

Nada nada, quiero a todo el mundo usar vectores para cualquier cosa, si no me liaré a hacer copia pegas tochos de métodos super complicados.  ;D
!!!Blender Blender Blender yuhuuuuuuu¡¡¡ novato o_O

Rein (K´)ah Al-Ghul

Quote from: SplinterGU on November 20, 2012, 09:55:45 PM
una pregunta, o quizas tambien una sugerencia...

tu dices que la fisica se basa en gravedad y angulo de gravedad... pero no seria mejor poder definir objetos con (centro de) gravedad y que los demas objetos interactuen con este de acuerdo a la fuerza de gravedad que este objeto tiene y a la distancia que estan (obviamente el angulo se calcularia solo)?

por ejemplo, defino un objeto tipo planeta tierra (su centro) y la fuerza de su gravedad, ahora empiezo a poner objetos mas chicos, que seran atraidos por este centro, hasta encontrar un suelo, segun la distancia de este suelo se modifica automaticamente el angulo y la fuerza con que interactuan... lo mismo podria tener un objeto tierra y un objeto luna, ambos con su gravedad y los objetos que se aproximan a uno u a otro, seran afectados por la fuerza de gravedad de estos objetos.

no seria mejor que la cosa sea asi? digamos que solo cambiaria lo del angulo que seria calculado automaticamente...
curioso, se me ocurrio algo similar...
aun me falta codificarlo y probarlo
solo que ademas de la posicion (x,y) y la fuerza gravitatoria, coloque un limite o alcanze maximo (fuera de eso la gravedad provocada por la fuente es 0) y un factor de atenuacion (o cuanto se atenua por pixel)
con la posicion de la fuente y la propia del objeto se calcula la distancia y el angulo a la fuente
luego se obtiene un vector, al cual se le aplica la gravedad, se proyecta dicho vector en los eje X e Y, y se resta a la posicion del objeto


Rein (K´)ah Al-Ghul
Infected with the Krieger strain of the Human-MetaHuman Vampiric Virus.

en vez de darme Karma positivo, denme (K´)arma negativ

SplinterGU

Quote from: Rein (K´)ah Al-Ghul on November 22, 2012, 07:45:25 PM
Quote from: SplinterGU on November 20, 2012, 09:55:45 PM
una pregunta, o quizas tambien una sugerencia...

tu dices que la fisica se basa en gravedad y angulo de gravedad... pero no seria mejor poder definir objetos con (centro de) gravedad y que los demas objetos interactuen con este de acuerdo a la fuerza de gravedad que este objeto tiene y a la distancia que estan (obviamente el angulo se calcularia solo)?

por ejemplo, defino un objeto tipo planeta tierra (su centro) y la fuerza de su gravedad, ahora empiezo a poner objetos mas chicos, que seran atraidos por este centro, hasta encontrar un suelo, segun la distancia de este suelo se modifica automaticamente el angulo y la fuerza con que interactuan... lo mismo podria tener un objeto tierra y un objeto luna, ambos con su gravedad y los objetos que se aproximan a uno u a otro, seran afectados por la fuerza de gravedad de estos objetos.

no seria mejor que la cosa sea asi? digamos que solo cambiaria lo del angulo que seria calculado automaticamente...
curioso, se me ocurrio algo similar...
aun me falta codificarlo y probarlo
solo que ademas de la posicion (x,y) y la fuerza gravitatoria, coloque un limite o alcanze maximo (fuera de eso la gravedad provocada por la fuente es 0) y un factor de atenuacion (o cuanto se atenua por pixel)
con la posicion de la fuente y la propia del objeto se calcula la distancia y el angulo a la fuente
luego se obtiene un vector, al cual se le aplica la gravedad, se proyecta dicho vector en los eje X e Y, y se resta a la posicion del objeto



es que a medida que te alejas, la fuerza de atraccion de la gravedad va perdiendo fuerza, segun la fuerza (que tambien depende de la masa) es el radio de accion... aunque quizas no haya radio, sino fuerza segun distancia... y ese modelo es valido para cualquier cosa, macro y micro... ya que lo importante es donde se encuentre el centro de gravedad, puedes tener un escenario de 500mts o 1km y tener un centro de gravedad a 100km o 200km, no importa la distancia, pero la fisica deberia funcionar igual... como funciona en la vida real... para mi, es una unica simulacion... segun pienso, es un error pensar en una simulacion para macro y otra para micro... eso pienso yo, desde mi total ignorancia.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

KeoH

Pues ahí te equivocas Splinter !! xDDD Te lo dice uno que desperdició 5 años de vida en la Facultad de Física de la Universidad de Sevilla (España) hasta rendirse y cambiarse a Económicas jajajajajaja.

En un sistema micro ( una ciudad por ejemplo) el valor de la gravedad se toma constante y la dirección también. Para simplificar los cálculos .. no merece la pena utilizar la ley de gravitación universal para esos casos, porq la precisión no te hace falta y vas a tener un sobrecoste de calculo.

En un sistema macro (como un sistema planetario) si se usa la ley completa porq la dirección y la intensidad varían en el campo. También se hace una simplificación muy grande porque se estima que la masa del planeta es puntual. Si quieres considerar el volumen del planeta los cálculos se complican y para nosotros en este caso no nos aporta nada.

En la ley de gravitación universal el concepto de radio q aparece en la ecuación hace referencia a la distancia entre los dos puntos de masa, no al radio del planeta, la fuerza disminuye en intensidad con el cuadrado de la distancia, no linealmente.

Como bien dices Splinter para simular la gravedad se utiliza esta ley unicamente, pero si vas a simular un entorno micro como yo le digo, no merece la pena unos calculos tan costosos para los resultados q obtienes. Si vas a simular un objeto que orbita al rededor de otro si merece la pena, y aun asi se puede simplificar la cosa.

alex

Quote from: SplinterGU on November 22, 2012, 08:04:48 PM
Quote from: Rein (K´)ah Al-Ghul on November 22, 2012, 07:45:25 PM
Quote from: SplinterGU on November 20, 2012, 09:55:45 PM
una pregunta, o quizas tambien una sugerencia...

tu dices que la fisica se basa en gravedad y angulo de gravedad... pero no seria mejor poder definir objetos con (centro de) gravedad y que los demas objetos interactuen con este de acuerdo a la fuerza de gravedad que este objeto tiene y a la distancia que estan (obviamente el angulo se calcularia solo)?

por ejemplo, defino un objeto tipo planeta tierra (su centro) y la fuerza de su gravedad, ahora empiezo a poner objetos mas chicos, que seran atraidos por este centro, hasta encontrar un suelo, segun la distancia de este suelo se modifica automaticamente el angulo y la fuerza con que interactuan... lo mismo podria tener un objeto tierra y un objeto luna, ambos con su gravedad y los objetos que se aproximan a uno u a otro, seran afectados por la fuerza de gravedad de estos objetos.

no seria mejor que la cosa sea asi? digamos que solo cambiaria lo del angulo que seria calculado automaticamente...
curioso, se me ocurrio algo similar...
aun me falta codificarlo y probarlo
solo que ademas de la posicion (x,y) y la fuerza gravitatoria, coloque un limite o alcanze maximo (fuera de eso la gravedad provocada por la fuente es 0) y un factor de atenuacion (o cuanto se atenua por pixel)
con la posicion de la fuente y la propia del objeto se calcula la distancia y el angulo a la fuente
luego se obtiene un vector, al cual se le aplica la gravedad, se proyecta dicho vector en los eje X e Y, y se resta a la posicion del objeto



es que a medida que te alejas, la fuerza de atraccion de la gravedad va perdiendo fuerza, segun la fuerza (que tambien depende de la masa) es el radio de accion... aunque quizas no haya radio, sino fuerza segun distancia... y ese modelo es valido para cualquier cosa, macro y micro... ya que lo importante es donde se encuentre el centro de gravedad, puedes tener un escenario de 500mts o 1km y tener un centro de gravedad a 100km o 200km, no importa la distancia, pero la fisica deberia funcionar igual... como funciona en la vida real... para mi, es una unica simulacion... segun pienso, es un error pensar en una simulacion para macro y otra para micro... eso pienso yo, desde mi total ignorancia.

Splinter, creo que tienes mucha razon, yo lo veo que el modelo seria el mismo para cualquier distancia.
Pero para ser mas exactos, (la verdad es que seria muy costoso de trabajo), que yo creo que debe haber el minimo de leyes posibles, y a partir de ahi sacar las funciones para el calculo. Pues  que yo creo que las leyes fisicas estan regidas por leyes moleculares, y estas por los atomos, estas por neutron proton y electron, y estas por subparticulas, (la fisica cuantica). Y mucho nos queda por descubrir...

Segun esto, pienso que la mejor libreria de fisica (no hablando de fisica solo, sino de fisica-cuantica, quimica, etc.) seria una que organizara todas estas leyes, en una sola (la mas simple) y a partir de esta las derivadas, pudiendo crear asi funciones y funciones.

No solo eso, sino que asi se podria recrear facilmente el comportamiento humano (que no es mas que un monton de particulas chocando). y el futuro, analizando toda la materia y energia particula por particula. Claro, pero ya no estarias solo tratando de analizar las particulas de el tiempo en el que estas, sino de muchos mas universos temporales que al verlos en la el programa recreados, puedan afectar al espectador y cambiar sus pensamientos.
Y esto supondria crear unos nuevos ficheros, que lleven codificada la informacion de cada particula.

Aunque pueda parecer que se mucho, lo respondo como un chaval con mucha imaginacion XD, y que no tengo mucha idea.

En resumen... que para crear una lib de que incluya toda la ciencia todavia nos queda, pero que para una lib de fisica como decis prefiero la idea de Splinter, porque lo que se trata mas o menos es emular la realidad. Ya sea distorsionandola como el Mario Galaxy, o hacerla parecida como cualquier juego.

Quote from: KeoH on November 22, 2012, 08:29:11 PM
Pues ahí te equivocas Splinter !! xDDD Te lo dice uno que desperdició 5 años de vida en la Facultad de Física de la Universidad de Sevilla (España) hasta rendirse y cambiarse a Económicas jajajajajaja.

En un sistema micro ( una ciudad por ejemplo) el valor de la gravedad se toma constante y la dirección también. Para simplificar los cálculos .. no merece la pena utilizar la ley de gravitación universal para esos casos, porq la precisión no te hace falta y vas a tener un sobrecoste de calculo.

En un sistema macro (como un sistema planetario) si se usa la ley completa porq la dirección y la intensidad varían en el campo. También se hace una simplificación muy grande porque se estima que la masa del planeta es puntual. Si quieres considerar el volumen del planeta los cálculos se complican y para nosotros en este caso no nos aporta nada.

En la ley de gravitación universal el concepto de radio q aparece en la ecuación hace referencia a la distancia entre los dos puntos de masa, no al radio del planeta, la fuerza disminuye en intensidad con el cuadrado de la distancia, no linealmente.

Como bien dices Splinter para simular la gravedad se utiliza esta ley unicamente, pero si vas a simular un entorno micro como yo le digo, no merece la pena unos calculos tan costosos para los resultados q obtienes. Si vas a simular un objeto que orbita al rededor de otro si merece la pena, y aun asi se puede simplificar la cosa.


Si, en esa parte me parece bien tambien, porque consigues simplificar los calculos y economizar mucho.

SplinterGU

pero es que yo no hablo si vale la pena o no, yo digo que el metodo que digo sirve para ambos... que valga la pena o no, es otra cosa, pero no puedes negar que no sea valido... o sea, que si yo lo aplico no funcione...

y como sea, me cuesta imaginar el tema del angulo de gravedad... en todo caso, ya que quieres simplificar y hablas de constantes yo diria que ni siquiera se necesita el angulo de gravedad, este deberia ser siempre perpendicular al piso, o sea, 90 grados... si queremos simplicar, simplifiquemos... pero no me parece logico que si quiero que el objeto flote tener que invertir el angulo de gravedad, ya que incluso estaria afectando a todos los objetos y quizas el que vuele es 1 solo objeto... que repito me parece que no deberia tener que modificar el angulo de gravedad para eso, sino aplicar otras fisicas con el mismo angulo de gravedad que afecta al mundo simulado.

por tu explicacion y desde donde lo veo, no veo que me equivoque, simplemente podemos decir que se puede simplicar poniendo constantes ciertas cosas, pero en ese caso, tambien deberia ir constante el angulo... con lo que toda la charla carece de valor... si hablamos de angulo, entonces hablemos de un centro de gravedad a nivel simulacion de la vida real.

repito, no estamos hablando de que merece la pena, sino estamos hablando de algo mas bien real... si quieres simplificar que me parece perfecto, entonces deberiamos tambien simplificar el tema del angulo... ya que yo no lo veo logico... o sea, da efectos chulos, pero no lo veo como realidad...

igual, hablo desde mi total ignorancia, lamentablemente yo no pase 5 años en una universidad de fisica (cosa que me gusta, mas que nada la fisica cuantica).
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

y quisiera agregar, en el caso del objeto que flota o vuela, el angulo de gravedad no deberia variar, sino que lo que pasa es que se le aplica una fuerza externa y contraria que hace que este levite o flote, o por ejemplo, un viento que hace volar a todos los objetos.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

KeoH

Quote from: SplinterGU on November 22, 2012, 08:49:13 PM
y quisiera agregar, en el caso del objeto que flota o vuela, el angulo de gravedad no deberia variar, sino que lo que pasa es que se le aplica una fuerza externa y contraria que hace que este levite o flote, o por ejemplo, un viento que hace volar a todos los objetos.

Exactamente eso es lo que te iba a comentar ahora jejeje. Si tienes razón, el ángulo sería constante, a eso me he referido cuando decía dirección (la dirección del vector). Pero el tema de poder cambiar ese vector podría dar juego en algunos casos, en los juegos. Si por supuestamente pretendes simular la realidad, eso no tiene sentido.

Y por supuesto si quiero que un objeto levite, tendría q aplicarle una fuerza de intensidad igual (modulo del vector) y dirección igual al peso del objeto dentro de ese campo gravitatorio, con lo que el objeto tendría dos fuerzas actuando sobre el (vectores) que se anularían la una a la otra y el objeto flotaría.

Finalmente esa gravedad no es mas que una aceleración constante en modulo y dirección, que origina una fuerza sobre un objeto en función de su masa, lo que sería el peso. Si