2025年9月6日土曜日

スフィアトレーシングとはどういう意味でしょうか?

 スフィアトレーシング(Sphere Tracing)とは、**距離関数(Signed Distance Function = SDF)**を使ったレイマーチングの一種です。

概念

  • 通常のレイマーチングは、レイ(視線)を一定の長さずつ進めて、どこかで表面に当たるかどうか調べます。

  • スフィアトレーシングでは、**「今いる点から表面までの最短距離」**をSDFで計算し、その距離ぶんだけ一気に進めます。

  • つまり、「絶対に衝突しない最大の球(スフィア)」の半径分だけ進むので「Sphere Tracing(球をたどる)」と呼ばれます。

特徴

  • 無駄な判定が減り、早く表面にたどり着く。

  • 複雑なオブジェクトや滑らかな曲面もリアルタイムで表現しやすい。

  • SDFが正しく設計されていれば、表面を突き抜けない(オーバーシュートしない)。

まとめ

スフィアトレーシングとは、SDFの値を使って「絶対にぶつからない最大の距離」を一気に進むことで、効率よく表面との交差を検出するレイマーチングの手法です。


補足:

  • スフィア=球体ですが、「球を描く」のではなく「進んでも絶対ぶつからない球を想定して進む」イメージです。

  • Shadertoy の多くのレイマーチ系シェーダーはこのアルゴリズムを使っています。

もっと数式や実装例を知りたい場合もお答えできます!


ShaderToy における雨エフェクト重ね合わせ

 


ShaderToy上では、背景画像に雨粒エフェクトを加えるシェーダの実例があります。例えば Élie Michel 氏の「Rain drops on screen」というShaderToyデモが有名ですgodotshaders.com。このシェーダでは iChannel0 に入力した画像テクスチャ(背景)を使用し、雨滴が落ちる効果をオーバーレイしています。雨滴部分では背景テクスチャ座標をオフセットして屈折を表現しており、雨粒の位置ではぼやけた背景が上下逆に映るようなリアルな表現になりますgodotshaders.comgodotshaders.com。ShaderToyのページ上でフラグメントシェーダのGLSLコードも公開されており、実際に動作するデモをブラウザ上で確認できます(Creative Commons BY-NC-SAライセンス)godotshaders.com。なお、同様の雨エフェクトとして BigWings 氏の「Heartfeltgithub.comといった高度なShaderToy作品も存在します(こちらはテクスチャを使わず完全にプロシージャルに背景と雨を生成する例ですが、コードは公開されています)。

The Book of Shaders Editor における雨エフェクト例

The Book of Shaders Editor(GLSLエディタ環境)でも、画像上に雨を重ねるシェーダを動作させることが可能です。公式に雨専用のサンプルが提供されているわけではありませんが、既存のGLSLコードをコピーして実行できます。例えば、前述のShaderToy用シェーダを少し修正し、u_tex0 として背景画像のサンプラーを定義すれば、同様の効果を得られます。また参考になるコードとして、Gene Kogan氏のProcessing向けシェーダ例集に含まれる「rain.glsl」がありますgithub.com(Processing用ですがGLSLフラグメントシェーダのコードが掲載されており、背景映像に雨のゆがみを与えるフィルタになっています)。このようなコードをBook of Shaders Editorに導入し、uniform sampler2Dで画像を読み込んでUV座標を歪ませることで、背景画像上に雨滴が垂れるエフェクトを表示できます。GLSLコード自体は公開されているため、エディタ上で編集・実行しながら確認できます。

Three.js を用いた雨エフェクト重ね合わせ

