プロジェクトの構造

ここでは、Beutlで生成されるプロジェクトディレクトリの構造について説明します。
Beutlで使用されるファイルはすべてJSON形式です。 なので、ここで紹介するファイル以外も、テキストエディタなどで編集することができます。

Beutlで MyProject という名前のプロジェクトを作成すると以下のようなディレクトリが生成されます。

MyProject
┣━ MyProject.bproj
┗━ MyProject
    ┗━ MyProject.scene

MyProject.bproj ファイル

含まれるシーン、アプリのバージョン、変数 (フレームレート、サンプルレート) が保存されます。 以下は例です。

{
  "appVersion": "1.0.0",
  "minAppVersion": "1.0.0",
  "items": [
    "MyProject/MyProject.scene"
  ],
  "variables": {
    "framerate": "30",
    "samplerate": "44100"
  }
}

MyProject.scene ファイル

このシーンの横幅、高さ、持続時間、現在の時間、含まれる要素が保存されます。 以下は例です。

{
  "Id": "{オブジェクト固有Id}",
  "Name": "MyProject",
  "Width": 1920,
  "Height": 1080,
  "Duration": "00:16:32",
  "CurrentFrame": "00:00:00",
  "Elements": {
      "Include": "**/*.belm"
  }
}

しばらく編集していると、.beutl *.belm などのディレクトリ、ファイルが生成されます。

.beutl ディレクトリ

このディレクトリには、UIの状態が保存されます。 UIの表示がおかしくなった場合、このディレクトリを削除すれば改善される場合があります。

*.belm ファイル

このファイルはタイムラインに追加された要素を表します。 開始時間、持続時間、レイヤー番号や描画内容の設定が保存されます。

以下は例です。

{
  "Id": "{オブジェクト固有Id}",
  "Name": "矩形",
  "Start": "00:00:00",
  "Length": "00:05:00",
  "ZIndex": 0,
  "AccentColor": "#FF008080",
  "IsEnabled": true,
  "Operation": {
    "Id": "{オブジェクト固有Id}",
    "Name": "",
    "Children": [
      {
        "Id": "{オブジェクト固有Id}",
        "Name": " ",
        "Properties": [
        ],
        "$type": "[Beutl.Operators].Source:RectOperator"
      }
    ]
  },
  "NodeTree": {
    "Id": "{オブジェクト固有Id}",
    "Name": "",
    "Nodes": [ ]
  },
  "UseNode": false
}
GitHub LogoGitHubで表示この記事のソースはGitHubにあります。<br />改善点があればIssueやPull requestを開いてください。