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 - MA]Mestre

#196
Programación gráfica / Ogl En Dos Ventanas
15 de Julio de 2003, 03:52:44 PM
Cita de: "MAMestre"] Este... tienes dos soluciones. O creas y destruyes el contexto dinámicamente en el paint de cada objeto ( como el hdc con BeginPaint,EndPaint,GetDC,ReleaseDC ) , o bien te creas un hilo por objeto, lo cual produce que cada hilo disponga de un dispositivo de contexto independiente.
Un saludo.
#197
Programación gráfica / Ogl En Dos Ventanas
15 de Julio de 2003, 03:52:09 PM
Cita de: "MAMestre"] Este... tienes dos soluciones. O creas y destruyes el contexto dinámicamente en el paint de cada objeto ( como el hdc con BeginPaint,EndPaint,GetDC,ReleaseDC ) , o bien te creas un hilo por objeto, lo cual produce que cada hilo disponga de un dispositivo de contexto independiente.
Un saludo.
#198
 Aureal esta bien el test, pero me parece un poco confuso el info.txt resultante. Además depende que opciones de config selecionas simplemente revienta antes de tiempo.


Usad VBO q para eso estan
...nada tiene que ver una cosa con la otra  :blink: ... ...los compiled_vertex_arrays se pueden utilizar con VBO son complementarios no excluyentes.


P.D: Aun espero el link de ethernet con la info de nvdia donde habla del tema en cuestion, o el pdf que me prometio que me enviaria...
#199
Proyectos / Cojoncio Arena: Severancio Güarrior
09 de Julio de 2003, 07:49:40 PM
 Siempre cabe más sange xDDDD  (twist)  
#200
Programación gráfica / Ogl En Dos Ventanas
09 de Julio de 2003, 04:40:36 PM
 es simple...
un hilo es responssable de recoger los mensajes de ventana de todos los 'CreateWindow' que el realize. A partir de esta regla, no puedes crear 'labels' desde un hilo y este acabar sin más. El hilo creador de los labels debe estar enbuclado dentro del bucle de mensajes, como el de la WinMain


   DWORD WINAPI mihilo ( ....

    ....
   bla bla
   CreateWindow (...
   bla bla
   ...
   while (GetMessage (&msg, NULL, 0, 0))
{
               TranslateMessage (&msg);
               DispatchMessage (&msg);
}


de esta forma, los controles creados podrán recibir mensajes y ser procesados en el correspondiente procedimiento ventana.

A ver si arreglas el problema.  B)
Un Saludo.
#201
Proyectos / Cojoncio Arena: Severancio Güarrior
08 de Julio de 2003, 02:43:50 PM
 jejeje... como mola jejejej... te faltan " fatalytis " ( o como se diga) puede ser una buena escusa para poner más sangre xD


Enhorabuena.  (ole)
#202
Programación gráfica / Ogl En Dos Ventanas
07 de Julio de 2003, 04:24:04 PM
 Este... tienes dos soluciones. O creas y destruyes el contexto dinámicamente en el paint de cada objeto ( como el hdc con BeginPaint,EndPaint,GetDC,ReleaseDC ) , o bien te creas un hilo por objeto, lo cual produce que cada hilo disponga de un dispositivo de contexto independiente.

Como creo que estas en la segunda opción y te da problemas, te diré que desde el hilo debes crear el 'label', de esta forma este será el encagado de recoger todos los mensajes del mismo, como consequencia ese hilo debe estar embuclado en el  ' bucle de mensajes' ( supongo que esto es lo que te falta ).

Un saludo.
#203
Programación gráfica / Memoria para texturas
19 de Mayo de 2003, 07:44:34 PM
                                Hola deadLock++,

Creo que no es posible conocer la memoria libre en una tarjeta gráfica.
El cálculo que realizas es erróneo, que tu tengas la textura guardada en un puntero que reservaste 50k no quiere decir que se guarde con el mismo tamaño ( Mipmaps, Compresión de texturas ), en cualquier caso el tamaño final dependerá de la arquitectura de la tarjeta y el driver.

CitarSi no existe mas memoria e intento cargar una textura ¿que ocurre? ¿descarga alguna otra o me arroja un error?

Depende de la arquitectura de la tarjeta y el driver. Pero tengo entendido que no te dará un error de que no puede crargar la textura ( te la metera en disco, mem convencional ).                                
#204
                               
Citardisplay list es _siempre_ mas optimo q compiled vertex arrays

ethernet una afirmación tan rotunda exige una url mas precisa xDDDD. He buscado por la web de nvidia pero no lo vi, no es que desconfie de tus palabras pero me gustaria leerlo de primera mano.

a10.
P.D: Ayer te busque por irc para preguntartelo pero no te vi. Así que lo dejo aquí.                                
#205
Programación gráfica / Interpolación
02 de Abril de 2003, 09:31:33 AM
                                Siempre que hago interpolación entre dos puntos lo hago con interpolación lineal, interpolación por coseno o interpolación cúbica dependiendo del caso. Creo que la que buscas es la lineal.

Interpolación lineal

return a*(1-x) + b*x

siendo 'a' y 'b' los dos puntos a interpolar, y 'x' un valor entre 0 y 1. Cuando x es igual a 0 retorna a, cuando x es igual a 1 retorna el valor de b.

No se si es exactamente lo que buscas, pero espero que te sirva de ayuda.
a10.                                
#206
                               
CitarCreo q la clave de compiled vertex array esta en q al indicarle q vertices bloqueamos puede enviar a la memoria de la tarjeta esos vertices y poder trabajar con ellos mas rapidamente.


Hi,

Los Display List almacenana un grupo de comandos OpenGL, quedan precompilados, optimizados por el driver y almacenados en memoria. Despues con una llamada a glCallList se ejecutan los comando precompilados. glCallList es llamada obviamente desde la funcion Render y la creación de la lista fuera. Con los compiled vertex array eso no es así, durante el render se bloquean los vertices en memoria de comandos como glDrawArrays(), glArrayElement(), glDrawElements() para que se puedan aprovechar los calculos de vertices comunes. Seguidamente se desbloquean.

Citar...nvidia recomienda usar display list antes de compiled vertex array como es logico...

Otra cosa será ¿que puede resultar más óptimo?, si bien utilizar listas o compiled vertex arrays. Supongo que cada uno tendra su momento a no ser que nvidia en su implementacion de las display list realice un reaprovechamiento de informacion de vertices comunes en la llamada de glCallList .Me gustaria, si te acuerdas, de la referencia de donde leiste que nvidia recomendaba usar list antes de compiled vertex array.

a10.                                
#207
                                La extension compiled_vertex_array aporta las funciones glLockArrays y glUnlockArrays que bloquean/desbloquean en memoria los datos de las llamdas a las funciones glDrawArrays(), glArrayElement(), glDrawElements().

glLockArrays... ( se bloquean )
  glDrawElements ...
  glDrawElements ...
glUnlockArrays... ( se desbloquean )


Desde que se bloquea hasta que se desbloquea, cualquier vertice que se tenga que calcular por segunda vez, se reusaran los calculos del primero ( transformaciones, iluminación... ).

Espero que sea de ayuda.
a10.

P.D: Degiik peazo cantidad de mensajes llevas xD                                





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.