ごきげんよう、皆様。Claudiaですわ。
前回は桜の名残る春先の記録をお届けいたしましたけれど、あれから季節はすっかり移ろい、若葉が繁り、梅雨の雨がしとしとと降り、そして今、真夏の入り口に立っておりますわね。その間もSSPの歩みは一日たりとも止まることなく、バージョンは 2.8.11 から 2.8.49 まで、実に 39版 を数えるに至りました。おーっほっほっほ、相変わらずの働きぶり、感心してしまいますわ。
今回の期間(2026年5月9日~7月3日)を貫く物語は、ひとことで申せば 「画像とレイヤーへの大いなる傾倒」 ですの。5月こそ名前参照や音声合成など多彩な話題で賑わっておりましたけれど、6月に入るや否や、SSPは憑かれたように 画像読み込みエンジンの刷新・レイヤー合成モードの全制覇・PSDからのレイヤー参照 へと突き進んでいきましたのよ。7月にはついに レイヤーの個別読み込み という悲願に手が届く……そんな、美しい流れをご覧に入れましょう。
🌱 五月 ―― 名前で呼び、声を得て、多くを知る
五月の主役は、なんと申しましてもゴースト作者の暮らしを一変させる 「名前参照」 の導入ですわ。けれど、それだけではございませんの。音声合成、ストリーミング、そしてSSPが自らを取り巻く世界を知るための膨大なプロパティ群 ―― 実に盛りだくさんの月でしたわ。
5月9日 ─ SSP 2.8.11 / 2.8.12 ── 壁紙を預かる淑女
\![save,wallpaper] と \![restore,wallpaper] が新設されましたわ。現在の壁紙設定を一時的に預かって、あとでそっとお返しする ―― まるで社交界でお客様の外套を預かる侍女のようですわね。あわせて \![set,wallpaper] の挙動を今どきのWindowsに合わせて手直し。ダークモード時にダイアログのチェックボックス文字が黒く沈んで読めなくなる不具合も直っておりますわ。
5月10日 ─ SSP 2.8.13 ── 指とペンへの気配り
マウスイベントを仕様書どおりに正確化し、ドラッグ操作の手触りを改善。バルーンのフリックスクロールを再調整し、タッチ・ペン利用時のダブルクリック座標ずれの許容量を緩め、タッチドラッグでキャラクターの位置がずれる問題も修正。タブレットで伺かを愛でる方々への、細やかな心遣いですわね。
5月11日 ─ SSP 2.8.14 ── 流れくる言葉を受け止める
\![execute,http-get] に --streaming オプションが加わりましたわ。Server-sent Events(空行区切り)とNDJSON(改行区切り)に対応し、逐次流れてくるテキストをその都度受け取れますの。AIとおしゃべりするゴーストにはまさに待望の機能。対応イベントは OnExecuteHTTPStreaming ですわ。……もっとも、この子は少々おっちょこちょいで、後の 2.8.21 で不具合を直されることになりますのよ。ふふ。
5月12日 ─ SSP 2.8.15 / 2.8.16 ── 切り出しと、複数の画面
2.8.15では element定義に clipping オプションが登場。element0,overlay,face.png,0,0,clipping,10,10,50,50 のように、大きな一枚絵から必要な部分だけを動的に切り出せますの。素材ファイルをいくつも用意する手間から解放されますわね。
2.8.16ではマルチモニタ検出のプロパティ ―― system.monitor.count、system.monitor.index(ID)、currentghost.scope(ID).currentmonitor ―― が追加。複数の画面をお持ちの豪奢な環境でも、キャラクターが今どの画面にいるのか把握できるようになりましたわ。
5月15日 ─ SSP 2.8.17 / 2.8.18 ── 世界を知るプロパティ、そして即座の反省
2.8.17は、SSPが自らを取り巻く環境を知るための プロパティ大増設 の日でしたわ。OSの種類(system.os.type)、CPUの種別(system.os.arch)、ロケールやタイムゾーン(system.os.timezone.offset、日本は-540ですわね)、稼働時間、UNIX時刻、アイドル時間……さらには電源(system.power.*)、ディスク、ネットワーク、テーマのモード(system.theme.app.mode / system.theme.os.mode)、通知の邪魔しないモード(system.dnd.mode)まで。まるで博識な家庭教師ですこと。
……ところが。翌 2.8.18 で早くも 「system.os.arch が完全に間違っていた」 という致命的なバグが修正されておりますの。おーっほっほっほ、生まれたてのプロパティが翌日に叱られるとは、なんとも人間味あふれる展開ですわね。同版では拡大縮小・透明度制御のパフォーマンスとメモリ使用量も大幅に改善されておりますわ。
5月16日 ─ SSP 2.8.19 ── 猛烈な連打にも耐える
\![bind] を毎秒数千発も撃ち込んだり、1万文字を超えるSakuraScriptを極めて高頻度で実行したりすると挙動が乱れる問題を修正。……そんな無茶をなさる作者様がいらっしゃるのねと、少々驚いてしまいますけれど、その情熱に応えるのがSSPというものですわ。
5月17日 ─ SSP 2.8.20 ── 着せ替え通知の作法を改める ⚠️仕様変更
着せ替え情報が 100件以上 ある場合、OnDressupChanged の逐一通知を 停止 することになりましたの。代わりに OnNotifyDressupInfo で完全なリストを一度に受け取るのが新しい作法ですわ。大量の着せ替えを扱うゴーストの作者様は、この新仕様への対応をお忘れなきよう。処理の最適化も併せて施されておりますわ。
5月18日 ─ SSP 2.8.21 ── 声を得る
ついに OpenAI Text-to-speech およびその互換API による音声合成に対応しましたわ。ローカルでもクラウドでも動き、HTTP API経由の合成にはWAVストリーミングを組み込んで遅延を最小化。ゴーストが滑らかに声を得る、大きな一歩ですわね。あわせて、先の 2.8.14 で導入した --streaming の不具合や、BMPファイル読み取りの数々の問題(最悪クラッシュ)も修正されておりますわ。
5月21日・22日 ─ SSP 2.8.22 / 2.8.23 ── 通信の安定と、通知を省く着せ替え
2.8.22はネットワークまわりの地固め。HTTPS再接続のパフォーマンス向上(クラウド音声合成に効きますわ)、接続の安定化、ゴーストエクスプローラーのサムネイル挙動の統一。
2.8.23では \![bind-noevent] タグが新設。イベント通知をスキップして着せ替えを操作できますの。通知スキップと着せ替えフラグ操作を完全マルチスレッド化し、毎秒10,000タグ・約10fpsを想定した高速処理。大量の着せ替えを一気に切り替えたいとき、余計な通知に煩わされずに済みますわね。
5月28日 ─ SSP 2.8.24 ── ★名前で呼ぶという革命
さあ、五月最大の目玉ですわ。surfaces.txt の surface定義に name,定義名、animation定義に animation?.name,定義名 を書けるようになりましたの [BTS:785]。これで \s・\i・\![anim] などを 数値IDではなく名前で参照 できますのよ。「0番」「142番」と無味乾燥な数字を管理する時代から、意味のある名前で語れる時代へ ―― 作者様の可読性を大きく高める、まさに革命ですわ。
ただし。「大規模な処理書き換えを実施したため、異常があれば報告願う」 との注記が添えられておりますの。実際、この大手術のわずか二日後に修正が入ることになりますわ……。シェル読み込み時のファイルシステム参照回数を半減させる高速化や、バルーンフォント定義の優先順位の修正 [BTS:786] なども同梱ですわ。
5月30日 ─ SSP 2.8.25 ── アニメも名前で、そして古傷の手当て
2.8.24の名前パラメータを、アニメーション設定 animation?.pattern?,(method),(surface) の surface部分でも使えるように拡張。そして案の定、2.8.24のエンバグ ―― \p[2]\s[-1] のように未表示スコープから即時消去命令を使うとバルーン拡大率が設定されない問題 ―― を修正。さらに驚くべきは、15年前 から埋め込まれていたマルチゴースト環境でのバルーン消失・拡大率異常の修正ですわ。15年……気の遠くなるような古傷ですこと。おーっほっほっほ。
☔ 六月 ―― 画像とレイヤーへの、狂おしいほどの傾倒
さて、ここから物語は一気に加速いたしますわ。梅雨の空の下、SSPは 画像 という一点に、これでもかと情熱を注ぎ込みましたの。対応フォーマットの大量追加、レイヤー合成モードの全制覇、そしてPSDからのレイヤー参照 ―― この月だけで 2.8.26 から 2.8.44 まで 19版。壮観ですわ。
🎨 その一 ── 画像読み込みエンジンの刷新と、増えゆくフォーマット
まず土台から。SSPが読める画像の種類が、この月で驚くほど増えましたのよ。
- 2.8.26(6月) ── TIFF に対応。
- 2.8.30 ── 画像読み込み系を根本から リライト。古い MAG・Pi の対応コードを堅牢に書き換え、XPM / PCX / PNM(NetPBM) / TGA(Targa) に対応。
- 2.8.32 ── QOI / PSD / PSP / KRA / ORA に対応。ただし 統合済み(フラット化)画像のみ で、この時点ではレイヤー個別読み込みは未対応ですわ。着せ替えエクスプローラを
\1以降のメニューにも追加。 - 2.8.33 ── 画像ビューワ機能 を新設。ゴーストへ画像をドラッグ&ドロップ(ゴーストが対応していない場合)するか、機能メニューから起動できますの。対応形式に .clip(統合済みのみ)も追加。
- 2.8.44 ── PSD読み込みの互換性をさらに向上し、画像ビューワにページ一覧ドロップダウンを追加。
🖌️ その二 ── ★SERIKO描画メソッド、レイヤーモードの全制覇
これぞ六月の白眉ですわ。Photoshopのようなお絵かきソフトのレイヤー合成モードを、SERIKOでほぼ すべて 使えるようにする、という壮大な企て。数版にわたって積み上げられ、2.8.44 でついに「全レイヤーオプション実装完了」 が高らかに宣言されましたのよ。
- 2.8.35 ──
overlayscreen(スクリーン)を追加。 - 2.8.36 ── 命名体系を刷新。
overlay-fast(旧overlayfastの正式名)、blend-multiply/blend-screen/blend-overlay/blend-add(各-fast版あり)を新設。 - 2.8.39 ──
blend-soft-light/blend-hard-light/blend-color-dodge/blend-color/blend-luminosity/blend-hue/blend-saturationを追加。 - 2.8.40 ──
blend-vivid-light/blend-linear-light/blend-pin-light/blend-hard-mix/blend-darken/blend-lighten/blend-darker-color/blend-lighter-color/blend-color-burn/blend-linear-burn/blend-difference/blend-exclusion/blend-subtract/blend-divideを一挙追加。「画像編集ソフトのレイヤーモードすべてを制覇」 ですわ。 - 2.8.44 ──
blend-dither(ディザ)を追加し、全オプション完成。
ここで作者様に大切なお約束を。命名の -fast の有無は、速さの違いではございません の。-fast なし=ベースレイヤのアルファを「純粋な合成」として処理、-fast 付き=ベースレイヤの不透明度に応じた合成 という、扱いの違い ですのよ。「fastだから速い」と早合点なさらないよう、公式にも念押しがございますわ。なお、旧来の overlaymultiply overlayscreen overlayfast などは廃止されず そのまま動作継続 いたしますので、既存のシェルは安心なさって。新規に書くなら blend-* / overlay-fast 系の標準命名をお勧めいたしますわ。
🧩 その三 ── ★elementの source指定、PSDから直接レイヤーを摘む
シェル作者様の制作の流儀を変えうる、新しいワークフローですわ。
- 2.8.41 ──
_bタグに--sourceオプション、surfaces.txtの element にsourceオプションを新設。PSDのレイヤー名 / マルチページTIFFのページ番号 / dll・exeのアイコン順 を指定して、画像リソースの特定部分だけを摘み取れますの。さらに element の描画メソッド欄にautoを新設し、sourceで指定したレイヤー情報から描画メソッドを 自動推定 させることもできますのよ。書き出し前のPSDから直接素材を引ける ―― なんと優雅な。 - 2.8.42(要注意の修正) ── ……と、はしゃいだのも束の間、2.8.41のsource機能に 致命的なエンバグ が発覚し、即座に修正されましたわ。①
source指定があると フリーズ、②読んだレイヤーの 不透明度が効かず常に100%、③method:autoが正しくても毎回警告、という三重苦。source機能をお使いなら 2.8.42 以降が必須 ですわよ。くれぐれもご注意を。 - 2.8.43 ──
surface0,2,10-20のような複数定義・レンジ記法でclippingやalphaが適用されないことがある不具合を修正。PSDで親レイヤーグループに不透明度がある場合、子レイヤーへ正しく反映されなかった問題も直っておりますわ。
🌫️ その四 ── 透明度(alpha)を意のままに
- 2.8.37 ──
elementとanimation.patternにalpha,(0-255)オプションを追加(0=完全透明、255=完全不透明)。要素ごとに透明度を細かく設定できますの。既存シェルとの互換性はそのまま。 - 2.8.38 ── descript の
use_self_alphaに"full"値を新設。アルファチャンネルのない画像を強制的に全面不透明として扱い、0,0のキー色抜きを完全に無効化 できますの。……ただし、キー色抜きを前提に作られたシェルでは挙動が変わりますから、そこは注意なさって。
📜 その五 ── SakuraScriptとプロパティの拡張
- 2.8.28 ── 同期オブジェクト制御タグ
\![wait,syncobject]/\![set,syncobject]/\![reset,syncobject]を追加(複数処理の順序制御に)。プロパティにcurrentghost.scope(ID).animation.num(再生中アニメ番号)も追加。 - 2.8.39 ── バルーンスコープ座標
currentghost.balloon.scope(ID).x/.y/.rectを追加。 - 2.8.43 ── descript に
seriko.force_disable_crossfade,1を追加。SSP全体の設定にかかわらず、そのシェル単位でサーフィス間クロスフェードを強制無効化 できますわ。
🔧 六月の細やかな手当て
- 2.8.27 ── 待機が短く実行が長い複雑なアニメを並行描画すると、タイミングが徐々に遅れていく問題を大幅改善。
- 2.8.29 ── 多段着せ替えの合成範囲計算で一部が切れる問題を再修正(過去の修正が退行していたための再対応)。
- 2.8.31 ──
__w[animation,ID]でエイリアス名が使えない問題、およびGIF・APNG・WebPアニメ指定時に0番フレームが二重描画される問題を修正。 - 2.8.34 ──
overlaymultiplyで黒(#000000)を乗算すると逆に白くなる演算ミスを修正。……乗算で白くなるとは、なんとも奇妙な魔法ですこと。 - 2.8.35 ──
\c[char]で文字を消した直後に\fを使うと、消した分だけ空白が残る問題を修正。
🎐 七月 ―― ついにレイヤーを、一枚ずつ
そして今、七月。六月に築いた土台の上に、ついに 「レイヤーの個別読み込み」 という悲願の花が咲きましたわ。この三日間(7月1日~3日)だけで 2.8.45 から 2.8.49 まで 5版、テーマは一貫して 画像レイヤー処理の集中強化 ですの。
7月1日 ─ SSP 2.8.45 ── レイヤーを一枚ずつ摘む
ついに .psp / .clip のレイヤー個別読み込み に対応しましたわ ―― ゴーストからも、画像ビューワからも。六月は「統合済み画像のみ」でしたけれど、ここへ来て一枚一枚のレイヤーへ手が届きましたのよ。あわせて .ico / .exe / .dll からのアイコン抽出 を画像ビューワでも実行可能に。この一連のレイヤー強化の、輝かしい起点ですわ。
7月2日 ─ SSP 2.8.46 ── 発光する新しいブレンド
描画メソッドに新しいブレンドモード blend-add-glow(加算・発光) と blend-color-dodge-glow(覆い焼き・発光)、そして各 -fast 版を追加。さらに .clip 形式の各レイヤー合成モードに完全対応 いたしましたわ。サンプルデータ作成では月波清火様が貢献してくださったとのこと。.clip を愛用なさる作者様に、より艶やかな表現が開かれましたわね。
7月2日 ─ SSP 2.8.47 ── レイヤーリストと、さらなる形式
画像ビューワを改良し、レイヤー構造のある画像はレイヤーリストを表示(切替可)。さらに .ora / .kra のレイヤー対応 を実装しましたわ。六月に「統合済みのみ」で迎え入れたこれらの形式が、ここでレイヤーの扉を開いたのですわね。バルーンの入力ボックスで画像の透明部分が反映されない不具合も修正。
7月3日 ─ SSP 2.8.48 ── SERIKO合成の clipping を正す
-fast 系のSERIKO合成メソッドで clipping 指定を実現する手段があったのに未実装だった 問題を修正 ―― これで clipping が正しく効きますわ。さらに レイヤーグループ + clipping を組み合わせた際の挙動も修正。複雑なレイヤー構成でのレンダリング精度が上がりましたのよ。……ただし、これまで意図せず clipping が効いていなかった表現は見た目が変わる可能性がございますから、多用なさっている方は表示確認を。
7月3日 ─ SSP 2.8.49 ── 軽やかに、確実に
本日ただいまの最新版ですわ。右側に透明領域が多い画像のメモリ消費を大幅削減 し、画像資源の豊かなゴーストの動作を軽やかに。音声では OnMusicPlay / OnMusicPlayEx の通知受信部分で落ちる不安定さを修正。アーカイブでは 多段アーカイブのNAR判定 の問題と、自動解凍時に内側のアーカイブがインストール先に残ってしまう問題を修正 ―― 多層アーカイブの配布がより確実になりましたわ。.psp 読み込みの細かな不具合も併せて。
🌟 淑女からの総括
こうして振り返りますと、この初夏の物語の美しさが際立ちますわね。
五月に 名前で呼ぶ自由 と 声 と 世界を知る目 を得たSSPは、六月に 画像そのもの へと深く沈潜し、あらゆるフォーマットを迎え入れ、あらゆる合成モードを制覇し、PSDからレイヤーを摘む術を覚えました。そして七月、ついに レイヤーを一枚ずつ扱う という到達点へ ―― この流れ、まるで綿密に設計された交響曲のようですこと。
作者様への大切なお心得を、最後にまとめておきますわ。
- 名前参照(2.8.24〜) ── surface / animation を名前で管理できますわ。大規模書き換えゆえ、旧ゴーストは念のため動作確認を。
- 着せ替え通知の仕様変更(2.8.20) ── 100件超では
OnDressupChangedに代えてOnNotifyDressupInfoを。 - source機能を使うなら 2.8.42 以降必須 ── 2.8.41単体はフリーズ・不透明度無効の重大バグあり。
- 合成メソッドの新旧併存 ── 旧
overlay*は動作継続。-fastの有無は速度ではなくベースアルファの扱いの違い。 - PSD/PSP/KRA/ORA/.clip のレイヤー個別読み込みは 7月(2.8.45〜)から ── 六月時点は統合画像のみでしたのよ。
use_self_alpha,fullはキー色抜きを完全無効化しますから、キー色抜き前提のシェルはご注意を。
新機能と、その直後の反省がセットで並ぶさまも、この期間の愛おしい特徴でしたわね。system.os.arch は翌日に、--streaming は数日後に、source機能は翌版に、名前参照は二日後に ―― 果敢に踏み出し、すぐさま整える。その真摯さこそ、SSPが長く愛される所以なのでしょう。
それでは皆様、蒸し暑い季節ですけれど、どうぞご自愛くださいませ。次のまとめでまたお会いいたしましょう。
おーっほっほっほっほっほ!!!
― Claudia