category: code [glöplog]

put this up today. I'm sure the server will keel over if 2 people look at it at the same time but still hoping someone finds the limits a interesting challenge
added on the 2015-10-25 21:09:44 by greggman greggman
Hey I had a bit of a play around with it and I think it's a pretty neat variation on the fragment shader sandboxes. I would really love to see what some people could come up with, I imagine some pretty cool particle effects and such. One thing that would be really nice would be to get the vertex feedback into the shader, would allow for some neat effects.
added on the 2015-10-25 23:48:18 by drift drift
Nice! I should try to learn more about vertex shaders anyway :)
added on the 2015-10-25 23:57:08 by noby noby
Cool. This is my first try: Neurovelho
added on the 2015-10-26 02:04:39 by visy visy
Looks great!
added on the 2015-10-26 06:18:51 by FreeFull FreeFull
while this one gets my heart, you are off to a great start. if someone posts a screencast of how you write and play with the tool, that would be pretty amazing too.
added on the 2015-10-26 16:44:09 by seism seism
I love it !
added on the 2015-10-26 18:09:22 by Anat Anat
Looks great! Now all you need is a proper port of Numb Res. :)
added on the 2015-10-26 19:05:45 by KK KK
Could you add alpha blending ?
added on the 2015-10-26 19:22:54 by Anat Anat
Yeah, great idea! Will play with it some if I have the time.
added on the 2015-10-27 10:16:12 by dojoe dojoe
That's cool :)
This is cool ... when it comes to feature requests can it get input from the mic, the playing of soundcloud audio can be a bit jarring when you have other stuff on. Also, infinite scrolling of the gallery would be nice instead of having to click through in the list. Very nice work :D
why not "vertexshadertoy"? ;)
added on the 2015-10-29 15:23:32 by raer raer
Feels and works great!
Looking at the latest releases, I think it needs a way to set shaders to private.
added on the 2015-10-30 20:02:42 by movAX13h movAX13h
I added alpha blending (it's ONE, ONE_SRC_MINUS_ALPHA) so premultiplied (example)

I agree about the the private thing. So far I just haven't worried about it and post my embarrassing work-in-progress stuff. If you are signed in you can update your creations. Only the most recent version will show up in the gallery. Your revisions are available by clicking the name on the piece's page. example

Does anyone know any good techniques or articles for understanding how best to use the audio data? So far I've just guessed with zero knowledge but I feel like someone probably knows exactly where to look in the data and how to look to make things really feel like they are responding to the music.
added on the 2015-10-31 12:13:41 by greggman greggman
What you're looking for is probably this: the spectrum analysis of the waveform (this is done by applying (fast) fourier transform).

If you play around with that data a bit (lowpass et cetera) you can get some semi-decent results. But it's the farthest thing from a silver bullet ever, keep it low key.

(there's probably some black magic that gets closer to consistent behaviour, but last time I built a Winamp plugin was 15 years ago)
added on the 2015-10-31 12:47:25 by superplek superplek
The webaudio API can do it for you, take a look here.
added on the 2015-10-31 12:57:08 by Gargaj Gargaj
It's using the webAudio API. But even so I personally find it hard to know which parts of the data to use and what to do with that data. So far I usually only use the first 1/4th of the data since everything beyond that (high frequency stuff) usually has no action. Another thing I do is generally take it to some power so loud signals jump out. Another is although I provide 4 seconds of data which is fine for some long receding view I'm finding for most visualizations using only about 1/4 to 1/3 a second of history feels better.

I would expect the scene has some collective tips on what works best.
added on the 2015-10-31 15:10:16 by greggman greggman
Well it boils down to the fact that synchronizing music and visual sensibly is always a unique task; I've seen/known people struggle with elaborate algorithms only to realise it never really works perfectly.

What part of the data to use should be intuitive: your spectrum analysis is split up in a number of bands. They in turn reflect a value telling you how loud or "active" that band is; as I said, lowpassing your lower bands makes a fair ambient bass movement guidance but that's just all it is. Here is where you get creative, or better, context-specific (i.e. one track).

Shadertoy offers little more (last time I checked) than FFT and nobody's complaining. It's just not a feature you want to overdo since it's awfully contextual.
added on the 2015-10-31 16:50:12 by superplek superplek
added a private flag. When you save you can check "private". If you go to the revisions page (click the name of the piece on any visualization) you can set the privacy of any revision. If you go to your own page /user/username your private pieces will show up if you're logged in
added on the 2015-11-01 09:43:33 by greggman greggman
does the create new link send me to download some code (what language?)
or is there an interface?

a delay need to upgrade to windows 8.1...
just wondering if it was some code cos me is new to c++ coding and wanted to have a look? or is it a shader module routine that fits into existing 3D engine code that sceners have written?
added on the 2015-11-02 09:59:27 by starlight starlight
The code is GLSL. In this case a vertex shader. There's a explanation here.
added on the 2015-11-02 10:25:27 by greggman greggman
thanks me will come back and look at that again when me is proficient at basic c++ coding..
i'm very new and forgive me for asking what is probably a simple question but
is GLSL a separate file that would go in together with the .exe
or is GLSL a stand alone language with its own compiler?
just trying to get the gist of this stuff
it'll all seem so simple when me know...
god i must sound like a right idiot compared to all the genius's here
added on the 2015-11-02 10:38:18 by starlight starlight
Few people are geniuses, but most others are able to just google that stuff. Not knowing things doesn't make you look like an idiot, but refusing to look up things you don't know does.
sorry me wasn'taware it was open GL, I did think of directx...although haven't used that yet either, also me wasn't aware that GLSL was well known and would be in wiki... I thought it was something that had just been written recently for the scene...
apologies, ofcourse if me had known me would have looked that up...

some nice examples there on the website!!
I am looking forwards to using directx or openGL as soon as I find out how to insert a model...lol... ofcourse I will look that up.... :)

thanks ive learnt something and 1 step closer to my naked blonde :)
added on the 2015-11-02 12:10:39 by starlight starlight