Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Quaterniones

Iniciado por CoLSoN2, 07 de Enero de 2003, 05:37:27 PM

« anterior - próximo »

CoLSoN2

                                He estado leyendo algo sobre ellos y me preguntaba si valía la pena el implementarlos (para rotaciones, cámara y demás), más que nada porque sé poco de ellos.

--saludos                                
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

Grugnorr

                                En mi opinión, úsalos seguro, pero no es necesario que los implementes. No creo que sea muy importante saber bien como funcionan y saber implementarlos. Usarlos sí.

Así que tienes las D3DX si usas DX, sino busca código por ahí. No sé donde ví yo los Quaternions del Unreal....                                
hat the hells!

BeRSeRKeR

                                Una vez Tim Sweeney contribuyó en el COTD de Flipcode con una libreria matemática que incluía el manejo de quaternions

http://www.flipcode.com/cgi-bin/msg.cgi?sh...orum=cotd&id=-1

de todas formas, si utilizas DX, no dudes en utilizar D3DX que seguramente estén más optimizadas y además más integradas con D3D :ojo:

Saludos                                
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

CoLSoN2

                                coñe, no me refería a implemntar una librería matemática de quaterniones XDDD

sino a utilizarlos

sonoro me ha estado informando un poco sobre el tema. Y para una cámara en 3º Persona, si tengo el quaternion de rotacion del objeto "protagonista", como podría conseguir la posicion de la cámara? Digamos que también tenemos la posición del objeto así como la distancia entre ambos.
¿Debería usar D3DXMatrixRotationQuaternion Para conseguir una matriz de transformación a partir del quaternion y transformar la matriz de vista, para luego trasladarla?

Se aceptan sugerencias ;-)                                
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

_Grey

                                Disculpar mi ignorancia......


........... pero realmente sirven para algo mas que complicarse la vida??

Chao!                                

Haddd

                                Yo también creía que eso de los quaternions no era necesario, sin embargo me equivocaba. Cuando tuve que rotar una nave usando las típicas matrices de rotación eulerianas, me encontré con el problema del Gimbal Lock, que provoca que la nave no responda de la manera que tu esperas. Por ello acudí a los quats que me solucionaron el problema. A fin de cuentas, a ti te da lo mismo, porque el input son los 3 ángulos y el output una matriz. Una vez tienes esa matriz, ya puedes efectuar cualquier operación para obtener la información que tu necesitas                                

Grugnorr

                                Hace unos años hice una preciosa práctica de Informática Gráfica, una maravillosa lata de CocaCola con todos los efectos que supe meterle, texturas, iluminación,niebla... lo que trae la guía Anaya de OGL  :jaja: ...

EL resúmen es que parecía que además de CocaCola llevaba whiskey, porque tras rotarla un poco por los 3 ejes, empezaba a rotar en plan borrachuzo....  :jaja:

Los quaternions tienen otros usos aparte de evitar el Gimbal Lock, la interpolación de rotaciones era más suave, o algo así :P. Busca en google....


PD: En gamedev hubo una discusión muy tocha hace un año o algo así....                                
hat the hells!

BeRSeRKeR

                                Aquí tienes el enlace al polémico artículo de Diana Gruber

http://www.gamedev.net/reference/articles/...article1199.asp

en él también encontrarás la retaila de posts que se produjeron a partir de dicho artículo :-?

Saludos                                
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

x-alien

                                que bueno!! una tia k le hecha cojones al asunto y se enfrenta con gente de opinion opuesta, ole la tia!
bonitos comentarios y muy verdaderos, la verdad duele juas juas

Software engineers, in general, are not mathematicians.

segun lo k he leido... quaternions sux sux

aun no le veo sentido usar quaternions en dx...

salu2

pd. bonita la matematica de matrices esa... usando 3 angulos uhh uhh... curioso, pero prefiero los vectores de toda la vida... john carmack usa quaternions... si los usa, los uso, si no los usa ni me complico la vida en verlos juas juas...                                
oy Grafista, no Programador, aun así programo mejor que un 'programador'

Mars Attacks

                                A mí me ha convencido. Para los que no le apetezca leer y traducir la web entera, les resumiré diciendo que los quaterniones son una complicación en cuatro dimensiones y geometría no euclidiana de transformaciones que se pueden hacer en tres dimensiones con geometría euclidiana. Da varias pruebas de ello (incluyendo cómo hacer una interpolación perfecta de rotaciones, grugnorr ;)) y manda a paseo a todos los que vayan a criticarla por decir y demostrar que los quaterniones no son necesarios ni mejores para los motores 3d.                                

Grugnorr

                                La tía esa no ha hecho nada decente desde los tiempos del MS-DOS  ;)

Haced lo que os plazca, cuando queráis rotar arbitrariamente sobre los 3 ejes, tendréis que iros a soluciones más complicadas si usáis matrices y ángulos eulerianos, algo de regeneración de la base no-sé-qué (ortonormal? :P) :jaja:


Evidentemente los Quaternions NO son NECESARIOS, pero es una mejor herramienta para ciertos problemas.

PD: Afortunadamente los SWEngineers no somos matemáticos, ni los matemáticos SW Engineers ;)                                
hat the hells!

Daventry

                               
CitarPD: Afortunadamente los SWEngineers no somos matemáticos, ni los matemáticos SW Engineers

¿Desde cuándo eres un SW Engineer?  :ojo:                                
img src='http://www.danasoft.com/sig/vipersig.jpg' border='0' alt='user posted image'>

Grugnorr

                                Desde que aprobé Ingeniería del SW  :jaja:   :jaja:  :jaja:

Me siento mucho más identificado con eso que con un matemático, te lo puedo jurar ;)                                
hat the hells!

CordayUK

                                pos a mi me parecen de lo mas bonitos y utiles. ahora alla cada uno :)
a fin de cuentas, que mas te da llamar a CreateMatrixRotation (ejes...) que CreateMatrixRotationFromQuaternion (CreateQuaternionRotation (ejes)) ???

con DX ya tienes las funciones necesarias para manejar quaterniones de manera sencilla. Una vez que los entiendes ves que son una chorrada y que de raros solo tienen el nombre.
Para los neofitos: un quaternion es un numero complejo formado por cuatro valores, x y z w  La x,y,z describen un eje y la w describe la cantidad que rotas sobre dicho eje.
Para mi las ventaja de usar quaterniones es que la interpolacion entre dos quaterniones es mas sencilla que entre dos matrices, ademas que mas suave.
Por no decir que ocupan menos memoria que las matrices y son mas rapidos de usar :)

para entender matrices y quaterniones, y si os animais haceros vuestra propia libreria...
http://skal.planet-d.net/demo/matrixfaq.htm                                

ethernet

Pero si un quaternion es un vector y un angulo de rotacion, q tienen de complejo?, ademas hay 80 libs/bytes^2 en inet XD


saludos






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.