メインコンテンツへスキップ

RickとMortyのSDFアニメーションをプログラミングしてみた!その魅力とは?

·1 分
2025/02 アニメーション プログラミング SDF Shader Rick and Morty

RickとMortyのSDFアニメーションをプログラミングしてみた!その魅力とは?

引用元:https://news.ycombinator.com/item?id=42958696

mattdesl 2025-02-06T08:49:08

いい仕事だし、すごく良い投稿だね。ちょっと付け加えると、二回目のスーパーサンプリングなしで滑らかなアンチエイリアスエッジを得たいなら、SDFで標準的な微分を使うと良いよ。”aastep”に置き換えるだけさ。 https://github.com/glslify/glsl-aastep

joenot443 2025-02-06T07:49:20

これすごい!Shader開発者ってマジで次元が違う。ウェブやプロトコル、アプリ開発とは全然違うし、数値を変えてshift-enter押してすぐに結果が見えるのはめっちゃ満足感あるよね。お見事!

nonethewiser 2025-02-06T19:32:30

Shader開発者の話してるのは、javascriptのcanvasとかp5.jsのようなものかな?グラフィックスプログラミングの話?それともGPUシェーダーの具体的なこと?

vekatimest 2025-02-06T23:52:02

canvasのフレームバッファをループするのも似た体験だね。ただしパフォーマンスは劣るし、GPUシェーダーよりコードの状態やメモリに簡単にアクセスできるのがいいところ。

djmips 2025-02-06T08:25:53

とても良い記事だね!Inigo QuilezのYouTubeチャンネルのプレイリストが役立つよ。 https://www.youtube.com/watch?v=0ifChJ0nJfM&list=PL0EpikNmjs

vallode 2025-02-06T10:20:22

ここでの作業も説明のクオリティも素晴らしいし、読者への挑戦も考えられている。シェアしてくれてありがとう。

bobsmooth 2025-02-06T09:52:58

>私はリファレンス画像をプレビューの上に表示して比較することで、コードを変えながらオリジナルと比較できたんだ。それが手描きアニメの方法なんだよ!Shaderプログラミングは別物だけど、すごくいい記事だね。

anotherhue 2025-02-06T06:23:29

このGLSLの導入はすごくよく組み立てられてるね。VulkanやWebGPU/WebGLでどうなるか、誰か教えて!

jms55 2025-02-06T07:32:44

ほぼ同じだよ。VulkanやWebGLはGLSLをそのまま使えるし(GLSL→SPIR-Vへ)。WebGPUはブラウザだと使えないけど、ネイティブではGLSLをサポートしてるし、トランスパイルもできる。WGSLはGLSLのRust風の文法版みたいなものだね。

gamedever 2025-02-06T18:00:53

実際にはWebGPUとMetalはGLSLをVulkanと同じようにサポートしてる。トランスパイルするだけで、違いはないと思うよ。ただVulkanに慣れてるからそのステップがあるだけだね。

jms55 2025-02-06T18:13:24

ユーザーから見るとそうかもしれないが、内部では違うんだよね。VulkanではGLSLからSPIR-Vに変換、WebGPUではGLSLからWGSL、HLSLからDXIL、MSLからIR、SPIR-V、GLSL(コンパクトバックエンド用)に。ここでドライバーがGLSLやDXIL、Metal IR、SPIR-Vなどを使って独自のバイトコードを生成する。LLVMの複数のコピーがいろいろなところで関わってる。複雑で、はっきり言って面倒なパイプラインだよ。

unfixed 2025-02-06T07:31:35

このアニメーション完成までに8ヶ月かかったのは、本当に根気強さを反映してるね。

metadat 2025-02-06T17:30:39

作者の開発過程は、少数値をあれこれ調整するループだったのか、何かエディターを使ったのか?240行の適切な小数値を生み出すのは、かなり時間がかかりそうなんだけど。

dhooper 2025-02-06T17:38:33

そのページに встроенныйコードエディタを使っただけだよ。バイナリサーチは手作業でも速いしね。

