タグ

2015年10月2日のブックマーク (4件)

  • [Unity] ネットワークの接続状態を取得する

    ネットワーク通信を行うゲームにて、ネットワーク接続状態を調べる方法の紹介です。 iPhoneAndroid端末など電波状況によって圏外になったり、ユーザから機内モードに設定されたりする可能性があります。 ここでネットワークの接続状態をチェックしておけば状態に応じた処理が可能です。 接続状態はApplication.internetReachabilityから取得できます。 値は以下の通り。 NotReachable ネットワークには到達不可 ReachableViaCarrierDataNetwork キャリアデータネットワーク経由で到達可能 ReachableViaLocalAreaNetwork Wifiまたはケーブル経由で到達可能 実際の使い方は以下のようになります。 using UnityEngine; using System.Collections; public class

    [Unity] ネットワークの接続状態を取得する
  • [Unity] WWWリクエストのタイムアウトを実装する

    UnityのWWWクラスには元々タイムアウトの機能が実装されていません。 そこで、何とかして簡単にタイムアウト機能を実装して使えないかどうか考えました。 あまり良い方法が思いつきませんでしたが、以下のようにMonoBehabiourを継承したクラスを実装し、GameObjectにアタッチして使えばひとまずは実現できます。 using UnityEngine; using System.Collections; public class ConnectionManager : MonoBehaviour { public float timeOut = 10; // タイムアウト時間 [HideInInspector] public WWW result; // 結果 [HideInInspector] public bool isTimeOut = false; // タイムアウトを考慮し

    [Unity] WWWリクエストのタイムアウトを実装する
  • ジェネリック

    概要 C# 2.0 で、 C++でいうところのテンプレート、一般にはジェネリック(ジェネリクス)などと呼ばれるものが実装されました。 (C++ のテンプレートとは少し仕様が異なりますが。) ジェネリック※(generics:総称性)、 あるいは、総称的プログラミング(generic programming)とも呼ばれますが、 この機能は、 さまざまな型に対応するために、型をパラメータとして与えて、その型に対応したクラスや関数を生成するもの機能です。 ポイント ジェネリック: 型だけ違って処理の内容が同じようなものを作るときに使う。 ジェネリッククラス:IComparable<T> { int CompareTo(T x, T y); } ジェネリックメソッド:T max<T>(T x, T y) { ... } ※genericsの訳語 英語だと、名詞では generics、形容詞が ge

    ジェネリック
  • ジェネリック コードの default キーワード (C# プログラミング ガイド)

    ジェネリック クラスとジェネリック メソッドでは、あらかじめ以下の情報を把握していない場合に、パラメーター化された型 T に既定値を割り当てる方法が 1 つの問題となります。 T が参照型か値型か T が値型の場合、数値か構造体か パラメーター化された型 T の変数がある場合、ステートメント t = null は、T が参照型のときにのみ有効です。また、t = 0 は、数値では機能しますが、構造体では機能しません。 この問題を解決するには、default キーワードを使用します。このキーワードは、参照型の場合には null を返し、数値の値型にはゼロを返します。 構造体の場合、ゼロまたは null (値型か参照型かによって変わります) に初期化された構造体の各メンバーを返します。 null 許容値型の場合、default は System.Nullable<T> を返します。これは、他の構