Three.js環境でも、シェーダーマテリアルを使って画像に雨エフェクトを重ねることが可能です。その実例の一つが NordicBeaver 氏によるデモ「rain-shader」ですdev.to。このデモでは、Three.jsで平面にテクスチャ(背景画像)を貼り、その上にGLSLフラグメントシェーダで雨滴によるUV歪みを加えています。雨粒は一定間隔でランダムに生成され、各雨粒の位置で背景テクスチャのUV座標をずらすことで、水滴を通したような背景像のゆがみを表現していますdev.todev.to。ライブデモが公開されており(リンク先で実際に雨滴が垂れるアニメーションを確認できます)、GitHub上で**GLSLコード(fragment shader)**も閲覧可能ですdev.todev.to。コード中には詳しいコメントも付されており、Three.jsでの実装方法(u_textureに背景画像、u_timeで時間経過を渡し、gl_FragColor計算時にUVを雨滴分だけオフセットしてtexture2Dサンプリングする処理など)が示されています。

p5.js(WEBGLモード)での雨エフェクト重ね合わせ

p5.js のWEBGLモードでも、画像や映像に雨のシェーダ効果を重ねた作品例があります。例えば、p5.js公式エディタ上の**「Rainy window」というスケッチ(作者: knagai, 2019年)では、背景となる映像の上に窓ガラスを伝う雨滴の表現を加えていますeditor.p5js.orghimco.jp。この作品ではビデオを背景テクスチャとしてキャンバスに描画しつつ、WEBGLシェーダで水滴による歪み効果と画面の曇りを実装しており、雨の日に窓越しに外を見るような演出がなされています(作品内ではビデオ音量の調整等も行われていますhimco.jp)。また、chooblarin氏による「Camera Rainy Window Effecteditor.p5js.orgというスケッチでは、カメラ映像を背景にリアルタイムで雨粒エフェクトを重ねています。こちらはユーザーのカメラ入力映像に対し、水滴が垂れる表現とそれによる背景像の逆転・拡大(屈折)をシェーダで実現したデモです。いずれの例でもGLSLフラグメントシェーダのコードは公開されており、p5.jsエディタやOpenProcessing上で実行可能です。コード中でshader()を用いてWEBGLモードのシェーダを適用し、uniformにテクスチャや時間を渡して雨のアニメーション**を描画しています。これらのデモページを実際に開いてみることで、静止画・動画と雨エフェクトの組み合わせを確認でき、GLSLコードも参照できます。

参考資料: ShaderToyの雨エフェクトgodotshaders.comgodotshaders.com、Codrops雨滴シェーダの概要webgl.souhonzan.org、Three.js雨シェーダのコード抜粋dev.to、p5.js雨窓効果スケッチ一覧editor.p5js.orgなど。



https://geni.us/o5KO1Qg