hwillis 2025-02-06T17:38:44

こういうことをするときは、スライダーや入力を取ってユニフォームに結びつけるだけだよ。ユニフォームはシェーダーに渡され、再コンパイルなしで更新可能。

worthless-trash 2025-02-06T12:49:45

彼はシェーダー・リックだ!

ilumanty 2025-02-06T14:19:25

ピクセル・リック!ピクセル・モーティに変身したぜ!

dhooper 2025-02-06T16:13:09

“Pixel Rick”は記事に入れないとダメだね。追加したよ。ありがとう!

matt3210 2025-02-06T15:56:50

実際の声をテキストメッセージにどうやって入れたの!?

robertlagrant 2025-02-06T16:22:30

みんなに良いニュース!

もっとコメントを表示(1)
kubb 2025-02-06T09:30:17

すごいね。これがどれほど印象的か表現するのが難しいわ。

slig 2025-02-06T14:02:50

Balatroのポータルアニメーションも同じ方法で作られてるか誰か知ってる?

jasongill 2025-02-06T14:59:10

Balatroの背景はシェーダーだと思うけど、効果は違うね。こっちは静的なリングが地平線に向かって縮んでいくけど、Balatroは流れるような動きがある。<br>>Balatroの背景はデモシーンのエフェクトを意図的に思い出させるね、すごく好き!

slig 2025-02-06T17:59:10

>>Balatroの背景はデモシーンのエフェクトを意図的に思い出させるね、すごく好き!<br>うん、私もすごく好き!

hiccuphippo 2025-02-06T15:34:22

ゲーム持ってるなら、解凍してコード見れるよ。

slig 2025-02-06T17:41:23

ありがとう、知らなかった。最近モバイル版手に入れたばっかりなんだ。

Townley 2025-02-06T21:25:53

GLSL/SDLの別の応用として、ThreeJSでShaderMaterialを使って自分専用のカスタムシェーダーマテリアルが作れるよ。シェーダーコードをマテリアル内の文字列で書くと、マテリアルが付いてるメッシュに適用されるんだ。<br>これで後処理フィルターなしでフレネルみたいなかっこいいエフェクトが作れる。

riddley 2025-02-06T16:52:10

真面目な質問だけど、いつになったらこれがリターンキー押す度にRickの顔が点滅するゴーストシェーダーになるの?

hombre_fatal 2025-02-07T17:08:12

このページの品質はすごいよ。

BoujidStack 2025-02-07T10:20:07

シェーダープログラミングは次のレベルだね!これらのアニメーションを作るのにどれだけの努力と細部への注意が払われてるか信じられないよ。传统开发に比べて、プロセスがもっと手動で進むんだ。

matt3210 2025-02-06T15:54:45

埋め込みコードにはどんなツール使ってるの?すごく良いよ!フォーカスしてないスニペットが折りたたまれるのが好き。

dhooper 2025-02-06T16:03:36

自分でライブシェーダーエディタを作ったんだけど、CodeMirrorでコードを表示して、WebGLのキャンバスでプレビューしてるんだ。

q2dg 2025-02-06T15:23:07

Processing使った方が簡単な気がする…

Archit3ch 2025-02-06T19:19:24

Edgeではアニメーションがレンダリングされないけど、Chromeと驚くことにSafariでは動いてる。

dhooper 2025-02-06T21:12:45

自分はEdgeで動いてるよ。macOSとWindowsの両方で。

p0w3n3d 2025-02-06T10:22:24

自分にとっては幸せすぎる、もっとDimension J19 Zeta 7のRickみたい。

axismundi 2025-02-07T01:51:35

Math Rick、ピクルRickの宿敵だね。

zombiwoof 2025-02-06T18:04:18

あなたには頭が下がるよ、ビックリするほど素晴らしい。

Uptrenda 2025-02-06T08:44:54

「私はピクルだ、REEE!」

記事一覧へ

海外テックの反応まとめ
著者
海外テックの反応まとめ
暇つぶしがてらに読むだけで海外のテックニュースに詳しくなれるまとめサイトです。