cross-process texture sharing, depth renderingJuly 6, 2012 posted by: joreg
this is to inform you that latest alphas come with a new commandline: argument /dx9ex
starting vvvv with this option (on windows >= vista) brings you:
- a VideoTexture that works on two heads of one graphiccard (as you’d have always expected)
- texture sharing
- broken Flash (EX9)node as long as original movie’s resolution is non-power of two
- broken Text (EX9.Geometry)node
texture-sharing can be used to share textures e.g. between two instances of vvvv (without noticable performance penalty) and even with any other software that also supports DX9EX. check the helppatch of SharedTexture (EX9.Texture)node for instructions.
apparently this can also work as a bridge to opengl if someone wants to give this a try…and for those wondering, yes this enables stuff on windows your macfriends have been bragging about for a while now using syphon.
another new thing (not related to dx9ex) is the possibility to render the deph of scenes directly without using an extra pixelshader pass. just set the Texture Formatpin of a DX9Texture (EX9.Texture)node to INTZ and you should get the depth of your scene rather than a colorbuffer. disclaimer: may not work on certain graphiccards, see here
available now in latest alphas, enjoy.
Comments are no longer accepted for this post.
@joreg/electromeier: /dx9ex texture sharing works also on 2 graphic cards here …
But I have to right-click on the renderer node (close and open) once. It’s the same when both screens connected to one graphic card (GeForce 770).
I don’t use SharedTexture(EX9.Texture), but VideoOut(SharedMemory) and SharedMemory(EX9.Texture)
edit: Well, it seems I don’t even need the /dx9ex for this nodes. Sorry!
s u p e r !
@sven - aligned to Z of the camera view, and often not a linear response with respect to euclidean xyz world space