-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 2015-03-16 um 17:38 schrieb Matteo Bruni:
On AMD UpdateTexture seems to always convert data between different formats (e.g. A8R8G8B8 -> R32F, red has the correct converted values). I'm not sure about the UNORM -> SNORM conversion, that one might be broken but I didn't look very hard into it. On Nvidia it looks like data is copied if the source and destination formats have the same bpp (e.g. UNORM -> SNORM, but even A8R8G8B8 -> R32F gives the expected result of a "reinterpretation" of the data as in the destination format), otherwise nothing happens and the destination texture stays black. When it does work data is just copied, e.g. the X channel is copied intact into the A channel in X8R8G8B8 -> A8R8G8B8. For what it's worth, the X channel seems to be preserved on AMD too. Thanks for testing this. I'll at some later point do a similar test with ddraw blits. We know ddraw blits can stretch, convert between formats and transfer between different memory pools, but so far we don't know if they can do all 3 of those things at once.
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBAgAGBQJVBy/BAAoJEN0/YqbEcdMwjcEQAIWAW2DhYmJzCZJ4Fgf0/05M OOvffZgP2G07Zo1EUVx8xea7Ee2ijdd3NRp+m698OzQmrTv/mSvdl6GDPBuWg9VX zEYow41c8EIBcxG3LaRaKP6pLUqbd8zVm3r/ggcc+5n53oBXj0Y7POaY2RGggyC/ hgmfWEUUR11WfiJ2Z67C+i05JUSeye19K8C7EFyRmgesBUS0Ir9MuW1EdjIqOxwO S75IMMqiG8tKctE+CaGSouWwMmw1aT2kA04GAIpzOi3+Orpwn7SkoQYVrhXRMA0B kgbVf7ap8cVQrafuEDP4dM99qLZ5PS5Jrs5eRzIq9E1QKE3JyNg4Y7xqhsfcApYQ lrmBqLJpSk8b3T4PjQCZo6sPqa+S4LVYO+joFhAZCEzbHOxKVoijSn0dAkr1PjuY X097wPPU7V1BPhbS5Tm2s2w1UTtMNKpNFg5JFc98Raj6anSHaKpAtZMqL4qG3VYB yqSA89T/0gB2Zva5RT0yVqJC+h4Tq72EzubV+8v97qZVgDyidd1WrhFSlCRYvq2n HKM/uTe7bLFOAdoNuuRXpGh+ukzRemXqKRLNY3u/ozszmceS5KK1STSHsv8m+D+s UlS7kU4GXz/U5OU2rdMkO6yfGnnR2I85Hj3DJnfltzkZMntnfR3PD9AMmlnY7GlJ PNbwF8NjeuhKFN7ZD5Tx =tD/j -----END PGP SIGNATURE-----