Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - Malandrin

#76
Programación gráfica / Un problemica con las 3D
01 de Enero de 1970, 01:00:00 AM
                                Muchas gracias tio!!, con lo del wbuffer va perfecto... por cierto, si no es mucho pedir me podrías explicar que es esto del wbuffer??                                
#77
Programación gráfica / Un problemica con las 3D
01 de Enero de 1970, 01:00:00 AM
                                Gracias por responder, por cierto, como aumento la profundidad del zbuffer? :sonriendo:                                
#78
Programación gráfica / Un problemica con las 3D
01 de Enero de 1970, 01:00:00 AM
                                Hola, estoy haciendo pruebecillas cargando modelos con el direct3d y vale, guay, me sale en pantalla y eso, el problema es que en partes de algunos modelos hay poligonos mu juntos (los coplanares esos) y el zbuffer falla viendose partes posteriores del modelo que no deberían verse. He estao mirando lo del bias ese pero me parece una solución un tanto cansada, hay alguna solución mejor?? gracias.                                
#79
Off-topic / Emotion Engine ?
01 de Enero de 1970, 01:00:00 AM
                                Astat, donde se puede pillar una camiseta como esa? (tienes una o las has sacao de algún lao?)                                
#80
General Programadores / El formato JPEG se patenta :(
01 de Enero de 1970, 01:00:00 AM
                                ¿El MP3 es de pago?, lo oí hace tiempo, pero al ver que las directx traen reproductor mp3 y tal pensé que era mentira... alguien me lo confirma por favor.                                
#81
General Programadores / API de windows (creo)
01 de Enero de 1970, 01:00:00 AM
                                  Hola, he hecho una pequeña pruebecilla con sockets emulando el comando net send de windows 2000 (el que manda un mensaje a otro usuario y el mensaje sale en pantalla con un messagebox). Bien, el programilla ya lo tengo funcionando, el problema es que al recibir un mensaje, aparece el messagebox pero no delante de todo, es decir, que si tengo otro programa abierto el messagebox no se ve (está debajo), he probado a usar la funcion BringWindowToTop pero sigue sin funcionar, alguna idea??. Gracias.                                
#82
Programación gráfica / Cositas D3D v.2.0
01 de Enero de 1970, 01:00:00 AM
                                  Hola otra vez!, siguiendo con mi aproximacion a las direct 3d me surge la siguiente pregunta: cual es la mejor forma de guardar la información relativa a un modelo 3D en memoria?? En un principio pensaba guardar las caras asignadas a cada material, pero esto supone repetir en memoria un monton de vertices en los que solo cambia la U y la V, y a la hora de hacer las transformaciones y demás no se si se harán con todos los vertices o quien sea descubre que estan repetidos y solo los transforma una vez. La otra forma que se me ocurrió es tener un array con todos los vertices -sin repetir ni na-, y tener las caras (tambien ordenadas por textura) con las posiciones de los vertices que ocupan en el array de vertices y con informacion U,V, lo malo de esto -entre otras cosas, supongo- es que en cada tick hay que ir construyendo todo el modelo. Po eso, cual creeis que es la mejor forma de hacerlo? (no entre estas dos claro, sino del mundo mundial). Gracias.                                
#83
Programación gráfica / Cositas de las D3D
01 de Enero de 1970, 01:00:00 AM
                               
 Iujujuuuuuuuiiiii... pues si, esa era la solución, cambiar el near a 1.f, ahora ya va bien, gracias a todos!!.                                
#84
Programación gráfica / Cositas de las D3D
01 de Enero de 1970, 01:00:00 AM
                                  Hola, pos más o menos hago esto:

//Para iniciar el 3d3:

m_pD3D = Direct3DCreate8(D3D_SDK_VERSION);

m_pD3D-> GetAdapterDisplayModeD3DADAPTER_DEFAULT, &d3ddm)

ZeroMemory( &d3dpp, sizeof(d3dpp) );
d3dpp.Windowed = true;
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;
d3dpp.BackBufferFormat = d3ddm.Format;
d3dpp.EnableAutoDepthStencil = true;
d3dpp.AutoDepthStencilFormat = D3DFMT_D16;

m_pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, d3dpp, &m_pD3DDevice);


//Lo del renderstate
SetRenderState(D3DRS_CULLMODE, D3DCULL_CW);
SetRenderState(D3DRS_ZENABLE, TRUE);
SetRenderState(D3DRS_LIGHTING, FALSE);

