I've ported a basic DXT1 min/max encoder (real time texture compressor) to OpenCL and have verified the output by writing to a file.
Now I want to squirt the output of this encoder direct into a BC1 (DXT1) texture.
I'm trying to hook onto the texture via clEnqueueAcquireD3D11ObjectsKHR ... however, that function errors out with code -1007 when attempting to connect to the BC1 texture.
My code is otherwise sound as I can hook onto & write into an ARGB8888 without problems.
It would appear you don't like me trying to connect to a compressed texture.
Not happy about that Please allow me to connect to compressed textures directly. It's just memory. I want to implement an optimal solution.
Don't want to have to do the DirectX fudge of writing into a DXGI_FORMAT_R32_G32_UINT then blit the result into a BC1 as that's an unnecessary blit and a waste of video memory due to the requirement to work with two copies of the same data.. I want this as fast as possible and to use minimal system resources. I'd like to be able to get access to the video memory of that BC1 texture directly.
Please allow this access. If I'm acquiring direct access to the surface, you can assume I know what I'm doing. If I don't, that's my problem.
Ditto other compressed formats. BC1 is just for testing. Want to do the same thing with BC7 once I have my minimal test (BC1) working as expected.
No idea what this does on other vendors hardware yet. Haven't tested yet so not sure if a spec issue that needs appealing or an AMD specific implementation issue at this st
Feedback welcome. Happy to beta test a driver update as & when this is resolved (if you are willing/able to do so).
Thanks for reading.