Puzzling issue. I have a code path that creates a sparse texture, and returns a Texture that is committed and sparse.
I then can uncommit it, which turns the texture to black ( i am rendering it onto a quad). If i then commit it again, which is the same path as was used when the texture was first created (minus the storage part), the texture appears but is totally mangled.
I checked width and height and texid values and format values, and they are the same (or at least after many checks appear to be, i could be missing something stupid). I know my data is at least getting in because the recommitted image is there, just mangled and rearranged in chunks.
Are there any things i need to do when recommitting a sparse textures memory? I know i need to reupload my pixels, and i know the memory needs to be commited before doing so, but I use the same code path when creating it the first time, and it renders and looks fine. the ONLY difference is i call uncommit before that same code path gets executed.
PS: First time image is created and committed (and bits uploaded) and rendered :
firstTime.png 622.63KB 3 downloads
Second Time the image has been uncommitted, then recommitted (and bits uploaded) and rendered:
recommit.png 619.96KB 3 downloads