コンテンツにスキップ

設定ファイル

このアプリケーションは、YAML 形式の設定ファイルによっていくつかの挙動変更が可能です。

設定ファイルで設定できる項目は、環境変数でも設定が可能です。該当する設定が環境変数でも設定されている場合、環境変数の値が優先されます。

設定ファイルのパス

このアプリケーションは、既定では実行ファイルと同じ階層の data フォルダにある config.yml を設定ファイルとして使用します。

📂
| 📦 splashscreen-changer.exe
\- 📂 data
   \- 📄 config.yml

環境変数 CONFIG_PATH を使用することで、設定ファイルのパスを変更することができます。詳しくは 環境変数 ページをご覧ください。

設定項目

設定ファイルでは、以下の設定変更が可能です。

  • source
    • path: スプラッシュスクリーンのもととするファイルが格納されたフォルダパス
    • recursive: 深いフォルダにある画像ファイルも対象とするか
  • destination
    • path: スプラッシュスクリーンの反映先(アプリケーションフォルダ)のパス
    • width: リサイズ・クロップ後の画像横幅
    • height: リサイズ・クロップ後の画像縦幅

各設定項目を示すとき、source.path のようにピリオドで区切った形で表現することがあります。

source.path

必須か デフォルト値 環境変数
いいえ 動的に設定 SOURCE_PATH

スプラッシュスクリーンのもととするファイルが格納されたフォルダパスを設定します。ソースフォルダと呼びます。
アプリケーションは、このフォルダにある PNG ファイルをランダムで選択・取得し、スプラッシュスクリーンとして設定します。

この引数はオプションで、以下のフローでフォルダパスが決定されます。以下のフローで決定できない場合、アプリケーションはエラーを出力し、異常終了します。

  1. 環境変数 SOURCE_PATH
  2. 設定ファイル source.path
  3. ユーザーフォルダの Pictures フォルダ内、VRChat フォルダ

source.recursive

必須か デフォルト値 環境変数
いいえ true SOURCE_RECURSIVE

ソースフォルダで PNG ファイルを選択・取得する際、深いフォルダにある画像ファイルも対象とするかを設定します。

この設定値を true (有効) にすると、以下のツリーのうちすべての PNG ファイルが対象となります。false (無効) にすると、shallow.png のみが対象になります。

📂
| 🖼️ shallow.png
\- 📂 folder1
   \- 🖼️ deep.png
   \- 📂 folder2
      \- 🖼️ deeper.png
      \- 📂 folder2
         \- 🖼️ deepest.png

destination.path

必須か デフォルト値 環境変数
いいえ 動的に設定 DESTINATION_PATH

スプラッシュスクリーンファイル SplashScreen.png を格納するアプリケーションのフォルダパスを設定します。宛先フォルダと呼びます。
指定されたパスのフォルダには、EasyAntiCheat フォルダが存在する必要があります。

この引数はオプションで、以下のフローでフォルダパスが決定されます。以下のフローで決定できない場合、アプリケーションはエラーを出力し、異常終了します。

  1. 環境変数 DESTINATION_PATH
  2. 設定ファイル destination.path
  3. Steam ライブラリフォルダの中で、VRChat がインストールされているフォルダ

destination.width

必須か デフォルト値 環境変数
いいえ 800 DESTINATION_WIDTH

スプラッシュスクリーンファイル SplashScreen.png の横幅を設定します。

この設定項目の値と、destination.height の値から、選択された画像を自動的にクロップ・リサイズします。具体的な挙動については、後述する「クロップ・リサイズの仕様」をご覧ください。

destination.height

必須か デフォルト値 環境変数
いいえ 800 DESTINATION_HEIGHT

スプラッシュスクリーンファイル SplashScreen.png の縦幅を設定します。

この設定項目の値と、destination.width の値から、選択された画像を自動的にクロップ・リサイズします。具体的な挙動については、後述する「クロップ・リサイズの仕様」をご覧ください。

log.path

必須か デフォルト値 環境変数
いいえ logs/ LOG_PATH

ログファイルの出力先フォルダパスを指定します。

指定しない場合、実行ファイルと同じ階層の logs フォルダに yyyy-MM-dd.log 形式で出力します。

クロップ・リサイズの仕様

選択された画像は、設定ファイルで指定された destination.widthdestination.height の値に基づき、自動的にクロップおよびリサイズされます。

1. アスペクト比の計算

元の画像の幅と高さからアスペクト比を計算します。同様に、指定された幅と高さから目的のアスペクト比を計算します。

2. 画像のクロップ(切り取り)

元の画像と目的のアスペクト比が異なる場合、画像の中心を基準に余分な部分を切り取ります。

  • 横長の画像の場合: 左右の端を切り取ってアスペクト比を調整します。
  • 縦長の画像の場合: 上下の端を切り取ってアスペクト比を調整します。

3. 画像のリサイズ

クロップされた画像を、指定された destination.widthdestination.height のサイズにリサイズします。

この一連の処理により、スプラッシュスクリーンに最適なサイズとアスペクト比の画像が生成されます。

設定ファイルのサンプル

設定ファイルのサンプルファイル を用意しています。