Sharing is fun: v001 Rutt Etra
I realized I had not released this, and we cant let Quartz Composer users have all the fun *cough*.
This is a Rutt Etra emulator that is pretty decently fast, and was the basis for a Quartz Composer Plugin that I released. It uses vertex attributes with jit.gl.mesh to generate offsets on the GPU. The included shader demonstrates how to use vertex attributes to displace geometry, and the included patch demonstrates how to upload vertex attributes as a matrix to jit.gl.mesh
Maybe some folks will enjoy? Have fun :)
Out of curiosity, what’s up with the every-other line being displaced
together. It looks like there are 2 fields interleaved. In going
through the patch and shaders, I see your vertex_attr matrix is
200×200 but the other matrices are 100×100. In the shader you have a
vec2 instead of a float (the vertex_attr is 1 plane), so the total
amount of data matches up. I experimented with making the vertex_attr
a float and the behavior didn’t change. So, is this interleaved
behavior intended? Regardless, I like the behavior and obtuseness of
the effect it creates.
On Tue, Jan 13, 2009 at 6:00 PM, vade
> I realized I had not released this, and we cant let Quartz Composer users have all the fun *cough*.
> This is a Rutt Etra emulator that is pretty decently fast, and was the basis for a Quartz Composer Plugin that I released. It uses vertex attributes with jit.gl.mesh to generate offsets on the GPU. The included shader demonstrates how to use vertex attributes to displace geometry, and the includes patch demonstrates how to upload vertex attributes as a matrix to jit.gl.mesh
> Maybe some folks will enjoy? Have fun :)
Hrm, I honestly have not looked at this code in some time, just cleaned it up and threw it up here. I also noticed the every other line issue as well. Id prefer a truer "scanline" feel.
Feel free to hack away at it :D (not like you dont have a ton of extra stuff to do)
Actually that was a pretty simple fix:
I had been jealous of qc users ever since I saw the announcement of this release over at createdigitalmotion back in November. This just completely made my night. Great work.
I also downloaded your shaders, so thank you for those in advance.
I was just about to post a question regarding your shaders, in particular the mix shaders (v001.co2.*)
What is the difference of those shaders as compared to the jitter ones (v001.co2.additive.jxs vs. co.additive.jxs). I do realise that the v001 ones refer to subsequent vertex and fragment shaders (v001.co2.vp.glsl, v001.co2.additive.fp.glsl), but the fragment shader code is also different.
hope I haven’t missed the explanation somewhere.
Cyclings provided shaders mix the "a side source" to an "a + b" output. You will always have a in your output mix.
This means a mix value of 0 is all ‘video a’, and anything else is always "video a + video b".
My shaders a more like a/b video mixers, so 0 is a, 0.5 is a + b, and 1 is only b.
Technically, my shaders are not really truly following the definitions of overlay etc modes, cyclings are, but in practice what you probably want is a/b mixers, not a/a+b.
speaking of QC, I noticed you’ve been pretty focused on it lately vade. It does seem really nice, though I haven’t had a chance to upgrade to leopard and install it yet (is it leapord only? or can you run it in 10.4?).
I am curious, is there a way to integrate the QC scenes with jitter? like can you load them into a movie player in jitter or anything like that? I really want to get into QC next, just because it seems like I could set things up a bit quicker then jitter, and also just to try out something new. Processing seems pretty nice too, but im so addicted to modular visual programming that type coding kind of irritates me now.
It seems the patch is not here anymore. Do you know where I can find it?
I have this old one.
I hope this helps.