デザインファミリー (Design Family)

定義 (Definition)

Design Family とは、商品の基本情報(デザイン名、ブランドなど)を管理する親オブジェクトであり、その下に Design Version という形で更新履歴や具体的なアセット定義が紐付きます。

構造概要

Salesforce上のオブジェクト構造は以下のようになっています。

  • 📦 Design Family (親): デザイン名、ブランド情報の管理
    • 📄 Design Version (子): 更新履歴、Chunk ID、Activeフラグ
      • 🎨 Define Material: 各スロットに対するマテリアル定義

各オブジェクトの役割

1. Design Family

商品の「アイデンティティ」を管理します。

  • 管理項目: デザイン名(各言語)、Vendor Brand(ブランド名)など。
  • 役割: 全てのバージョンの親として機能します。

2. Design Version

デザインの「更新」と「アセット(Chunk)」を管理します。

  • Chunkとの関係: Chunk IDはDesign Versionに付与されます
    • デザインが更新されて新しいVersion(例: 0.0 -> 1.0)になると、新しいChunk IDが発行されます。
    • これにより、アプリ側は最新のVersion(Chunk)のみをダウンロードすればよくなり、効率的な更新が可能になります。
  • 管理項目:
    • Revision Count: 更新回数(例: 0.0
    • Chunk Id (Short): アセットのダウンロードID
    • Active: 現在有効かどうか
    • Debug: デバッグ用かどうか
Design Family and Version Structure

緑枠: Design Family / 赤枠: Design Version (Salesforce画面)

3. Define Material (マテリアル定義)

「どのスロットに、どのマテリアルを適用できるか」を定義するオブジェクトです。

  • Lookup: Design VersionProduct Attribute の両方を参照します。
  • 役割: Design Version(形状)に対して、Product Attribute(ユーザーが選べる選択肢)をマッピングし、具体的なマテリアル(Fabric, Wood等)を決定します。
Define Material Screen

Define Material画面: Element0, Element1などのスロット定義


登録基準 (Registration Criteria)

Design Familyを新規作成する際は、以下の技術的構造を考慮して範囲を決定します。

1. マテリアル構造の同一性

同じFamily(Version)に属するMeshは、Define Materialで定義されたスロット構造(Element0, Element1…) に適合する必要があります。 共通のスロット定義で管理できるバリエーション(サイズ違いなど)は、同じFamily/Versionの下で管理します。

2. Chunkの効率性

Chunkは Design Version単位 で生成されます。

  • まとめるメリット: 関連商品(ソファとオットマンなど)を同じVersion内のMeshバリエーションとして含めれば、1つのChunk IDで一括ダウンロードできます。
  • 分けるケース: 全く異なるデザインや、同時に使用しない商品は、別Family(別Chunk)として管理し、不要なダウンロードを防ぎます。
ℹ️

補足: 更新フロー

MeshやMaterialの割り当てを変更した場合、新しい Design Version を作成(Revisionアップ)することで、アプリ側に変更を反映させます。古いVersionのChunkはそのまま残り、新しいVersionのChunkが新たに配信されます。