Unity - nekoharuyuki/PuzzleRPG-cocos2d GitHub Wiki

Unity

Unityは、統合開発環境を内蔵し、複数の機材に対応するゲームエンジンである。開発はユニティ・テクノロジーズ。日本法人はユニティテクノロジーズジャパン合同会社。ウェブプラグイン、デスクトッププラットフォーム、ゲーム機、携帯機器向けのコンピュータゲームを開発するために用いる。100万人以上の開発者が利用している。

公式サイト

https://unity.com/ja

開発思想・設計

開発環境Unityについて

  • 設計方針
    • 分かりやすいシンプルな構成
    • 使いやすいAPI
    • メンテナンスしやすい
    • 簡単に動作確認できる

Unityフォルダ構成のルール

ソースコードのエディタについて

アセットストアからダウンロードしたものをまとめる

.gitignoreの設定

AndroidManifest.xmlの設定

コーディング規約

  • 大人数で開発できるような設計
  • 文字列をソースコードやPrefabへの直書き回避とローカライズ対応

基盤開発

Unityのシーン遷移基盤開発

  • 画面遷移システムの作成
  • どのシーンからでも開発できるような仕組みの設計
    • タイトルシーンから起動した場合(通常起動)
    • タイトルシーン以外から起動した場合(非通常起動)

サウンド再生基盤

動画再生基盤

ゲームエフェクトの再生と再利用機構

ローカルファイル保存の仕組み

外部アセットを想定したロード処理

  • インターフェースを利用して抽象化

Androidバックキー設計

  • Androidバックキーの連打対応

ローカルPush通知の実装

UI開発

  • UI解像度を決める(UIを作り出す前に必ずやる)
  • 共通UIパーツを共通のPrefabにする
  • ダイアログシステム作成

暫定要件

  • UI用のCanvas共通化処理
  • UI階層構造のルールを決める

各シーン

  • DontDestroyOnLoad領域
  • タップ・スワイプエフェクトを実装
  • UI Environmentの設定
  • iPhoneXセーフエリア対応
  • UIカラー設定コンポーネントを作っておく

ワークフロー系

ローカルで実機ビルドできる環境の整備

アプリ、アセットバンドルのビルド環境整備

サウンドアセット作成環境構築

動画アセット作成環境構築

環境切り替えツールの導入

クラッシュレポートの導入

UIパーツのレギュレーションまとめページを作っておく