// Al dibujar
Clear(0, NULL, D3DCLEAR_TARGET | D3DCLEAR_ZBUFFER, D3DCOLOR_XRGB(255,255,255), 1.0f, 0);
BeginScene();

// Origen camara vale (0.f, 0.f, -2000.f) y
// destino camara vale (0.f, 0.f, 0.f)

D3DXMatrixLookAtLH(&matView, &m_vec3OrigenCamara, &m_vec3DestinoCamara, &D3DXVECTOR3(0.0f, 1.0f, 0.0f));

SetTransform(D3DTS_VIEW, &matView);

// Pongo 1000.f pal far, pero he probao con
// valores mas cercanos y mas lejanos

D3DXMatrixPerspectiveFovLH(&matProj, D3DX_PI/4, 1.0f, 0.f, 1000.0f);

SetTransform(D3DTS_PROJECTION, &matProj);

EndScene();
Present(NULL, NULL, NULL, NULL);

Los modelos los cargo de un fichero generado por un plugin del max que va bien. Todos las caras llevan sentido CW. No desaparecen siempre las mismas caras, es decir en el momento 0 se ve la cara frontal (p.e.), giro un poco la camara y ya desaparece este cara.

Ufff, q coñazo que he metido... un saludo y gracias.!

P.D.: Por cierto, cual es la mejor forma de tener almacenado un modelo? yo ahora tengo un array con los vertices, otro con las texturas y por cada textura un array con las caras de esas texturas, luego al dibujar voy componiendo y dibujando triangulo a triangulo (¿una forma estúpida?). Lo he hecho de esta manera para no duplicar los vertices cuando sus valores U,V son distintos... por ello repregunto otra vez: cual es la forma más rapida para hacer todo esto?? (pintar modelos:). Gracias otra vez.                                
#85
Programación gráfica / Cositas de las D3D
01 de Enero de 1970, 01:00:00 AM
                                Hola, la 'desaparición' de poligonos también ocurre con modelos de 1000 y pico caras y 10 texturas, por lo que echarle la culpa a la tarjeta creo que puede descartarse. Saludos.                                
#86
Programación gráfica / Cositas de las D3D
01 de Enero de 1970, 01:00:00 AM
                                Hola de nuevo. El problema no creo que esté a la hora de girar ya que simplemente uso las funciones de d3d y en algunos modelos ya desde el principio desaparecen triangulos. En cuando al sentido de los vertices, lo he comprobado y todos son de la misma forma (CW). Ahora mismo no tengo el código aquí, mañana lo posteo. Saludos.                                
#87
Programación gráfica / Cositas de las D3D
01 de Enero de 1970, 01:00:00 AM
                                Holap, si hago las dos cosas que indicas (crear el zbuffer y borrarlo en cada tick) y de esto no es... en fin, gracias.                                
#88
Programación gráfica / Cositas de las D3D
01 de Enero de 1970, 01:00:00 AM
                                Hola, pues me hallo toqueteando y probando las Direct3D y resulta que tengo el siguiente problema: Cargo un modelo y se me ve bien, lo roto y demás y entonces es cuando empiezan a desaparecer triangulillos, giro un poco más y vuelve a aparecer. Lo mismo ocurre si tengo un objeto detrás de otro, en determinados giros parte del de atrás se ve por delante del que realmente está delante. Tengo el zbuffer activado y el backface culling, el backface culling lo he probado de todas las formas (NONE, CW, CCW) y nunca se ve bien... alguna idea de que puede ser (porque ya está empezando a fastidiarme)?? Gracias.                                
#89
Programación gráfica / Plugins MAX
01 de Enero de 1970, 01:00:00 AM
                                Holap... soy un chapas, lo sé pero sigue sin funcionarme :_( ... me lo pedeis explicar como si fuera un niño de 8 años? :sonriendo:  Gracias.                                
#90
General Programadores / Programador principiante
01 de Enero de 1970, 01:00:00 AM
                               
 El tiempo no es algo que sobre hoy en día en un desarrollo comercial. No hablo de tirar pa'lante con 4 cosas como base, hablo de crear un engine funcional con lo básico que necesita el juego. No es factible perder el tiempo en crear funcionalidades que no se van a usar. Y como bien dices, esta tambien es mi opinión :lengua:                                





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.