Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Motor3D y dx_lib32: El renacimiento

Iniciado por Manu343726, 24 de Febrero de 2012, 09:29:23 AM

« anterior - próximo »

Manu343726

#15
Entiendo tu razonamiento, el problema es que no lo puedo aplicar. La estructura del motor está diseñada de manera que el pipeline gráfico únicamente se inicie si ocurre alguna modificación de la escena (Los rombos marrones). La idea original era que la escena solo se renderizara al final de dicho proceso, es decir, el renderizado solo se ejecuta al ocurrir alguna modificación. Éste método contrasta con el funcionamiento de un renderer normal, en el que el renderizado normalmente se realiza contínuamente. (Hay que tener en cuenta que mi biblioteca se apoya en operaciones de dibujo externas)

Para "casar" el pipeline con dx_lib32, el dx_lib32Renderer contiene una lista de primitivas, que son dibujadas contínuamente en el bucle de dx_lib32. Dicha lista es modificada autmáticamente al finalizar el pipeline.  Y aquí está el problema: Si las modificaciones son constantes, dicha lista se actualiza contínuamente. Como el motor no es multihilo, el proceso de actualización de la lista roba tiempo al bucle de renderizado.

Conclusión: Muchas actualizaciones = 0 tiempo de renderizado.






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.