media
god rays / light rays / crepuscular rays
画面の上にある光源から扇状の光条を降ろし、ごくゆっくり回して空気感を出す背景演出。conic-gradient1枚で作れるので画像もWebGLも要らない。opacity 0.06〜0.12の「言われないと気づかない濃さ」で止められるかが品位の分かれ目。
02 — Prompt template
03 — Params
rays(見えている光条の本数) — 範囲 3〜12 / 初期 5
画面に入ってくる本数。4〜6本が自然。増やすほど間隔が詰まり、光ではなく放射状の模様に見え始める。spread(1本の広がり deg) — 範囲 4〜40 / 初期 16
1本が占める角度。本数どうしの間隔(周期)の8割までが上限。それを超えると隣とつながり、光条ではなく「明るい背景」になる。speed(回転の速さ deg/秒) — 範囲 1〜30 / 初期 8
5〜12が「気づかれずに動く」域。20を超えると回転そのものが目に留まり、背景ではなく主役になる。opacity(光の濃さ) — 範囲 0.02〜0.24 / 初期 0.1
暗い背景なら0.06〜0.12が適正域。0.18を超えると見出しのコントラストを削り、可読性の問題になる。
04 — Vocab
god rays(crepuscular rays) — 雲や隙間から差し込む筋状の光。日本語では光条・薄明光線。Webでは上方の光源から降ろす扇状のグラデーションとして再現する。
repeating-conic-gradient — 中心から角度方向に一定周期でくり返す円錐グラデーション。放射状に等間隔で並ぶものは、これ1枚でDOMを増やさず作れる。
周期ループ — くり返しパターンは1周期ぶん動かせば見た目が元に戻る。360度回さず「360÷本数」度で1ループにすると、継ぎ目なしのまま尺が短くなる。
回転中心 — rotateは要素自身の中心を軸に回る。光源を要素の外(at 50% -10%等)に置いたまま回すと、光源が固定されず公転する。「中心=光源」に組むのが定石。
mask-image — 要素の見え方をグラデーションで削る指定。光条の外周を透明に落とし、途中で切れたようなハードエッジを消すのに使う。
05 — NG → OK examples
NG
言い方: 「「ヒーローの背景に光が差し込んでる感じを足して」」
なぜNG: 光条を1本ずつdivで並べて個別に回す実装や、canvas/WebGLで作る過剰な実装が返ってくる。濃さの指定がないと opacity 0.3 の「白い扇」が乗り、見出しのコントラストを壊す。
OK
言い方: 「「god raysを実装。中心=光源の正方形オーバーレイをヒーロー上辺中央に置き、repeating-conic-gradientで全周13本(見え5本)、1本16degの減衰、blur 9px。rotateで毎秒8deg、1周期ぶんを1ループ。opacity 0.10、maskで外周を減衰、reduced-motionは静止」」
なぜOK: 作り方(1枚のconic-gradient)・光源の置き方・本数・速度・濃さ・ループ単位まで指定している。「中心=光源」と「1周期ぶんを1ループ」の2点が、光源の公転とパターンの継ぎ目という2大バグを最初から潰す。
