【3Dゲームエンジン】Unity質問スレッド1
■ このスレッドは過去ログ倉庫に格納されています
0861名前は開発中のものです。
2012/07/13(金) 10:16:35.91ID:06qK1JQ4少し試してみましたがTransformには中身(メンバ変数orフィールド)が無いようです
Transformにあるのはプロパティ等で中身と言っているものは別の場所に存在し、Transformはそれを取得・設定する手段のみ提供しているようです
全ての中身ではなくプロパティで取得できるものであれば不可能ではありませんが
保存しなくてもよいものが多そう、positionとlocalPositionなどの同じものに別扱いでアクセスするプロパティがある
等の理由によりあまりおすすめできません
以下はメンバの確認に使用したソースです
using UnityEngine;
using System.Reflection;
public class Test : MonoBehaviour {
void Start () {
System.Type type = typeof(Transform);
BindingFlags flags = BindingFlags.Instance|BindingFlags.Static|BindingFlags.Public|BindingFlags.NonPublic;
FieldInfo[] infos = type.GetFields(flags);// 中身
//MemberInfo[] infos = type.GetMembers(flags);
//PropertyInfo[] infos = type.GetProperties(flags);
if (infos.Length <= 0) {
Debug.Log("infos.Length <= 0");
}
for (int i = 0; i < infos.Length; ++i) {
Debug.Log(infos[i].ToString());
}
}
}
■ このスレッドは過去ログ倉庫に格納されています