FC2ブログ
    10 «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.» 12

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

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

     

    【ハルシオンブログ】Visual Studioでポップアップボックスが邪魔なとき 

    こんにちは。
    大坂です。

    気温が下がってきて冬がやってきた感じですね。
    部屋が寒い!

    さてVisual Studioでコードを書いていてポップアップボックスがたまに邪魔なときがあります。


    これctrl押すと半透明になるの知ってましたか?


    まぁ文字があるので多少見にくいですがポップアップボックスの下にあるやつをちょっと確認したいときは地味に使えますかね。
    たまにしか使わない機能ですがご紹介。

    では短いですがこれにてノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    【ハルシオンブログ】Playfabのユーザ一覧でユーザの名前を出したい!そんな時は表示名を設定してあげると出るようになるよ!(Playfab編) 

    こんにちは。坂内です。

    ちょっとPlayfabの話なんですが、プレイヤーの一覧画面というのがありまして。

    こんな画面。




    赤枠のところにIDが並んでいます。

    このままだと、「●●●さんの情報を見たい」といったときに、IDで検索しないといけないんですよね。
    IDで検索なんてあれなんで、一人ひとりの中の情報をみて、人を探さないといけない・・・・・

    これ、マジでつかえないっすよね。

    そんな時に「表示名」を設定してやれば、名前がこの一覧に出てくるようになります。




    こんな感じ。

    ではどうやれば表示名を設定できるか。



    private void SetUserName(string userName) {
    var request = new UpdateUserTitleDisplayNameRequest {
    DisplayName = userName
    };

    PlayFabClientAPI.UpdateUserTitleDisplayName(request, OnSuccess, OnError);

    void OnSuccess(UpdateUserTitleDisplayNameResult result) {
    Debug.Log("Success");
    }
    void OnError(PlayFabError error) {
    Debug.Log(error);
    }
    }


    こんな感じで、名前を設定してあげれば、表示名に登録されます。

    ここに設定した名前がでれば、それが一覧にも出るようになります。




    ということで、簡単な表示名の設定方法でした。

    Playfab使ってみてね!

    あでゅ~ノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    【ハルシオンブログ】アプリ実行中にGameシーンでコライダーを可視化したかった 

    こんにちは。
    大坂です。

    タイトル通りですが、Gameシーンでコライダーが見たかったときのお話。
    素晴らしいのを作ってくれてる人がいるもんです。
    https://github.com/tomori-hikage/collider-visualizer

    これ使うだけでさっくりと見れますね。
    使い方も説明してくれてますね。
    https://qiita.com/tomori_hikage/items/6dd8d41d34f57f667450

    使ってみたら簡単に表示できました。
    Cubeにこんなコードをつけてあげただけですね。
        private void Start()
    {
    ColliderVisualizer visualizer = gameObject.AddComponent<ColliderVisualizer>();
    ColliderVisualizer.VisualizerColorType color = ColliderVisualizer.VisualizerColorType.Blue;
    string message = "Test";
    int fontSize = 36;

    visualizer.Initialize(color, message, fontSize);
    }


    こんな感じで表示されますね!


    では今週もこのへんでノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    【ハルシオンブログ】デジゲー2019いってきただす。いつもの写真雑並べ日記をどうぞ 

    はいこんにちは。坂内っす。

    11月17日 デジゲー博2019が行われました。
    http://digigame-expo.org/

    毎年恒例ですね。




    もちろん毎年のことながら、いろいろ回るも誰のゲームも遊ばず・・・・・(本当にオレ何しに行ってるんだ?
    いつもながら知り合いのブースに顔を出す仕事をしておりました。(こういうスタンスでイベント回ってるので、遊んでもらわなかった!って気を悪くしないでくださいね。

    ということで、挨拶回りしたブースの写真をだだだだーっと張りますね。GUMI
    本当は飲み会に来ていただける方のブースを全部回りたかったけど、ATNDの登録名とデジゲーの登録名が全然違うので、さーっぱり分からず、既存の知り合いブース(それでも知り合い回りきれてない)のみの立ち寄りになりました。


    【Re:Ariumさん】



    【クイーンズナイトさん】
    あれ?デジゲーのグループ名なんだろう・・・
    VRなのに戦闘はコマンド選択式なんですね。
    なんか新しい?





    【SleepNelさん】
    はい、おきまりのモヒカンですね。
    この人モヒカンキャラばかり使っているけど、本当は自分がモヒカンにしたいけど家族がいてできないからとかなのかしら・・・



    【がんばるxアッキーさん】
    仲良し3人組謎グループ
    "ごちゃばと"は何となく写ってるけど、がんばるさんのほうのゲーム1回もみてないや


    【hogeizmさん】
    なんか出店しているゲームよりか、人の写真ばっかりとってる気がしてきました・・・



    【Room6さん】
    こんかいのRoom6さんのブースは、NIGOROさんの「薔薇と椿」というおビンタバトルゲームの出店ですね。
    派手なブースでしたよ。





    【ジラフとアンニカさん】
    紙パレットさんのブース
    そういえば木曜日に中国の厦門国際アニメマンガフェスティバルゲームコンテストで、最優秀金賞をとったらしいですよ!すごい!








    【SleepingMuseumさん】
    くまのひと。前は猫の人だったのに。どこにいってしまったんでしょうか。ブリk(ry




    なんかこのクマが1個1万だから写真とれって無理やりとらされました。


    【はらもちーずさん、めじろさん】
    富山から参戦!
    そういえば去年の〇〇魚津でお会いしましたね!
    変なラーメンを作るゲーム。でもラーメン以外ばっかりできてた。



    と、越中方言ガール。
    絵がきゃわいい!



    富山まで気を付けて帰ってくださいね!

    【ほたらいずさん】
    どったにあ。
    かわいいドットで遊ぶシミュレーションゲーム。
    すごいよくできてますよこれ!



    【ノナプルナインさん】
    これまた、すごいクオリティのノナプルナインさん
    これはやばいっすよね。
    まじで出来が良すぎます!



    【TEMOさん】
    パズルゲームを作成しているTEMOさん。
    ちょっとこの写真じゃワカラナイですね。



    【ミライノ製作所さん】
    地図のお勉強アプリを作成しているミライノさん。
    日本からでてヨーロッパの地図が勉強できるみたいですよ!



    【西山さん】
    ブース名ワカラナイ。
    パズモナのブース。
    西山さんの隣にいた背のでかい人は誰だったんだろうか・・・・



    【RirCreateさん】
    ないちさん、りるをさんのブース
    色々グッズありましたよ!
    ぴはんとマルの森頑張って作りあげてくださいまし!





    ということで、デジゲー本編はここまで。

    その後0次会を経て、アフターパーティ的な1次会会場に!



    今年も77人という大きい飲み会を開けて満足。

    当日は77人+1人―2人ということで、総計76人の飲みになりました!

    ほんとにみんな来てくれて助かりました!

    そういえば、パーティの写真とかとってませんでしたね。まぁいいです。

    みなさん楽しんで頂いたようでよかった!また来年も・・・・デジゲー委員会のほうでスポンサーになってくれないかな?

    毎年デジゲーのたびにやるの大変w

    ってことで、2019年デジゲー終わりました!ありがとうございます!

    Category: その他日記

    tb 0 : cm 0   

    【ハルシオンブログ】条件を満たしたら多重ループから抜けるとき 

    こんにちは。
    大坂です。

    多重ループを書いたときに条件を満たしたら全部のループから抜けたい時があります。
    いつも大体こんな感じで書いてます。
    // ループを抜ける用のフラグ
    bool isEnd = false;
    for (int i = 0; i < 10; i++)
    {
    for (int j = 0; j < 10; j++)
    {
    if (i * j >= 50)
    {
    // 条件を満たしたらフラグを立てる
    isEnd = true;
    break;
    }
    }
    // フラグが立っていたら外のループも抜ける
    if (isEnd)
    {
    break;
    }
    }
    Debug.Log("End");

    まぁ2重くらいならこれでもいいんですが、こういう時はgoto文が便利に使えそうです。
    for (int i = 0; i < 10; i++)
    {
    for (int j = 0; j < 10; j++)
    {
    if (i * j >= 50)
    {
    // ENDラベルに飛ぶ
    goto END;
    }
    }
    }
    // ENDラベル
    END:
    Debug.Log("End");

    これでも同じ結果が得られますね。
    好みはわかれそうですがさらに深いループにしたときなんかは便利かもしれませんね。
    まぁそんなに深い多重ループにすることはないと思いますが・・・。
    ではまたノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    【ハルシオンブログ】TMPでうまくアウトラインができないときに気を付けるところ。 

    こんにちは。坂内です。
    次の日曜日はもうデジゲー博2019ですね!
    ブースの皆さん準備はもうできましたか?
    毎度のことながら、遊びにいきますね!

    さてUnityのお話。

    最近TMP(TextMeshPro)をで文字を作っていて、アウトラインにしようとしたらこんな感じになったんですよね。



    えぇぇ?なにこれ?アウトラインじゃなじゃないか!!

    ってとき。


    大体、フォントを作るときに何か間違えている。




    ここのサイズおかしくないですか?(え?普通そんなことない?

    あったんですよ。ここではまったことが・・・・


    ここのSampling Point Sizeや、Paddingのサイズを正しく(フォントによって違う?)設定し、RenderModeをSDF16にすると、なかなか綺麗な感じでアウトラインつきのフォントができます。

    今回はこんな感じの設定


    文字がぼやけているほうが、きれいにアウトラインとかつくようです。



    で、先ほどと同じフォントだけど、こんな感じになりました。




    TMPをちゃんと使いこなすと色々といい感じのフォントができそうですね!

    とりあえず今日はここまで!


    では、あでゅ~ノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    【ハルシオンブログ】実行中にInspectorで変えた値にしたければCopyComponentしておこうね 

    こんにちは。
    大坂です。

    今週も小ネタですね。
    実行しながら値を調整したときにそのまま停止してしまうと値が戻ってしまいますが、
    CopyComponentしておいて、停止後にPasteComponentValuesをしてあげたら反映できるねって話です。



    では今週もこれにてノシ

    Category: 開発日記(Unity)

    tb 0 : cm 0   

    【ハルシオンブログ】Unity(C#)でカプセル化ってやってます?プロパティをprivateにすることで、外から直接触れないってやつなんだけど 

    こんにちは。坂内っす。

    11月17日はデジゲー博の日です。
    デジゲーの後の飲み会のATNDつくったらまた77人集まりました。
    奇遇ですね。2年前のデジゲーの飲み会のATNDも77人なんですよね・・・・
    今後も初めからMAX77人にしてもいいんでないかい?
    問題は無言ドタキャンで逃げる人いないといいんですが・・・・・

    あ、無言ドタキャンで逃げた人がいるたびに、全員から100円づつ徴収するシステムいいんでないかい?
    みんなで被ることで、みんなから狙われるってシステム。これいいね。
    オーバーした分は俺が頂きますが。


    さて、Unityのお話。

    プロパティを使うときにこんな感じでgetter/setterを書いてたりしますよね。


    using UnityEngine;

    public class Script20191105 : MonoBehaviour
    {
    private string _userName;
    private int _age;
    private string _address;

    public string userName {
    get
    {
    return _userName;
    }
    set
    {
    _userName = value;
    }
    }
    public int age {
    get
    {
    return _age;
    }
    set
    {
    age = value;
    }
    }
    public string address {
    get
    {
    return _address;
    }
    set
    {
    _address = value;
    }
    }
    }



    これって、こんな感じでも書けるんですよね。


    using UnityEngine;

    public class Script20191105 : MonoBehaviour
    {
    private string _userName;
    private int _age;
    private string _address;

    public string userName { get; set; }
    public int age { get; set; }
    public string address { get; set; }
    }



    ただ、返却する際や、取得する際に処理を入れたい場合は、上の方法じゃないとだめっすね。


    public int age {
    get
    {
    if(_age > 10) {
    return 10;
    } else {
    return _age;
    }
    }
    set
    {
    _age = value;
    }
    }


    こんな感じで、処理をいれてからの返却とかもできます。

    あんまり個人開発しているとgetter/setterって使わないですかね?
    カプセル化っていうんですけどね。
    大本の変数はPrivateにしておいて、直接触れないようにするってやつです。

    気が向いたら使ってみてください。

    では、あでゅ~ノシ

    Category: 開発日記(Unity)

    tb 0 : cm 1