作成中のフレームワークの仕様走り書き。(20230806時点)

自作フレームワークで何ができるかを記載するもの。

  • グラフィック周り
    • Unityの仕様に準拠
    • スプライト表示が可能
    • 利用スプライトをマネージャ上に読み込んで、そのマネージャ上でキャラクターを管理
      これによって間違えて別キャラのグラフィックを表示することを回避する
    • スプライトアニメーションはテクスチャを等倍に分割する機能を実装し、その描画領域と表示フレーム数をスプライト側で指定可能。これによって、キャラクター管理側でアニメーションを制御しなくて済むようにしてある。
    • 描画についてはMaterialPropertyBlockを利用。これによりマテリアルのインスタンスを大量に作る状況を減らしている。
    • キャラクター管理からスプライトの大きさを指定可能。(ドットのジャギは残るが)
      また、途中の拡大縮小が可能。縦および横方向に拡張を行える。
    • スプライトはキャラクター管理経由で回転の指定が可能。
    • スプライトはキャラクター管理経由で半透明の指定が可能。
    • 描画番号(順位)はLayer指定とする。
      よってLayerのほかカメラの設置順に依存する。
  • 管理マネージャの仕様
    • 配列で管理。ヒープからの取得は避ける。
      全体的に可能な限りヒープからの取得は避ける(事前に変数を取得しておく等)
    • ①オブジェクトの詳細情報—–②生存インスタンスという2種類の変数(構造体)を持つ
    • ①で基本的なHPや攻撃力、行動を指定するスクリプト等を持つ
      座標および体力、生存フレーム数は②にて管理する 。
      ①で生成時や行動スクリプトを確保し、②で実際に動作するオブジェクトを管理する。
      (このため②はゲーム中生成と廃棄を行い、再利用する)
    • キャラクター管理上で②の保持数の指定が可能。
      ただ、管理のための変数が必要なため、シーンの最初にオブジェクト数の確定が必要で、途中増減は不可とする。
  • サウンド仕様
    • BGMはクロスフェードが可能
    • SEは64音鳴らすことが可能
      1個のSEが鳴らせる数については限りがある