-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 2015-05-26 um 13:03 schrieb Henri Verbeet:
On 26 May 2015 at 12:54, Stefan Dösinger <stefandoesinger(a)gmail.com> wrote:
I tried to move the code to resource_init and the non power of 2 handling is a big problem. resource_init doesn't care about power of 2 and non power of 2 sizes, and I don't think it should. It would need to know that though to switch between 2D and RECT.
What is the issue exactly? I'd have to move or duplicate the power of two size calculation (texture.c lines 1092 - 1123) to resource_init, and I don't think the generic resource code should have to deal with this functionality that is very specific to 2D textures. Passing a "this is a np2 texture" flag to resource_init is a possible option, but it would still take quite a bit of 2D texture specific code along with it (in particular the switch between true NP2, faked WINED3D_GL_NORMALIZED_TEXRECT NP2, ARB_texture_rectangle and 2D texture emulated NP2).
I'm not saying we can't do it that way. I just don't think it is nicer. I'll see if I can extract the flag checks into a separate function that texture_init and resource_init can call. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBAgAGBQJVZFoKAAoJEN0/YqbEcdMwk8cP/2yLi7Ol7FJU/YFsjA50IAGG 0WpmXBNw93UQLU8DK63+l4+0y+ExqpvO27ACkmMotwAVJT8WhNIK8wxWQ2uUiirD jXCLq1dq70o4X7xm5odjY0x2k6zqDcbeptdQ0j9U0cy8GxedmII8wKEH7FZEOtsW 2v/6BCP7z300nfDGu3Gpv9i9M0KZ0OyS2D8CiPgxl1k4TU2diDEcTHwCPEAPTOpB 73a9aWJfn27nGAYJcGlpe14lNxBuHTzP8E+QSk2Jiv3lySPWi3WonArmjTRnexkW vgoR5ZCn+7SYo99qMJI2TM2gvdDKwbfckriSnJLGNiZjgi2OWRwXN1TVCWn6W0gu kZQ/cjrEfgkxb87vpQViM/+mwoKcdLL4PDJyHWIx5cBkjkyCbaGsGpzI5MTlvYa4 SNs83DRdGlAt5GQo7tAORRYBbUPXfVI1zCtwYwfVwOWmPQ10WppnKy4zuH+TOad4 H07sRm+xhYWBqw5TB11z3j0Yp/HSfnvYeks66ZdHe8iVL0YuzSONfy3gVX2DQqoK xY8tERj9IkRwUcpyepV5nO57tk32VRiUv3FWqyx7g8xWJTd17gF2fXZPSpAhTbcX 778iXhtmPFm/6wedHcr7a2fECM3ZaaKSaX+Ch9jhKadvxSIx57TjmlntWv7jt8OE BzPGbwd56AVgu0uJmi47 =lNvw -----END PGP SIGNATURE-----