Skip to content

Latest commit

 

History

History
28 lines (20 loc) · 1.42 KB

README.md

File metadata and controls

28 lines (20 loc) · 1.42 KB

独自フレームワークについてて

ロジックの実装

ロジックの中心は GameExecutorクラス となる。engine/executor.tsにて実装される。 HTML/Canvas環境におけるビルトインの機能を抽象化し、各コンポーネントに分配する。

主な役割

  • シーンを管理する
  • ゲーム内で用いられるコンポーネントを管理する
    • コンポーネントのインスタンスや、それらが有効になるシーンはengine/componentTimeline.tsで定義される
    • このtsファイルの内容が、ゲームロジックの全体像となる
  • 毎フレームごとに、各コンポーネントで定義された描画関数を呼び出し、画面を更新する
  • 入力イベント(画面のタッチなど)に応じて、対象となるコンポーネントのハンドラを呼び出す

コンポーネントの実装

各コンポーネントは Componentインターフェイス を満たす独立したクラスとして定義する。 インターフェイスはengine/component/component.tsにて定義される。

主な実装内容

  • 描画関数draw()の定義
  • タッチ判定の有効な範囲boundの定義
  • 入力イベントをハンドルするonTouchStart()等の定義
  • シーン変化をハンドルするonSceneChanged()等の定義

実装したコンポーネントはengine/component/配下にまとめられる。