Hola ,soy nuevo en estos pagos de los foros de stratos ,por eso me presento ,soy "el que se rompe el Orto (o culo)" no es por joder o algo por el estilo ,pero a la ora de buscarme un Nick no encontre otro que me encaje mejor que este :D.
Bueno les cuento que tengo un problema en D3D8 para proyectar un punto 3D a 2D .Con la funcion de la D3DX para proyectar ,esta me realiza
una proyeccion en un sistema raro de ejes 2D de D3D8 en el cual el origen esta en el centro de la pantalla y no en la esquina superior izquierda de la misma, he buscado un poco pero en la doc. de la API pero
no encontre nada ,no lo se quizas me rompo tanto el te tuje , que ya no cordino bien el trafico de ondas cerebrales.
Bueno Un Saludo y si alguien sabe algo y contesta estare muy agradecido.
No entiendo lo que quieres decir...... :(
En un sistema 3D el origen esta en el CENTRO de la pantalla..... :I
con lo que esa funcion funciona bien ... nop?¿
Tratare de ser mas claro:
La funcion "D3DXvec3Project()" ,toma un punto 3D ,osea en el espacio,
y lo proyecta al espacio de la pantalla ó "screen cordinates",ahora bien,
las cordenadas que me devuelve esta funcion no son las convensionales, sino unas extrañas cuyo origen esta en el centro de la pantalla y no en la esquina superior.
Pongo un ejemplo: Si un punto proyectado aparece en el centro de la pantalla ,y si la resolucion es de 800x600 las cordenadas deberian ser
(X=400 ,Y=300) , pero la funcion "D3DXvec3Project()" me devuelve
(X=0 ,Y=0) , y si por otro punto aparece en la esquiena superior izquierda
las cordenadas deverian ser (X=0,Y=0), pero la funcion que mencione
me da por ejemplo (X=-2300 ,Y=1300) ,en definitiva otro sistema de cordenadas. bien si alguien sabe como convertir esas unidades o conoce
otra funcion y/o algoritmo les agradecere mucho.
Un saludo.
te falta la transformacion de viewport que es la que mapea de coordenas proyectivas a pantalla
xf = xo*resx/2 + resx/2
yf = xo*resy/2 + resy/2
yf = yo*resy/2 + resy/2
quiero decir
Gracias "mac^threepixels" ,espere la respuesta pero llego ReMilGraciaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaassssssssssssssss. :D