I’m working on a project that requires me to use Jitter->Spout->MadMapper. MM gives me a “Cannot create DirectX/OpenGL interop” error. However, going from TD->Spout->MadMapper works easily, which maybe means the Jitter Spout objects may be a problem (I’ve crossposted to their forums).
Intel(R) UHD Graphics 630 (built in to motherboard I think)
NVIDIA GeForce GTX 1070 with Max-Q Design
Any help would be appreciated. I’m aware of the other topics on this but most are unresolved and it’s highly hardware-specific, as far as I know.
“For compatible graphics hardware, OpenGL textures are shared by way of DirectX using the NVIDIA DirectX/Opengl interop extension. If hardware is not compatible, SPOUT provides a backup by way of CPU memory.” CPU texture processing will be really slow, no?
If this is a desktop computer, it’s possible that the Jitter externals are causing the trouble. But because some programs work and the Jitter externals do not it is likely to be a laptop/notebook. If so, look into the Optimus graphics side of it.
It’s possible that one program e.g. TouchDesigner will operate using the NVIDIA graphics but another e.g. Max/Msp will not. Profiles set up for individual programs will over-ride the global settings, so you might need to set up profiles for each one.
Yes texture transfer using CPU memory is slower, not so much because of the transfer speed itself but because it’s slow to get data off and then back on to the GPU. But at modest resolutions, say 1280×720, it can be useable. The fastest will be “Memory” mode with the “Buffer” option checked on.
So do that and repeat all the tests, starting with the Spout demo sender/receiver which will confirm whether memory sharing is being used. If any of the of the programs in the chain do not support memory sharing this could be a problem. In that case, switch to “CPU” sharing mode and try again. This is slower but can transfer from a program that does not support memory sharing.
But if this is an Optimus issue you have a good chance of resolving it.