FC2ブログ
04 «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.» 06

ハルシオンシステムの気ままBlog

株式会社ハルシオンシステムのメンバーが送る、UnityやらJavaやらの技術的話題から、自社開発のアプリの宣伝とかとかのブログです。ほんと気ままにいきたいと思います。更新日は毎週 月 木でっす!

 

【ハルシオンブログ】CanvasのScreenSpace-Cameraで使えるジョイスティックみつけたー!なので使ってみたっす。 

こんにちは!坂内っす。

今週末は京都でBitsummitです!
また車で行ってきますね!

さてUnityのお話。

バーチャルジョイスティックを使おうと思って色々探していても、uGUIのCamera設定が「Screen Space - Camera」で使えるものがなかなかなくて、大体が「Screen Space - Overlay」対応のやつばかり。
Overlayのやつの計算式変えればいいじゃない と思うかもしれませんが、めんどいからいやです。

そんな中でScreenSpace-Cameraで使えるいいアセットがあったのでご紹介。

【Joystick Pack】


こちらです。

使い方は簡単。

①インポートしたJoystickPackのPrefabsから使いたい種類のジョイスティックのプレハブをCanvasの中に置きます。




②ジョイスティックの効果範囲を決める。
 ①で置いたオブジェクトを選択すると、Sceneウインドウで画面をタップしたときにジョイスティックが出る範囲を選択できます。
 この範囲内だけでジョイスティックが作動します。


③コードでジョイスティックが動かされたのを取得
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestJoystick : MonoBehaviour
{
public DynamicJoystick joystick;

private void Update() {
float x;
float z;
x = joystick.Horizontal;
z = joystick.Vertical;

Debug.Log(x + ":" + z);
}
}


こんな感じのコードでジョイスティックの動きをとることができます。




ということで、簡単に使えるジョイスティックの紹介でした。

あでゅ~ノシ
スポンサーサイト

Category: 開発日記(Unity)

tb 0 : cm 0   

【ハルシオンブログ】処理時間の計測するとき 

こんにちは。
大坂です。

なんか日曜の気温が34度とかいってましたが、一気に夏になるんですかね。。

さて、処理時間が気になって処理間の時間とか計るときって今までこんな感じで処理開始前の時間と処理終了後の時間を取ってました。
    Debug.Log(System.DateTime.Now);

// 時間計りたい処理

Debug.Log(System.DateTime.Now);
まぁこれでもいいんですが、Stopwatchなんてクラスがあるんですね。
行数増えますけどこんな感じで使えます。
    var sw = new System.Diagnostics.Stopwatch();
// 計測開始
sw.Start();

// 時間計りたい処理

// 計測終了
sw.Stop();

// 結果を返す(TimeSpan)
System.TimeSpan ts = sw.Elapsed;
Debug.Log("TimeSpan:" + ts.ToString());

// 結果を返す(ミリ秒)
long milliSec = sw.ElapsedMilliseconds;
Debug.Log("ミリ秒:" + milliSec);
TimeSpanとミリ秒で受け取れるようなのでお好みで。


では今週もこれにてノシ

Category: 開発日記(Unity)

tb 0 : cm 0   

【ハルシオンブログ】UnityでプレハブからInstantiateする時に「プレハブ.transform」ってできたんですね。知りませんでした。 

おはようございます。坂内っス。

去年の12月にうちで作ってるRPGのスクショとかを出してから早半年・・・・
進捗は・・・ほとんどありません!
ほんとお金なくて、お仕事頂きながら生きています!
なので、2019年内リリース予定ではなく、2020年リリース予定!

とりあえず今年1年はお仕事で食べながら、すこーしずつクリエイティブ周りを作成。
来年一気にどかーんと作っちゃう予定です。

ほんと時間かかってすいませんorz
楽しみにして頂いている方には申し訳なく・・・面白いゲームにしますんで、期待してお待ち頂ければと。


さて、Unityのお話。

最近知ったことのメモ。

PrefabをInstantiateする時に、座標を指定するが、角度はPrefabのまま変えたくない場合、こんな書き方ができたんですね。


Instantiate(プレハブ, position, プレハブ.transform.rotation);



プレハブ.transform

って取れるんだ!


もちろん座標、角度がPrefabのままでいいのならば、


Instantiate(プレハブ);



だけでいいのですが、まさか角度のみをプレハブからとれたとは知りませんでした。


というメモでした。


では、あでゅ~ノシ

Category: 開発日記(Unity)

tb 0 : cm 1   

【ハルシオンブログ】なんか今週もDictionaryのネタですよ。 

こんにちは。大坂です。

先週もDictionaryのことを書きましたが今週も引き続き。
どうにも最近見る機会が多いのでス。

今日は、存在しないKeyにアクセスしたときのお話。

こんなのね。
    void Start() {
Dictionary test = new Dictionary();
Debug.Log(test[0]);
}

実行するとKeyNotFoundExceptionが発生します。

しかしこれも、こんなAPIがあります。
TryGetValue。
使い方はこんな感じです。
    void Start() {
Dictionary test = new Dictionary();
string str = "test";
test.TryGetValue(0, out str);
Debug.Log(str);
}

これでエラーは出ないのですが、
注意点としては上のコードだと変数「str」に初期値「test」を入れていますが、TryGetValueでは型の既定値が返されます。
stringの場合は「""(空文字列)」、intの場合は「0」が返されます。
TryGetValueの戻り値でboolを返してくれるのでそのへんで判断してもいいのかもしれません。

まぁ・・・Keyがないのにアクセスすることがそんなにあるかはわかりませんが・・・。

ではでは今週もこれにてノシ

Category: Androidアプリ紹介

tb 0 : cm 0   

【ハルシオンブログ】UnityやってるときVisualStudioでコメントアウトどうやってます?ショートカット使うと凄い楽なんですよね。 

こんにちは。坂内です。

UnityというかVisualStudioで便利な機能の紹介。

以前こんな記事を大坂が書きましたが、コメントアウトのショートカットって使ってますか?
【ハルシオンブログ】VisualStudioでショートカットを変更したかった。


めっさ便利ですが、使ったことない人多そうなので、紹介しますね。

例えばこんなコード

    private void TestCode() {
string aaaa = "";
string bbbb = "";
string cccc = "";

int a = 100;
int b = 10;
int c = 20;

if(a == 100) {
aaaa = "100です";
} else {
aaaa = "100以外です";
}
if(b == 100 && c == 100) {
bbbb = "bとcは100です";
} else {
bbbb = "bとcは100以外です";
}

Debug.Log(aaaa);
Debug.Log(bbbb);
}


変数bbbbとccccをコメントアウト、bbbbとccccを使っているif文もコメントアウトをするとき、こんな感じにやりますよね。



コメントのショートカットを使うとこんな感じでできます。



だいぶ早くないですか?
楽だと思うんですよねー

コメントアウトしたい行を選択して(まとめて選択OK)、ショートカットキーを押すだけ。
コメントを外すのも楽になるんですよ。




どうです?

ショートカット使ってなかった方は是非使ってみてください。

僕はコメントアウト「CTRL+ALT+C」、コメント外し「CTRL+ALT+V」でやってます。

是非試してみてね!

では、あでゅ~ノシ

Category: 開発日記(Unity)

tb 0 : cm 0