---
generated_at: 2026-02-21 10:15:00
metrics:
  claims_total: 16
  claims_with_evidence: 15
  claims_without_evidence: 1
confidence_derived: 0.94
---

# 根拠レポート：2-背景画像キャッシュ

## 本レポートについて

### 目的
本レポートは、生成された設計書・ドキュメントの信頼性を検証し、人間レビュアーが効率的にレビューできるようにすることを目的としています。

### チェック方法
以下の観点でドキュメントの内容（Claim：主張）を検証しています：

1. **根拠の有無確認**：各主張に対して、ソースコード・既存設計書・要件定義書などの根拠（Evidence）が存在するか
2. **根拠との整合性**：主張の内容が根拠と矛盾していないか
3. **網羅性**：参照すべき情報源を適切にカバーしているか

### 信頼度スコアの算出
- **confidence_derived** = 根拠あり件数 / 総主張件数
- 状態「○」：根拠あり、「△」：根拠不足または要確認

### 本レポートの使い方
1. まず「サマリー」で全体の信頼度と優先レビュー項目を確認
2. 「Claims と根拠の対応」で △ の項目を重点的にレビュー
3. 「不足情報」で補完が必要な情報源を確認

---

## 1) サマリー（まず見るところ）
- 総合信頼度（derived）：**0.94**
  - 根拠あり：15 / 16、根拠なし：1
- 優先レビュー（高）
  1. **getsize関数の具体的な計算ロジック**：根拠不足

## 2) 参照した情報（Evidence一覧）

- E-01: `src/scene/play/play_graphics.hsp` 50-124行目（loadBGGraphics関数）
- E-02: `src/scene/play/play_graphics.hsp` 77-79行目（cache/bgディレクトリ作成）
- E-03: `src/scene/play/play_graphics.hsp` 82-89行目（キャッシュ未生成時のリサイズ・保存処理）
- E-04: `src/scene/play/play_graphics.hsp` 53-56行目（元画像存在チェック）
- E-05: `src/scene/play/play_graphics.hsp` 57-74行目（フォールバック処理）
- E-06: `src/scene/play/play_graphics.hsp` 104-121行目（外部画像パス処理）
- E-07: `src/scene/play/play_init.hsp` 682行目（loadBGGraphics呼び出し）
- E-08: `kshootmania.hsp` 525-526行目（bg変数のconfig.ini読み込み）
- E-09: `docs/code-to-docs/帳票一覧/帳票一覧.csv` No.2行（帳票定義）

## 3) Claims と根拠の対応（レビューの主戦場）

| Claim ID | 主張 | Evidence | 状態 |
|---|---|---|---|
| C-01 | 出力形式はJPEG（image/jpeg） | E-03（88行目: alSaveFile ...".jpg","image/jpeg"） | ○ |
| C-02 | 出力先はcache/bg/{bgname}0.jpg, cache/bg/{bgname}1.jpg | E-03（82,93行目: dir_default+"\\cache\\bg\\"+bgname+"0.jpg"） | ○ |
| C-03 | bg>=1の場合のみ処理実行 | E-01（51行目: if(bg>=1)） | ○ |
| C-04 | 元画像サイズは720x640 | E-03（87行目: alStretchScreenToImage 2,2,0,0,720,640,...） | ○ |
| C-05 | キャッシュ画像サイズはgetsize(900)xgetsize(800) | E-03（86-88行目: alCreateImage 2,two(getsize(900)),two(getsize(800))） | ○ |
| C-06 | キャッシュ未生成時のみ保存処理を実行 | E-03（82-83行目: exist ...+".jpg" / if(strsize=-1)） | ○ |
| C-07 | 元画像不存在時にbgname="desert"にフォールバック | E-05（73行目: bgname="desert"） | ○ |
| C-08 | cache/bgディレクトリが存在しない場合に自動作成 | E-02（78-79行目: dirlist buf,...,5 / if(buf=""):mkdir dir_default+"\\cache\\bg"） | ○ |
| C-09 | セミコロン区切りで2つのパスを分割可能 | E-05（58-66行目: split bgname,";",bgname2） | ○ |
| C-10 | 外部画像はcache/playbg0.jpg, cache/playbg1.jpgとして保存 | E-06（109,117行目: alSaveFile dir_default+"\\cache\\playbg0.jpg"/"playbg1.jpg"） | ○ |
| C-11 | loadBGGraphicsはplay_init.hspから呼び出される | E-07（682行目: loadBGGraphics） | ○ |
| C-12 | bg変数はconfig.iniのbackground=から読み込まれる | E-08（525-526行目: background=のパース） | ○ |
| C-13 | addsprでスプライトモデルを作成 | E-01（92,103行目: addspr mod_bg0/mod_bg1） | ○ |
| C-14 | regobjで3Dオブジェクト登録 | E-01（122行目: regobj obj_bg,mod_bg0） | ○ |
| C-15 | alStretchScreenToImageでリサイズ | E-03（87行目: alStretchScreenToImage 2,2,0,0,720,640,...） | ○ |
| C-16 | getsize関数は「2のべき乗に切り上げた値」を返す | **根拠なし** | △ |

## 4) 不足情報（Unknown / Missing）
- C-16: getsize関数の正確な定義が本プロジェクト内のソースコードで確認できていない。HSP3のartlet2d系ライブラリの関数である可能性が高く、テクスチャサイズとして2のべき乗値を返すと推測されるが、正確なロジックは未確認。
  - 候補：HSP3のartlet2d.hspライブラリソース / HGIMG3関連ドキュメント / getsize関数の定義ファイル

## 5) リスクフラグ（レビュー観点）
- 0: loadBGGraphics関数の処理フローはソースコードと一致しており低リスク
- 0: キャッシュファイルパスの構成はソースコードで確認済みで低リスク
- 1: getsize関数の返り値の正確な計算式が未確認のため中リスク

## 6) レビュアーチェックリスト（最小）
- [ ] loadBGGraphics関数の行番号がソースコードの現行バージョンと一致するか確認
- [ ] getsize関数の実際の戻り値を確認（テクスチャサイズ計算ロジック）
- [ ] cache/bgディレクトリのパーミッション設定が適切か確認
- [ ] JPEG圧縮品質のデフォルト値がalSaveFileの仕様と合っているか確認
