テラByteの時代にキロByte

shader又はdemosceneに関係する事

--shader(GLSL)の小技 19-- 敷居の低いmusic shader

グラフィクを書いていると音楽をつけたくなります。だけど、shaderで音を出すのは敷居が高すぎる。
そこで、敷居だけは低いByteBeatを紹介します。敷居は低いけど奥は深すぎです。でも。お気楽に手を出すのはには、ちょうどいい。 説明は、難しいのと、忘れてる部分がいっぱいあるので、ひたすらリンクを張りまくります。
ポイントは

(t*9&t>>4|t*5&t>>7|t*3&t/1024)-1

ここを書き換えるだけ。

www.youtube.com

telegra.ph

battleofthebits.org

www.reddit.com

byte beatの作り方を解説しています。ただ、逆ポーランド記法なので、よくわからないけど、理屈はわかります。 0-0-0-0.blog.so-net.ne.jp

このページはオンラインでbytebeatが出来ます。

greggman.com

最近、ShaderBoyがmusic shaderに対応したので、そちらのリンクも張っておきます。  ShaderBoyはオンラインGLSL(shadertoy対応)エディターです。

今回のshader (shadertoy rule)

vec2 mainSound( float time )
{
    int t = int(time * 8000.0);
    t = (t*9&t>>4|t*5&t>>7|t*3&t/1024)-1;
    return vec2(float(t & 0xff - 128) / 128.);
}