Bonjour,
dans mon appli, j'ai deux parties, une qui calcule une image a partir de données et une qui va afficher l'image calculée.
Pour cela, je fais donc deux gros memcpy, le premier qui construit l'image (en fait je fais une transition entre deux images, donc l'image change a chaque frame) et le deuxieme qui copie les données construites dans la texture finale.
Cela marche très bien mais malheureusement tout cela fait énormément baisser le frame rate.
Auriez vous une idée de comment je pourrais optimiser cela ?
En gros, je créé d'abord l'image finale a partir des deux images comme ca :
memcpy(m_pResultData,pDest,iPitch*iFrame);
m_pResultData+=iPitch*iFrame;
memcpy(m_pResultData,pSource,iPitch*(m_iImageHeight - iFrame));
je retourne m_pResultData
et dans mon autre module, pour l'afficher :
memcpy(pBuffer,pData,iPitch*Desc.Height);
je mets les données dans pBuffer, qui est le buffer de la texture.
sachant que c'est des images par exemple en 512*512*4 donc ca fois deux fois ca avec les deux memcpy...
D'avance merci
Partager