主なコンテンツ

〜主なコンテンツ〜

1. Unityで製作したゲームと製作Tips
  1. 三月精チャレンジ(東方Project二次創作)
    1. 作り方
  2. 英語学習2D(オリジナルスマホアプリ)
2. UE4
3. ゲームアプリ見学
4. Bitbucket & SourceTreeでの一連の流れ
  1. 前半
  2. 後半
5. Tips
  1. UnityのTips
  5. SQL文のTips
  6. Final IK
  7. GearVR+Unity

2016年3月11日金曜日

アイテムクラスの設計改善【三月精チャレンジ】

■継承( C#)

  • やったこと

    • アイテムが回転する動作など、どのアイテムにも共通する処理は基本クラスにした
    • アイテムを取ったときの処理は派生クラスで行うようにした
    • アイテム取得時の音の処理はアイテムスポーンクラスに行わせることにした(常にHierarchyにいて、且つアイテムクラスが参照するため)。こういった共通処理に手を加えたいときに、基本クラスを修正するだけで良くなった。

  • スクリプトについて

    • 拡張の際は、base. 関数で基本クラスの処理を呼び出す。したがって、拡張したい基本クラスの関数はpublicprotectedにする必要がある。
    • 派生クラスで拡張する関数はnewを使うかoverraideを使うか悩んだが、後者のほうが多そうだったので後者にした(>>newとoverraideの違いはこちらの記事参照
    • オーバーライドする場合は、基本クラスと派生クラスのアクセス修飾子を一致させる必要がある(>>同様にこちらの記事参照
    • 拡張の際は、アクセス修飾子やbase. 関数の書き忘れが多かった

■スクリプト(基本クラス)


■スクリプト(派生クラス)

0 件のコメント:

コメントを投稿