12 «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.» 02

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

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

 

【Unity】Instantiateでオブジェクトを作った時に、enableがtrueでも見えない時があったりなかったり?そんな時の解消法の一つはこうしてるよ? 

今日は20度まで上がるとかって話ですね。
明日はまた11度まで下がるとか・・・・
気温の変化が激しいですね!みなさん体に気を付けてください!
はい、坂内っす。

そういえばUnity5.4にて、Instantiateを使い、とあるオブジェクトの下にポップアップ等のオブジェクトを作った際、ポップアップ側の表示がされないことがあります。
これなんでしょうか?
他のプロジェクトをコピーして作ったプロジェクトだから?よく分からないんだけど、ポップアップが表示されない時があるんすよね・・・

InscpectorでポップアップオブジェクトのenableをON>OFF>ONにすると画面に表示されるので、存在はしている・・・・
そして一度enableを切り替えればちゃんと見えたままになります。
それも毎回この現象が起きるわけでもないんですよね。
ポップアップ表示を、10回に1回か、20回に1回か、時と場合によって変わるのですが、こんなことが起きたりします。

こんな現象なった方います?

普段から、ポップアップ等のウィンドウを追加表示するときは、
instantiate(popupPref);


等でオブジェクトを作成。
ポップアップ側のAwake、もしくはStartで

transform.SetParent(GameObject.Find("ポップアップ置くところのオブジェクト名").transform,false);


とやってるだけなので、オブジェクトが消えるような処理は特にやってないんですが・・・・

これ困ったので、以下のコードを入れて、対応しました。

ポップアップ側のAwakeもしくはStartで
gameObject.SetActive(false);
gameObject.SetActive(true);


無理やりSetActiveを流しました・・・・一応これで消えることはなくなったのですが・・・・
一体何が原因なのかいまだ分からず・・・・

すっごい気持ち悪いんですよね。
今までのアプリではそんなことなかったんですが・・・・

いやほんと気持ち悪うぃ!!!

ま、とりあえずこのまま進めますが(笑)

ということで、謎の現象の解決方法のうちの1つでした!

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

Category: 開発日記(Unity)

tb 0 : cm 0   

【Unity】オブジェクトにカーソルが入ったとか出たとか。 

こんにちは。
大坂です。

皆様寒い中元気に過ごしているでしょうか。
自分は体調面で嫌な予感しかしてませんが、気のせいだと思っておきます…。

さて今週もネタはないんですが、オブジェクトの上にマウスカーソルが乗って出たときなんかに使える奴を。
スマホアプリだと関係のない話ですけどね…

Colliderを持ってるオブジェクトを見るなら「OnMouseEnter」「OnMouseExit」を使えます。

public class MouseTest : MonoBehaviour {

// カーソルが対象オブジェクトに入った時
void OnMouseEnter() {
Debug.Log("OnMouseEnter");
}

// カーソルが対象オブジェクトから出た時
void OnMouseExit() {
Debug.Log("OnMouseEnter");
}
}

こんなのですね。

uGUIとかで実装したい場合は「OnPointerEnter」「OnPointerExit」を使えばできます。

public class MouseTest : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler {

// カーソルが対象オブジェクトに入った時
public void OnPointerEnter(PointerEventData eventData ) {
Debug.Log("OnPointerEnter");
}

// カーソルが対象オブジェクトから出た時
public void OnPointerExit(PointerEventData eventData ) {
Debug.Log("OnPointerExit");
}
}

「IPointerEnterHandler」「IPointerExitHandler 」を継承させて使う感じですね。

何となく使う機会があったので…。
では今週もこれだけです。

また来週ノシ

Category: 開発日記(Unity)

tb 0 : cm 0   

【ハルシオンぶろぐ】はい、ネタがないんでルナダン2的なやつを作ろうと思ってますよー的な話をちょっと。 

おはようございます!
坂内っす。
今日も歯医者でございます。親知らず抜かれそうでびびってます((((;゚Д゚))))ガクガクブルブル

さて、現在次のガチャを制作中。

前回の社畜ガチャよりいいものになってきてます!
おまんま食わせてください。

そして、水面下で動き始めたハクスラ。
ルナダン2にはならないかな。
(もう1は世の中にないし・・・)

戦闘アニメーションを派手にして、見てても面白い感じにしたいっすね。
もちろんハクスラの楽しみはルナダンを超えるくらいにして。
Affix、Suffix当たりをちゃんとつけて、アイテム掘りの楽しさは失わないように。
でも、色々プロパティ考えてたら、計算がぐちゃぐちゃになって泣きそうになってますが…

とりあえず戦闘シーンの雰囲気できたら動画にでもしてツイッターにアップしてみます。
(何月になるかわからんけど)

ダンジョン行くと5分ー10分くらい放置できる感じにしたいなーと。
もちろんボスとかではマニュアルで必殺技使ったりもしないと難しいようには調整していきたいですが。

どんな感じになるのかはまだ決まってません。

まずはAndroidで「ハクスラ」検索1位を目指していいものを作っていきます!

え?Unityの話題?

特に目新しいことしてないんでネタないんす。

3年前とは違ってUnityの技術について、色々と詳しくしっかり書いているブログも増えましたし。

ということで、本日はこれにて逃げます。

あでゅ~ノシ

Category: その他日記

