シェーダー

マイクロファセットBRDF

Shader - Shadertoy BETA 今までいろんなShadertoyの作品で使ってきてましたが、正直理解が浅すぎたので改めていろいろな記事を参考に再実装しました。 用語の整理等もでき始めたのでそこそこ理解が進んだ気がします。 特にこのシリーズはとても参考にさせて…

2019年9月のシェーダーを紹介する

サムネ用 はじめに 毎月やっている月毎に制作したシェーダーの紹介第8回目です。 今月はShadertoyで一つシェーダーを作ったので簡単な解説をします。 Energy Lab 久しぶりにワンパスレイマーチングをやりましたhttps://t.co/y7oiQkUcvK#shadertoy #raymarchi…

Unity HDRPのLitシェーダーを改造してレイマーチングする(GBuffer編)

サムネ用 なにをやったか 今回はUnityのHDRPのシェーダーを改造して、HDRPのシーン上にレイマーチングオブジェクトを表示しました! Unity HDRP + Raymarchingのプロジェクト公開しました!興味があれば動かしてみてください!!https://t.co/hcBJKSWzC9コー…

Unity HDRPをカスタマイズしてアウトラインパスを追加する

HDRPを弄れる環境はこちらで既に整えました nanka.hateblo.jp 今回は実際にカスタマイズして周作に最適なアウトラインパスを追加してみます。(Render Graphがリリースされたらここの情報は無になります(多分...)) 使用するバージョン Unity 2019.2.0f1 H…

2019年7月に作ったシェーダーを紹介する(VRChatライブコーディングもやったぞ!)

サムネ用 はじめに 毎月やっている月毎に制作したシェーダーの紹介第6回目です。 今月は先月までと比べて忙しい時期だった(後先月頑張りすぎて燃え尽きていた...)ので、あまり活動できませんでしたがいくつかシェーダーを作ったので紹介します。 7/3 仕事…

2019年6月の成果物を紹介する(シェーダーライブコーディングをやったぞ!)

サムネ用 はじめに 毎月やっている月毎に制作したシェーダーの紹介第5回目です。 今月はこちらの勉強会に登壇したこともあって、シェーダー以外にも成果物がありました!! techplay.jp そちらも合わせて紹介します。今回は月末に成果物が偏ってしまったので…

2019年5月に作ったシェーダーを紹介する

サムネ用 はじめに 毎月やっている月毎に制作したシェーダーの紹介第4回目です。 腰を据えてがっつりシェーダーを書いていた前月までと異なって、今月は1シェーダーにつき60分以内で作ったものばかりになりました。 このように短時間でシェーダーを作成する…

2019年4月に作ったシェーダーを紹介する

サムネ用 はじめに 毎月やっている月毎に制作したシェーダーの紹介第3回目です。 軽く解説やバックボーンを交えて紹介しようと思います。 3/28 thinkoinhttps://t.co/Wy8a501pEh#glsl #raymarching pic.twitter.com/SyIKwVvv22— かねた (@kanetaaaaa) 2019年…

Shader Graphのremapノードが便利だった

最近Shader Graphを触る機会があるので、いろいろお試しで作っていたんですが、remapノードというのが便利だったのでShaderToyとかでも今後使っていこうと思ってます。 github.com float remap(float val, float inMin, float inMax, float outMin, float ou…

2019年3月に作ったシェーダーを紹介する

はじめに 先月からやっている月毎に制作したシェーダーの紹介第二回目です。 軽く解説やバックボーンを交えて紹介しようと思います。 2/27 箱#glsl pic.twitter.com/mXEnxLIpVH— かねた (@kanetaaaaa) February 26, 2019 レイマーチングでは、座標に対して繰…

2019年2月に作ったシェーダーを紹介する

サムネ用 はじめに 去年の12月頃から、個人的にシェーダーのみで短い映像や画像を作ってtwitterで公開するという事をやっています。 今月から、シェーダーを作成した月の月末に公開しなかったシェーダーも含めて、軽く解説やバックボーンを交えて紹介しよう…

二次元ベクトルに垂直なベクトル

必要だったのでメモ 二次元ベクトルであれば、90度回転させると垂直なベクトルになります(当たり前) 90度の回転であれば、行列計算の結果がコンポーネントと符号の入れ替えになるため、わざわざ回転行列を用意する必要はなく vertical = vec2(-vec.y, vec.x)…

なんとあのShadertoyのShader Of the Weekに作品が掲載された!!

憧れのサイトのトップページを飾れて嬉しさしかないです!! 学生時代は「Shadertoy = 神が集まるサイト」で平民の自分は全く理解できなかったので、神シェーダーを眺めているだけでした まさか自分が作品を投稿するようになって、ましてやトップページの一…

Tokyo Demo Fest 2018のGLSL Graphics Compoで優勝した!作品の解説等

2018年の12/1と12/2の2日間に渡って、Tokyo Demo Fest 2018という日本唯一のデモパーティが開催され、そこに初参加してきました。 僕はそのイベントの、GLSL Graphics CompoとCombined Graphics Compoに作品をエントリーして1位と4位に選んで頂きました!あ…

webgl-waterのコースティクスをshadertoyで実装した

ちょっと前にtwitterでバズっていたwebgl-waterのコースティクス部分をフラグメントシェーダーで実装した https://www.shadertoy.com/view/MldfDn せっかくなのでqiitaで解説記事を書いた qiita.com 6年ぐらい前から存在は知っていたんですけど、当時は全然…

モザイクフィルタを作ってみたところ不可解な境界線が現れてしまいました

画像をモザイクにしようと思ってこんなシェーダーを作成していました uniform sampler2D tex; void main() { vec2 uv = floor(texCoord * 30.0) / 30.0; gl_FragColor = texture2D(tex, uv); } 実際に使ってみると↓のような見た目になり、なにやらモザイクの…

シェーダーで条件分岐は遅いらしいのでベクトル演算に置き換えようとしてできなかった話

一般的にシェーダーでの条件分岐は遅いという話がある 今回作ったシェーダーではブレンドモードや使用するマスクのチャンネルをアプリから送信してシェーダー内で利用するということをした これを条件分岐を使って素直に実装するとこんな感じになる(空で書…