Foros - Stratos

Programadores => Programación gráfica => Mensaje iniciado por: Haddd en 18 de Octubre de 2002, 11:54:42 PM

Título: Render to Texture
Publicado por: Haddd en 18 de Octubre de 2002, 11:54:42 PM
                                ¿Cómo puedo saber si una tarjeta soporta Render To Texture en DX8.1?

Otra cosa, al destruir la textura, D3D me dice:
Direct3D8: (ERROR) :************************************************************
Direct3D8: (ERROR) :ASSERTION FAILED! File d:buildsnt32_chkmultimediadirectxdxgd3d8fwmipsurf.hpp Line 75: m_cRefDebug == 0
Direct3D8: (ERROR) :************************************************************

Sin embargo, yo hago:

   RenderTarget->m_Textura->GetSurfaceLevel(0,&pSurf);

   Device()->SetRenderTarget(pSurf,m_StencilSurface);

   RenderTarget->m_Textura->Release();

Y por tanto reduzco la referencia.

¿Alguien sabe porqué me da el error?                                
Título: Render to Texture
Publicado por: _Grey en 20 de Octubre de 2002, 03:45:31 AM
                                No estaras destruyendo la textura cuando esta como el target para renderizar no!?                                
Título: Render to Texture
Publicado por: Haddd en 20 de Octubre de 2002, 09:59:24 AM
                                No, no lo hago                                
Título: Render to Texture
Publicado por: _Grey en 20 de Octubre de 2002, 10:43:19 PM
                                Puedes usar CheckDeviceFormat() para comprobar si soporta los render a texturas, en la doc encontraras como hacer la llamada.

Tambien podrias probar a usar CreateRenderTarget en lugar de la superficie de la textura en si.

ya nos contaras!

chao. 8)                                
Título: Render to Texture
Publicado por: Haddd en 21 de Octubre de 2002, 07:05:52 AM
                                Probaré lo del Create y lo del Check. Gracias por todo