How to create a clean line?

When I create a line in (DX9/11) in vvvv, it always looks quite messy, especially if the depthbuffer in the renderer is enabled. I am facing following problems:

  1. Antialias seems to blend to black rather to the nearest color.
  2. Alpha is not working correctly.
  3. Very pixelated/jaggy at the outer adges.
  4. Segments at corners are separated/not connected.

Attached a patch and a screenshot. The screenshot is scaled-up 200% without interpolation to illustrate the problem. Thanks for any help.

line.v4p (14.4 kB)

well looks like this line module is a proper crap ;]
splinesgpu use this instead

Splinesgpu draws much better. However, it creates a ribbon (2D bended/twisted in 3D) and is only DX9. Or did I missed something?

I am looking for a more simple solution: a line where I can define the overall width displayed in 3D space, correct antialias, alpha blending, DX9 and 11.

Vvvv is often used by visual artist/designers, right? How do you create visualisations involving lines? There must be a solution…

Have you tried Line (gpu) ? Only dx9 I think.

just for completeness: Related Contributions

it’s not that hard to write that from scratch, but i don’t have time at the moment and my todo list packed as hell… I pretty sure i was helping someone on the forum with something like that but i think it was with tubes… Let’s hope in the evening i will look again unless someone else help u

Thank you. I’m currently working with DX11. Is there a useful line-node for DX11? Or is it related to the GPU setting? Played with the Nvidia settings, nothing really changed. Any suggestions are very welcome!

Antokhio, it would be great if you have something in the shelf (unfortunately, I cannot code). Guess a proper DX11 line module would be useful for many here. Couldn’t find a related contribution so far. Any hints Joreg?

Thanks antokhio. It seems to draw a ribbon (like splinesGPU).
But how to create a clean line with a constant thickness in vvvv?

well it’s just a quad stripe u want in there however still fixing urgent stuff here (


Actually looking for a line that remains 3D thickness regardless from which angle the camera is looking at. At the same time, allows proper alpha transparency and adjustable thickness (if possible, independent from the camera distance). Attached a short video for better illustration. (1.1 MB)

hey, yea i kinda understand that but first instead of moving camera u can try to orbit points, with * (3d vector) however u gonna notice pretty bad thing called order dependent transparency… I need MSAA example from node to try fix that… Gonna check if it possible to make this thing 3d

Adjustable thickness is not that hard, you can easily go modify the shader code and set stroke depending on screen space size 'actually in the line module you probably have the function for it)

Also you might want to apply the same technique as sprites and “self align” quads to view, so line always “face the camera”

Alpha transparency with depth…

  • back to front sorting, per triangle (cpu or gpu)
  • per pixel linked list, works but heavy, but you lose msaa
  • ROVs, typed UAV load (if you’re on windows10 and got a card that supports it)
    Good luck ;)

yea dude gonna need some time to think how to sort that ;(
i tested few stuff but it mostly broke it…
u can try the 3d version tho
about transparency u can’t do that the only way is to blend line with background (15.9 kB)