過去のバージョンを扱うとうまくいくという場合がありました。
そんなとき、JREのバージョンを変えたくないけど
毎度自動更新のメッセージが毎回表示されて困るというときは、設定を変えればよさそうです。
※Windows7 の場合です
スタートメニュー > コントロールパネル
プログラムを選択↓
Javaを選択↓
JRE自動ダウンロードで「自動ダウンロードしない」を選択↓
Unity3.5.6現在、JREの最新版では問題は起きてなさそうです。
function FixedUpdate() {
// x方向に揺れる
transform.localPosition.x = 3 * Mathf.Sin(Time.time);
}次に、Standard Assetsにある「3rd Person Controller」を動かない床の上に配置します↓Player_Controller.jsここでは、
--------------------------------------------------
function OnControllerColliderHit(hit : ControllerColliderHit) {
if (hit.gameObject.name == "BeltConveyor") {
// ベルトコンベヤーに乗ったら
transform.parent = hit.gameObject.transform;
} else {
// ベルトコンベヤーじゃなかったら
transform.parent = null;
}
}
--------------------------------------------------
-----------------------------------------------------------------こうやって振り返れば数十行なのですが、調べたりテストするのに時間が結構かかりました。
private final static int TIMEOUT= 1000; // タイムアウト時間
private void GetRevGeo(float lat, float lng) {
// 端末の設定言語を取得
String langParam = "en";
if (Locale.JAPAN.equals(Locale.getDefault())) {
langParam = "ja";
}
// URLにHTTP接続(GET)
HttpURLConnection http = null;
URL url = new URL("http://maps.googleapis.com/maps/api/geocode/json?latlng="
+ lat + "," + lng + "&sensor=true&language=" + langParam);
http = (HttpURLConnection)url.openConnection();
// タイムアウト時間(ミリ秒)を設定
http.setReadTimeout(TIMEOUT);
http.setConnectTimeout(TIMEOUT);
// 接続
http.setRequestMethod("GET");
http.connect();
// データを取得
InputStream in = null;
in = http.getInputStream();
// InputStream -> String
BufferedReader reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));
StringBuffer buf = new StringBuffer();
String str;
while ((str = reader.readLine()) != null) {
buf.append(str);
buf.append("\n");
}
String src = buf.toString();
// 切断
http.disconnect();
// JSONオブジェクトの生成(root)
JSONObject rootObject = new JSONObject(src);
// "results"階層にある配列を取得
JSONArray resultsArray = rootObject.getJSONArray("results");
// 配列を用意
int countResults = resultsArray.length();
JSONObject[] componentObject = new JSONObject[countResults];
for (int i = 0; i < countResults; i++){
componentObject[i] = resultsArray.getJSONObject(i);
}
// さらに下階層から「country」「administrative_area_level_1」「locality」と
// 同階層の「formatted_address」を探して地域名を取得
String country = "";
String administrative_area_level_1 = "";
String locality = "";
for (int i = 0; i < componentObject.length; i++) {
JSONArray typesArray = componentObject[i].getJSONArray("types");
for (int j = 0; j < typesArray.length(); j++) {
String elem = typesArray.getString(j);
// 国
if (elem.equals("country")) {
country = componentObject[i].getString("formatted_address");
Log.d("debug", "country---------------------" + country);
}
// 都道府県
if (elem.equals("administrative_area_level_1")) {
administrative_area_level_1 = componentObject[i].getString("formatted_address");
Log.d("debug", "administrative_area_level_1---------------------" + administrative_area_level_1);
}
// 区市町村
if (elem.equals("locality")) {
locality = componentObject[i].getString("formatted_address");
Log.d("debug", "locality---------------------" + locality);
}
}
}
if (locality.length() > 0) {
// 区市町村を返す
return locality;
} else if (administrative_area_level_1.length() > 0) {
// 区市町村が取得できなかったら都道府県を返す
return administrative_area_level_1;
} else if (country.length() > 0) {
// 都道府県が取得できなかったら国を返す
return country;
}
// 何も取得できなかったらnullを返す
return null;
}
-----------------------------------------------------------------
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |