--shader(GLSL)の小技 19-- 敷居の低いmusic shader
グラフィクを書いていると音楽をつけたくなります。だけど、shaderで音を出すのは敷居が高すぎる。
そこで、敷居だけは低いByteBeatを紹介します。敷居は低いけど奥は深すぎです。でも。お気楽に手を出すのはには、ちょうどいい。
説明は、難しいのと、忘れてる部分がいっぱいあるので、ひたすらリンクを張りまくります。
ポイントは
(t*9&t>>4|t*5&t>>7|t*3&t/1024)-1
ここを書き換えるだけ。
shaderはこちらです。#bytebeathttps://t.co/z8GizlEdQb
— gaz (@gaziya5) 2017年9月25日
byte beatの作り方を解説しています。ただ、逆ポーランド記法なので、よくわからないけど、理屈はわかります。 0-0-0-0.blog.so-net.ne.jp
このページはオンラインでbytebeatが出来ます。
最近、ShaderBoyがmusic shaderに対応したので、そちらのリンクも張っておきます。 ShaderBoyはオンラインGLSL(shadertoy対応)エディターです。
ShaderBoy has been updated.https://t.co/BE679kWPTN
— iY☁Yi (@iY0Yi) 2019年5月7日
ShaderBoy is a simple text editor that lets you write "Shadertoy" shaders with useful functions.
What's New:
*multipass shader
*Movie Export
*Timeline GUI
*Debug Knob GUI
*Shader List GUI
*And other GUI updates#Shadertoy pic.twitter.com/4YMFBQbkll
今回の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.); }