tb 0 : cm 0   

【Unity】Destroy後にちょっと嵌った話 

こんにちは。
大坂です。

今日も寒いですねorz
明日は都心でも雪が降るとかどうとか。
積もるほどではないらしいですが。

さて今年2回目のブログですでにネタなんてないわけなんですが。
コードを触っていてDestroyでオブジェクトがなくなるタイミングでちょっと嵌ったのでその辺を。
今更なんですけどね…orz

簡単に言えばDestroy直後にそのオブジェクトを探しに行くとまだオブジェクトが存在している感じですね。
        Destroy(GameObject.Find("GameObject"));

if(GameObject.Find("GameObject")) {
Debug.Log("Test");
}

こんな感じにやるとログが表示されます。

nullかどうかで判定してあげるとログは出ません。
        Destroy(GameObject.Find("GameObject"));

if(GameObject.Find("GameObject") == null) {
Debug.Log("Test");
}

なるほど。

ちなみに次のフレームになってれば「if(GameObject.Find("GameObject"))」でも存在しない扱いになってます。
    void Update() {

if(GameObject.Find("GameObject")) {
Destroy(GameObject.Find("GameObject"));
Debug.Log("Test");
}
}

ログは一回しか出ません。

ということで小ネタですがこの辺で。
また来週ノシ

Category: 開発日記(Unity)

tb 0 : cm 0   

【Unity】enumって使ってますが、うまく使うと便利よね。今年の目標はルナダン2とポケガ3! 

こんにちは。
虫歯治療が始まった坂内です。
今朝歯をちゅいーんされてきました。
虫歯には気をつけましょう。

さて、今年のうちにルナダン2とポケガ3を作りたいと思っています。
両方作れるか全然自信ないですが。
また皆さんに色々とお手伝いを頼もうかと思っています。
心あたりのある方は覚悟しておいてください。

Unityのちょろネタ。

enumって使いますよね。

public enum MUSIC_TYPE {
POP,
JAZZ,
ROCK,
};


とかって設定して、
public MUSIC_TYPE mType;
mType = MUSIC_TYPE.JAZZ;
や、
switch(mType){
case MUSIC_TYPE.POP:
break;
case MUSIC_TYPE.JAZZ:
break;
case MUSIC_TYPE.ROCK:
break;
}


みたいな感じで使用すると思うんですが、「MUSIC_TYPEの2番目は何?」や、「MUSIC_TYPE.ROCKは何番目?」というのも取得できるんですね。
enumをintとして使用するのは結構使ってたんだけど、逆はあんまり使ったことありませんでした。

【enum ⇒ int 】
(int)でキャストしてあげる。
int musicTypeNo = (int)mType;

【enum ⇒ string】
toString()をしてあげる。
string musicTypeName = mType.toString();

【int ⇒ MUSIC_TYPE】
System.Enum.ToObjectをして、●番目のenumの中身を取得。
MUSIC_TYPE musicType = (MUSIC_TYPE)Enum.ToObject(typeof(MUSIC_TYPE),2);

こんな感じで、enum使うと結構便利ですね!

ということで、今日はこれくらい。
あでゅ~ノシ

Category: 開発日記(Unity)

tb 0 : cm 0   

そして2本目…!今年もよろしくお願いします!! 

あけましておめでとうございます。(遅
大坂1回目です。

今年2本目のアプリも出しました!!
去年から作ってたやつですが。



「俺が社畜になるわけがない」
です!

URLはこちらですが、残念ながらAppleさんの壁に負けてiOS版は出してませんorz
http://bit.ly/2joZKZn

企画・シナリオ・デザインは「めるくま(@merkmal_dev)」さんに担当していただきました!

シンプルなクリッカーゲームですが、心に刺さるストーリーが何とも言えません。

頑張ってタップして皆さん徐々に社畜になっていく様を味わってみてください!

ということで今年2回目のブログも宣伝です!

いい技術ネタがあったらまた書いていきたいと思います…orz

ではではまた来週ノシ

Category: その他日記

tb 0 : cm 0   

明けましておめでとうございます。今年もハルシオンブログだらだらやっていきますYO!まずは1本目! 

明けましておめでとうございます。
本年も何卒よろしくお願い致します。

本日からハルシオンブログ開始です。

今年一発目のアプリが公開されました。


こちらですね。

「DoTap!」
Android/iOS
http://bit.ly/2hfy0VX


どんなゲームかというと、画面の上の方にある●の色と同じものをタップしていくという、とても単純なカジュアルゲームです。


今回のスクショとか、細かいデザインなどは、デザインの巨匠「the96」さんにお手伝いしていただきました。

もうね。デザインセンスとかなんもないから、スクショとか大っ嫌いなんですよ。
マジ無理。

あ、こちらランキングもあるので、みんなで競い合ってみてはいかがでしょうか?
現在「1分ランキング」の最高が256という恐ろしい記録が出てますよ!
すげえなみんな。おじさんついていけない!

ということで、今年一発目が宣伝ということでした。

受託が立て込んでくるとアプリが作れなくなると思いますが、1本でも多くアプリを出していけるように頑張っていこうと思います。

また、今年でブログも5年目に入りそうですが、相も変わらずダラダラとハルシオンブログを続けていこうと思います。

では、あでゅ~ノシ

Category: その他日記

tb 0 : cm 0