サイコパス的キャラクター

 

  • 羊たちの沈黙(1991)/ハンニバル・レクター
    類型:高機能・洗練型 怖さの核:知性と共感欠如が“言葉”だけで人を追い詰める。冷静さと礼節が暴力性を包み隠す。 Wikipedia+1

  • ミザリー(1990)/アニー・ウィルクス
    類型:執着・介護支配型 怖さの核:善意と献身が秒で制裁へ反転。“普通の人”の殻のまま暴走する異常。 WikipediaWikipedia映画.com

  • 悪魔のいけにえ(1974)/レザーフェイス
    類型:家族共同体・道具依存型 怖さの核:幼児性×従属心×仮面=感情の読めなさ。皮のマスクとチェーンソーが“予兆のない暴力”を象徴。 Wikipedia+1

  • ノーカントリー(2007)/アントン・シガー
    類型:運命論・確率支配型 怖さの核:人命をコイントスに委ねる非人格化。感情の不在と冷徹な手順が人間味を消し去る。 Wikipedia+1

  • ナイトクローラー(2014)/ルー・ブルーム
    類型:成功至上・企業語り型 怖さの核:自己啓発めいた語りで倫理境界を塗り替える“無痛の野心”。成功してしまう点が背筋を冷やす。 WikipediaTIME

  • 黒い家(1999)/(※大竹しのぶの怪演で知られる加害者像)
    類型:日常隠匿・保険金犯型 怖さの核:主婦の外面と家庭の内奥が乖離し、保険金を軸に冷徹な加害が積み上がる“生活ホラー”。 Wikipediaallcinema

  • 冷たい熱帯魚(園子温)
    類型:支配・教唆型(カリスマ小業者) 怖さの核:軽口と馴れ合いで境界を崩し、他人を加害の共犯へ落とす磁力。実在事件ベースの生々しさ。 Wikipedia

  • 悪の教典(2012)/蓮実聖司
    類型:カリスマ教師・擬態型 怖さの核:社交性と好人物の仮面の下で、効率と快楽で人間を“処理”する職能的殺人。 WikipediaWikipedia

  • 火の粉(原作:雫井脩介)/武内真伍(映像化あり)
    類型:隣人侵入・恩着せ型 怖さの核:“親切”を介して距離をゼロにし、疑念をガスライトで反転させる家庭内浸食。 Wikipedia




  • グラフィック系 BASIC プログラム サイト一覧

    グラフィック系 BASIC プログラム サイト一覧

    🖥️ グラフィック系 BASIC プログラムが試せるサイト

    サイト / 環境 説明 URL
    Basic4GL OpenGL対応のBASIC。3D描画可能。Windows向けIDEあり。 https://www.basic4gl.net/
    GLBasic クロスプラットフォーム対応のBASIC。2D/3Dゲーム制作向き。 https://www.glbasic.com/
    QB64 ギャラリー QBasic互換。ユーザー投稿のグラフィック作品多数。 https://qb64.com/
    jsbasic ブラウザで動くMSX風BASIC。描画命令に対応。 https://www.masswerk.at/jsbasic/
    Vintage BASIC 1970年代風のBASICを再現。Lunar Landerなど名作を含む。 https://www.vintage-basic.net/
    Rosetta Code - BASIC 多言語によるプログラミング例。BASICの描画例も豊富。 https://rosettacode.org/wiki/Category:BASIC
    PCjs Machines 実機エミュレーションでPC-BASICを再現。レトログラフィックに最適。 https://www.pcjs.org/
    10 PRINT ジェネレーター 有名な迷路生成ワンライナーを即試せる。 https://10print.org/

    サブジャンル化は資本主義的商品戦略であり、ニッチ市場を細かく囲い込み、消費を効率化する装置である

     

    1. 文化産業論的批判(アドルノ、ホルクハイマーなど)

    「サブジャンル化は資本主義的商品戦略であり、ニッチ市場を細かく囲い込み、消費を効率化する装置である」とする批判は、アドルノ & ホルクハイマーの「文化産業(Culture Industry)」論に根ざしています。彼らは文化を大量生産される「均質な商品」とみなし、大衆を受動的にさせ、「偽りの心理的欲望」を作り出すと指摘しました。Wikipedia+1


    2. ジェンダーやアイデンティティの再編成

    BLやヤオイなどのロマンス系ジャンルは、メインストリームとは異なる「マイナーなサブジャンル」として位置づけられがちですが、同時にマイノリティ表現の自律性を確保する手段ともなってきました。この点に関しては、学術的に直接扱っている資料は少ないものの、文化研究やジェンダー研究の文脈で詳しく論じられています(個別に興味があれば文献紹介可能です)。


    3. ジャンル理論(文学・映画)における反復と差異(Steve Neale)

    スティーヴン・ニールは映画ジャンル理論において、ジャンルは「反復(repetition)と差異(difference)」のシステムで構成されると論じています。つまり、観客にはジャンルとして認識されるための「慣習的規範(convention)」が必要ですが、同時に「微細な差異(invention)」が新しさを創り出し、サブジャンル化やジャンルの進化を促します。Penelope Leung A2 Media StudiesMedia Studies @ Guilsborough AcademyFiveable


    4. ネット時代のアルゴリズムとサブジャンル化

    NetflixやSpotifyなどのストリーミングサービスは、視聴傾向に基づいて非常に細かな「サブジャンル」的な分類でコンテンツを推薦します。しかしこれにより、ユーザーは過去のできごとに基づいた限られた提案しか受け取れず、「新しいものに出会う機会」を奪われるという批判があります。Business InsiderScientific AmericanarXiv+1The Guardian+1

    日本文学における批評史・ざっくり年表

     

    日本文学における批評史・ざっくり年表

    時期主なテクスト/人物批評の特徴
    平安前期(10世紀)『古今和歌集・仮名序』(紀貫之)六歌仙を実名で評し、「やまと歌」の美学基準を提示。作品論の萌芽。 時雨の百人一首
    鎌倉前期(13世紀)『無名草子』(Mumyōzōshi)物語と和歌を総覧する最古の本格批評書。作品評・作家評・女性文学論を併載。 OPEN SLCC
    室町(15世紀)世阿弥『風姿花伝』「幽玄」「花」を軸に能芸=総合芸術論を樹立。芸道批評が文学美学の参照軸に。 note(ノート)
    江戸中期〜後期本居宣長『源氏物語玉の小櫛』ほか注釈学が「もののあはれ」論を生み、テキスト内部の感情構造を精緻に読む国学的批評へ。 lifedoctor-classic.com
    明治(1880年代)坪内逍遥『小説神髄』西洋リアリズム理論を導入し、功利主義批評から「写実・人情」重視の近代文学批評へ転換。 Wikipedia
    大正〜昭和初期正宗白鳥・白樺派/プロレタリア批評自我表現 vs. 社会変革という二極化。文学時評が雑誌文化を牽引し、読者‐評論家‐作家の三角関係が成立。 掌のライナーノーツ
    戦中〜戦後直後小林秀雄『様々なる意匠』『私小説論』「批評もまた文学である」として直観と美的判断を前面に。以後の日本的エッセイ批評の文体を決定。 Wikipedia
    1950–70年代中村光夫・平野謙/柄谷行人・江藤淳「戦後文学」論争から構造主義・ポスト構造主義へ。文学を社会システムや記号として読む理論批評が台頭。 Wikipedia
    1980–90年代上野千鶴子編『フェミニズム文学批評』、浅田彰『構造と力』ほかジェンダー/ポストモダン批評が主流化。ポップカルチャー分析やサブカル批評も文学領域に侵入。 Google Books
    2000年代以降東浩紀『動物化するポストモダン』、ネット評論/AI批評データベース理論や SNS・ブログ発の評論が登場。紙媒体中心の批評から、オンラインの相互レビュー文化へ移行。 好書好日

    ストリーミングの推薦は①メタデータ供給→②候補生成→③ランキングの三段。

     ストリーミングの推薦は①メタデータ供給→②候補生成→③ランキングの三段。まず DDEX/ISRC/ISWC 等の正確な取り込みが土台。候補生成は Two-Tower でユーザー&楽曲を埋め込み化し、ANN(HNSW 等)で高速に近傍探索。ランキングでは音響特徴・行動ログ・文脈(セッション/デバイス)を学習し、関連性と多様性・新規性のバランスを最適化。評価はCTRだけでなく長期満足・カバレッジ・偏りの少なさも見るのが実務的です。冷スタートはメタデータ補完と類似嗜好の伝播で緩和。公平性(地域・ジェンダー等)の監視や、A/Bで短期指標偏重を避ける設計も重要です。説明可能性の確保も課題。継続学習も鍵。

    まず押さえるべき一次情報(実装寄り)

    • Spotify の2段階推薦(候補生成→ランキング):公式エンジニアリングブログが全体像を明示。Spotify Engineering

    • ベクトル検索の実装選択:Annoy(旧来)→ Voyager(HNSW系) への移行背景と利点。GitHubSpotify Engineering

    • Two-Tower/bi-encoder 系の候補生成(オーディオブック/ポッドキャストだが手法は音楽にも共通)。Spotify Research

    • メタデータ標準 DDEX(ERN、ISRC/ISWC/UPC、地域差などの流通ボトルネック)。DDEXDDEX Knowledge Base

    • **「属性ベース」 vs **「行動ベース」の源流:Pandora の Music Genome Project(人手タグ付け×音楽学的特徴)。PandoraWikipedia

    “掘ると勝てる”技術テーマ案(ニッチ寄り)

    1. メタデータ欠損が推薦に与える損失の実証:DDEX/識別子の欠落・不整合→誤分類→露出低下の因果。DDEXDDEX Knowledge Base

    2. Annoy vs HNSW/Voyager:近似最近傍探索の設計比較(遅延・精度・更新頻度・言語バインディング)。Spotify EngineeringGitHub

    3. Two-Tower + 追加文脈(セッション・デバイス・軽量弱シグナル統合)の実装パターン。Spotify Research

    4. 公平性と多様性:長尾・新規アーティスト露出の制御、ジェンダー・地域バイアスの測定。Music Tomorrow

    5. 2段階推薦の評価設計:カバレッジ/ノベルティ/セロンガ(長期満足)と A/B の罠(短期指標過剰)。※設計論は上の一次資料の枠内で整理可。Spotify Engineering

    6. API 変遷の影響:Spotify Web API の変更(2024-11発表)と音響特徴量周りの現状確認・代替。Spotify for Developers

    参考データセット/API(検証素材)

    • Million Playlist Dataset(MPD):プレイリスト継続課題の定番データ。Spotify EngineeringSpotify Research

    • Music Streaming Sessions Dataset(MSSD):セッション/行動ログでの順次推薦研究に有用。arXiv

    • Spotify Web API(メタデータ/分析):エンドポイントは変更点に留意。Spotify for Developers+1

    既存ガイドの立ち位置(ご提示の2サイト)

    • Music Tomorrow:RSO(Recommender System Optimization)という枠で、テクニカル/オン・オフプラットフォーム信号の整理が良質。実装に近いが、内部モデルの数式や ANN 設計までは踏み込まない。Music Tomorrow+1

    • Soundchartsメタデータ実務アーティスト向け運用が中心。技術アーキテクチャの深掘りは限定的。Soundcharts+1

    記事・動画タイトル案(技術寄りだが一般にも届く言い換え)

    • Spotifyは“2段階”で曲を見つける:候補生成×ランキングの設計図」Spotify Engineering

    • AnnoyからVoyagerへ:音楽推薦を速くした“近傍探索”の進化」Spotify Engineering

    • メタデータの穴が露出を削る:DDEX/ISRC/ISWCの実務チェックリスト」DDEXDDEX Knowledge Base

    • Two-Tower はなぜ強いか:セッション文脈と弱シグナルを束ねる最新手法」Spotify Research

    • フェア&ダイバーシティを定量化する:長尾露出とバイアス評価の基礎」Music Tomorrow

    SEO キーワード束(JP/EN ミックスで拾いに行く)

    • 「Spotify 推薦 アルゴリズム 2段階 / candidate generation / ranking」Spotify Engineering

    • 「Annoy / HNSW / Voyager 近似最近傍 ベクトル検索 音楽レコメンド」Spotify Engineering

    • 「DDEX ERN ISRC ISWC メタデータ 取り込み エラー 影響」DDEXDDEX Knowledge Base

    • 「Two-Tower recommender / session-based recommendation / playlist continuation」Spotify Research+1

    • 「推薦 公平性 バイアス 多様性 音楽」Music Tomorrow


    まとめ

    • 一次資料(Spotify Eng/Research、DDEX、学術データセット)を軸に、「メタデータ供給網の品質 → 候補生成(Two-Tower + ANN)→ ランキング → 公平性・評価」という実装の縦断で書けば、既存の運用系ガイドとの差別化がはっきり出せます。Spotify Engineering+1DDEXDDEX Knowledge BaseMusic Tomorrow