fc2ブログ
  • 館内放送 [ツイッター]

    キンコンカンコーン・・・うみゃーだよ。館内放送だみゃ。
    ・・・・・キンコンカンコーン・・・ブツ
  • 町内会からのお知らせ [相互RSS]

【技術部】[Unity] 開発に便利な『簡易シングルトン』で一意クラスに簡単アクセス!



今回は、Unity開発で便利な『簡易シングルトン』についてです。
※カテゴリー【技術部】は技術者向けの記事となります。


【シングルトン化のメリット】
・ どこからでも簡単に対象クラスへアクセスできるようになります。
・ オブジェクトの検索が不要になるので、その分のレスポンス向上が期待できます。


【必要なもの】
・ Unity





【手順】
1.ゲーム中に必ず一体しか出現しないオブジェクトを確認します。

 

 [シングルトン化可能]
 ・ プレイヤー(上記赤印のオブジェクト)は、ゲーム中に必ず一体しか出現しませんので可能です。
 ・ 背景画像などもゲーム中に必ず一体しか出現しませんので可能です。

 [シングルトン化不可能]
 ・ 足場のオブジェクトは複数存在しており、不可能です。


2.ソースの修正
下記の例ではプレイヤーオブジェクト(Playerクラス)をシングルトン化します。

[C#]
using UnityEngine;
using System.Collections;
using System.Collections.Generic;

// シングルトン 化したPlayerクラス
public class Player : MonoBehaviour {

    // staticであることに注目!
    public static Player Instance = null;

    void awake()
    {
       // オブジェクト設置時に自身を Player.Instance に登録。
        Player.Instance = this;
    }
    // Jampメソッド
    public void Jamp()
    {

    }
}

// Playerクラスにアクセスするクラス
public class GameManager {

    public void Exec()
    {
        // Playerクラスを探さなくても即、
        // Player.Jampメソッドを実行できる!
        Player.Instance.Jamp();
    }
}



今回紹介したシングルトンは簡易的なものです。
Gang of Fourが提唱したシングルトンとは異なりますのでご了承ください。


ご質問、ご意見等ありましたら下記コメントにご投稿お願いいたします。
関連記事
この記事へのリアクション

コメントの投稿

非公開コメント




タグ:技術部Unityシングルトン

プロフィール

うみゃー・アパカ

Author:うみゃー・アパカ
UMYA.net公式ブログです。
ツイッター:umya_net


リンクフリーです!
アドレス:http://umyanet.blog.fc2.com/

公式ホームページ

ラインスタンプ配信中!

リンク



スマホアプリ配信中

黄金疾走

スポンサード

人気商品

Powered by amaprop.net