2014年7月28日月曜日

Unity 天井(壁)のすり抜け突き抜けを解決する方法 Mathf.Clamp( )コマンド



前回の続きです。
『Unity (壁)すり抜け、突き抜けを解決する方法(模索中)』




解決方法

Mathf.Clamp( )コマンドで、設定した範囲内の移動に制限することで、結果的に天井(壁)にめり込んでしまうことや、突き抜け防止した。


ソースコード 例 JavaScript

#pragma strict

var x : float = 100;

function Update () {
if(Input.GetKey ("space")) rigidbody.velocity = Vector3.up * x;
transform.position.y = Mathf.Clamp(transform.position.y,0,9);
}




まとめ

移動範囲を制限し、簡単に壁のすり抜け、突き抜け、めり込みを防止出来る。



参考サイト

いつもお世話になってます。

値の制限 unity3D: おじさんのプログラミング

2014年7月22日火曜日

Unity 壁のすり抜け、突き抜けに対する解決方法(模索中)



解決したい課題

動かしているオブジェクトが壁をすり抜ける、天井を突き抜ける問題を解決すること
以下は、突き抜け原因を考える際、自分なりに確認したものの記録となっています。





現状の動画





設定




ソースコード 例 JavaScript

#pragma strict

var x : float = 0.5;

function Update () {
if(Input.GetKey ("space")) transform.Translate(Vector3.up * x);
}



その他、やってみたこと


突き抜け原因を考える際の確認事項や、設定の変更






1、Colliderの設定の確認

  • (Box) Colliderにチェックが入っているか
  • Is Triggerのチェックは外れているか

2、Rigidbodyの衝突検知の設定確認

Collision Detectionの設定高速で動くオブジェクトが、衝突を検知せずにすり抜けることを防止するために使用するもの)をContinuous Dynamicに変更する。







結果と今後やってみること

上記のチェックと変更を試したものの、結果は変わらなかった。
Unityの公式サイトを読んだところ、高速に移動するオブジェクトが衝突検知せず、すり抜けてることが原因に挙げられていたので、移動速度や力のかかり具合を調節することや、力の掛け方を変えてみようと思う。



参考サイト Unity公式(日本語)
http://docs-jp.unity3d.com/Documentation/Components/class-Rigidbody.html

2014年7月20日日曜日

Unity 公式アプリの『Unity Remote 4』を使って iPhone上で簡単な操作テストを行う方法



学習内容

Unityで作成したゲームを公式アプリの『Unity Remote 4』を使って、タッチ操作のテストを行う。(加速度計、ジャイロスコープの操作も可能)


私の環境

  • Mac OS X Yosemite
  • iOS 7.1.2
  • Unity 4.5.1
  • Unity Remote 4 1.1

PC以外で必要なもの

  • iPhone
  • Unity Remote 4
  • USBケーブル

テストまでの主な流れ

  • AppStoreからUnity Remote 4 をインストールする
  • Unity上で必要な設定を行う(詳細は後ほど。)
  • iPhoneでUnity Remote 4 を開き、USBケーブルで繋ぐ
  • Unity上のプレイボタンでテスト開始


Unity上で必要な設定

  • Edit → Project Settings → Editerへ (参考画像①)
  • Editor SettingsのUnity Remote Deviceを『Any iOS Device』に設定するAndroidで出力したい場合は『Any Android Device』 (参考画像②)
 ※Unityのversionは4.5以上が推奨環境


上記の通りで動かない時にやってみたこと

  • プレイボタンで再生し直す
  • Unityや、Unity Remote 4を再起動してみる。
  • USBを差し直す(効果なし?)

ほとんどの場合、デバイスを再接続するか、再起動することで問題解決するらしい。



 参考画像①


























 参考画像②



















参考サイト いつもお世話になってます。

公式サイト(英語)
http://docs.unity3d.com/Manual/UnityRemote4.html

独断と偏見で選ぶ、Unity 4.5アップデート注目ポイント - テラシュールブログ

http://tsubakit1.hateblo.jp/entry/20140527/1401200786

unity remote 4 Blog BBTUNE
http://blog.bbtune.com/archives/2979/unity-remote-4



Unity Remote 4 以外で調べたもの(未達)

  • Android(持っていた機種のバージョンが古すぎて断念)とJavaSDK
  • Xcodeとデベロッパープログラム
  • Unity Remote 3 (※非推奨)


その他

Unityで作成したゲームをPCのキー操作やマウスではなく、実機によるタッチ操作や画面の確認をしたいと思い、色々な方法に迷いながら検索しているうちに、Unity Remote 4にたどり着いた。
実機に出力される画像の解像度は低いですが、各デバイスに展開するよりも、リモコン付きのエディタでプロジェクトをテストする為にはるかに高速で、開発時に便利だそうです。
デベロッパー登録してないけれど、タッチ操作でオブジェクトを動くかやってみたい人に良いのではないかと思うし、学習意欲の向上に繋がるのではないかと思う。




    追記 2015年6月25日

    テストを行うデバイスはAndroidの場合、パソコンがWindwsでもOSXでも
    Unity Remote4アプリは動作します。

    ただし、テストを行うデバイスがiPhoneの場合、パソコンがOSXでなければ
    Unity Remote4アプリは動作しないそうです。

    参考元
    Unity - マニュアル: Unity Remote 4
    http://docs.unity3d.com/ja/current/Manual/UnityRemote4.html


    終わり。