tmhglnd/jit.underworld

jit.persephone sometimes gets hung up & jit.underworld output video glitches

Closed this issue · 8 comments

image
Hopefully the image I attached is visible. The scene on the left is the output from rendering with jit.underworld and on the right is my scene in jitter. If I find the object that is the root cause then I will update this thread but in the meantime I have no idea why this would happen. I also experienced some bugs with jit.persephone upon loading a patch. It seems she will often cut off data throughput regardless of what capture mode she is in. Reinstantiating the object solves the issue temporarily.

image
Here is a birds eye view of the patch.

UPDATE:
image
implemented some potential fixes according to @tmhglnd and unfortunately still get the same glitchy output. Will continue experimenting in the meantime.

I traced the issue back to the jit.gl.pass objects I was using in my scene. Removing them seemed to fix the issue. My guess is that because I'm using pixel shaders instead of OpenGL primitives that something gets confused. Not sure I would call this a fix or not but at least the issue can be pinned on the pass fx.

Do you think you can share a minimal example of the patcher that reproduces the issue?

It's a tough one to pin down. But a few things, it seems that indeed jit.underworld doesn't seem to work correctly when just putting in some jit.gl.pass objects for post processing and after removing it is not enough to get it back to work, you either have to remove jit.underworld and CMD-Z, or restart the patch. I am able to get it to work with the bloom effect however if you first create a new jit.gl.node for post processing, connect the fxaa and bloom there, then capture that output and render to the final videoplane connected to the underworld.

<pre><code>
----------begin_max5_patcher----------
475.3ocuTtsaiBCDF9Z3oXjulh.BPI8p7drpB4.NINBrQ1lTVU0280dLDkss
aWj5AgDCy3wyL9y+hmCCH6kSLMAd.9EDD7bXP.FxEHX1OfzSmZ5nZLMhf8jb
+YRjeICaxfgOyMwG6huvaYxgNpfAihV0cMlIXmQQE5CRUeshoYFHaY2hwdtn
iYvJmNGj2hEz1j61dShxQyRlYyQ8gL+df4O.tgntmZT7IRDPHviyINPMMm3h
i192X74deZUbRDrsDMY42ilr3D3Q2ddILz8J5KAJBY6s3PP6YvfTafcs7dHc
aVBjlTk.6nszACX+fonZVcirSprt3yZY1l2mYa9Hlcrq1MyiJFxs+G6JyKbz
pJOwYx+VY2fMsYXcXBI29NorG1glZZuARiysZrSVs0IYWKjDW3VcTU+Du0bx
tb4ZYWVR12O8VTdYa7zq3GkdGlnz0hizjheNwTEZRKeebfUfzwEu9mUXEcw+
aFokiplko55YARuNIsLsgKnFtTbSVn..9W2DqsWaVQm7yymsSWm2OrWaeSm7
3jNLbgozyIiMwJtNKUN2pHzkK7tEnqhcgujeNFgprWnF6so691IblJyI9sZ+
qmRLxQwUn63YaIJbcBQ8.0eRP8c3Kg+AOm7mLA
-----------end_max5_patcher-----------
</code></pre>

The other issue with jit.persephone I'll have to investigate as well, do you have a clear example of that as well?

Am I missing anything from this node setup?
image
with @capture 1 set:
image

It seems to output from the bloom pass if I connect the texture to the node directly:
image
But even with extreme settings, the bloom isn't apparent.

As for the jit.persephone issue, it hasn't cropped up again since posted. I will keep an eye out for that in the meantime.

UPDATE: I realized in my attempt to figure it out while trying everything I could think of I left the node context in the pass. removing 'post' from the bloom pass worked and the final captured output looks great! Thanks for the guidance on this problem.

Usually you would use one more [jit.gl.videoplane post @transform_reset 2] to draw to the [jit.gl.node undr-ctx @name post], but glad it works! I will consider this issue closed for now, but when you find a way to replicate the issue with jit.persephone feel free to re-open or file a new issue.