🌈 requestAnimationFrameで背景を呼吸させる

画像が読み込めないときはCanvasTextureで即席の環境マップを生成します。setIntervalからrequestAnimationFrameに変えたおかげで、1フレームごとにタイミングが揃い、GPUコストが安定しました。

更新間隔: 100ms(実測)
稼働中: 0.10秒ごとにテクスチャを更新。FPSは60のまま維持されています。