unityでゲーム作りたい(Help!) (416レス)
上下前次1-新
346(1): 弟子 2020/05/14(木)06:49 ID:1K896jy3(1/7) AAS
>>344
それ実行したらヒエラルキーにゲームオブジェクト出来てるとおもうけどどうでしょ
まずスクリプト型オブジェクトの取得にinstantiate の帰り値指定してるけど、そもそもinstantiate はゲームオブジェクトを生成する命令
そのためスクリプトオブジェクトを破棄してもinstantiate で生成されたオブジェクトは破棄してないから残ってると推測
複雑にしないで順序だててやればいいかと
347: くまじょ 2020/05/14(木)08:33 ID:LxPnkdhJ(1/2) AAS
>>346
それが消えてるのに数が合わない
348: くまじょ 2020/05/14(木)08:37 ID:LxPnkdhJ(2/2) AAS
時間があるときにでも確認してみる
複数シーンを使用している
349(3): くまじょ 2020/05/14(木)20:17 ID:6hw1sJEU(3/12) AAS
GameObject[] goPais;
goPais = GameObject.FindGameObjectsWithTag("Pai");
if(goPais.Length != 0)
{
Debug.Log("★-1- おかしな現象が起きてるぞ goPais.Length=" + goPais.Length);
}
ScriptPai pai = MakePai(0, 0, 0);
goPais = GameObject.FindGameObjectsWithTag("Pai");
if (goPais.Length != 1)
{
Debug.Log("★-2- おかしな現象が起きてるぞ goPais.Length=" + goPais.Length);
}
//pai.tag = "Player"; // このあとDestroyしてるのにGameObject.FindGameObjectsWithTag("Pai");で見つけてしまう
Destroy(pai.gameObject);
goPais = GameObject.FindGameObjectsWithTag("Pai");
if (goPais.Length != 0)
{
Debug.Log("★-3- おかしな現象が起きてるぞ goPais.Length="+ goPais.Length);
}
350(1): くまじょ 2020/05/14(木)20:21 ID:6hw1sJEU(4/12) AAS
>>349
★-3- おかしな現象が起きてるぞ
が表示された
つまり
Destroyしたのに
GameObject.FindGameObjectsWithTagが見つけてしまう
このあと、
goPais = GameObject.FindGameObjectsWithTag("Pai");
goPais[0]になにかすると
すでにdestroyされているのでエラーになる
351: くまじょ 2020/05/14(木)20:25 ID:6hw1sJEU(5/12) AAS
>>349
GameObject.Destroyを使った方がいいのか?
352(1): くまじょ 2020/05/14(木)20:30 ID:6hw1sJEU(6/12) AAS
>>344-350
この質問を解決とします
どうやらこういう動作をするものらしい
Destroy(pai.gameObject);で即死はしていないので注意ってことだ
353: 2020/05/14(木)20:40 ID:1t2wFzuc(1) AAS
うん、おめでとう
354(1): くまじょ 2020/05/14(木)20:51 ID:6hw1sJEU(7/12) AAS
>>350
訂正
Destroy() した直後は生きているから
m_goPais = GameObject.FindGameObjectsWithTagが見つけてしまう
直後ではなくて後で
m_goPais[0]に何かするとすでにdestroyされているのでエラーになる
355: 弟子 2020/05/14(木)21:24 ID:1K896jy3(2/7) AAS
まったくわからんのだが
>>349のソースには
m_goPais がないんだけど、>>354で突如でてきて、に
m_goPaisに何かするとすでに ってさ
もうね、全部情報だしなよ
そんな自分しか知らない情報でここに書かれても、何したいの?
混乱させたんだね くらいしか思えないわ
プログラム作るならも少し仕様を決めて作ろ
356: 2020/05/14(木)21:27 ID:1K896jy3(3/7) AAS
くまじょさんは、自分はおっちょこちょいでよくからんけど、Unityで偽情報流したいって自己紹介してる感じかな?
もちっと簡潔にしてシンプルなコードで試せばいいと思うけど
357(1): 弟子 2020/05/14(木)21:31 ID:1K896jy3(4/7) AAS
あ、そうそう帝王さんってのもボタンのBool値が欲しいってさ
何のBool?
ActiveなのかEnableなのぁ、具体的に書いてねって言っても
Wait処理とか出てきたし
え、最初からそんなの書けよって事
なんで後出しじゃんけんするかなぁ
パラメータも3,4欲しいって
え?プログラム作るのにパラメータの数決まってないの?
それでどうやってIF作るのさ?
もちっと仕様ちゃんと考えよう
358: 弟子 2020/05/14(木)21:46 ID:1K896jy3(5/7) AAS
まぁここ見てる人たちは
参考にしないでね
359(1): くまじょ 2020/05/14(木)22:21 ID:6hw1sJEU(8/12) AAS
余計な部分はかえって分かりにくくしてしまうので忘れてください
paiはスクリプトコンポーネント
paiには"pai"というタグがついている
Destroy(pai.gameObject);
goPais = GameObject.FindGameObjectsWithTag("Pai");
でGameObject.FindGameObjectsWithTagが
pai.gameObjectを見つけてしまう
原因を調べてたら
どうやらこう動作をするものなので
回避する必要がある
ということがわかったという話
360: 2020/05/14(木)22:25 ID:H9Bm8TRn(1) AAS
>>357
も、申し訳ございません。
質問というよりは
単にボタンで苦労した話をしたかっただけなのです
361(1): 弟子 2020/05/14(木)22:37 ID:1K896jy3(6/7) AAS
>>359
すまんスクリプトコンポーネント自体にタグの設定など無いと思う
タグはゲームオブジェクトに付けられるものだと思うのだが
とうやって浸けたのかそのssとか方法を記載してもらえますか?
試して見たいのですよ
明日になるけど
362: くまじょ 2020/05/14(木)22:53 ID:6hw1sJEU(9/12) AAS
>>361
その指摘は正しい
スクリプトではなくゲームオブジェクトにタグがついていると読み替えてください
タグの話も忘れてください
さらに簡潔に表現すると
Destroy直後(すぐ次の行)ではまだオブジェクトは生きてたってだけのことですよ
検証はしてないけどそういう情報がネットにあったから
363: くまじょ 2020/05/14(木)22:55 ID:6hw1sJEU(10/12) AAS
ぐーぐるけんさく
unity destroy 直後
364: くまじょ 2020/05/14(木)23:06 ID:6hw1sJEU(11/12) AAS
>>352
既に簡潔なものをここに書いてた
365(1): 弟子 2020/05/14(木)23:07 ID:1K896jy3(7/7) AAS
多分理解してないだけだと思うけど
公式のマニュアルね
外部リンク[html]:docs.unity3d.com
破壊は、現在のフレームのアップデート(Update)処理後に行われます
一応即破棄には
外部リンク[html]:docs.unity3d.com
もあるけどこちらはエディタよう
同一フレームとかの理解しましょ
366: くまじょ 2020/05/14(木)23:17 ID:6hw1sJEU(12/12) AAS
>>365
説明ありがとう
そりゃ始めからDestroy直後のfindでは見つけてしまうって理解してたら質問しないさ
367: 弟子 2020/05/15(金)07:08 ID:KGJ1LJd+(1) AAS
まずはブログ読むより先に公式の説明見て確認、検証するくせ付けた方がいいかもしれません
ブログは古い情報や間違った解釈が平然と書かれてる場合が多々あるから
368: 帝王 2020/05/16(土)17:59 ID:Fjh1+f5d(1) AAS
間違った解釈というか
そのクラスならクラスの、
さわりの部分しか解説してないブログが多い
369: 弟子 2020/05/16(土)18:56 ID:5yfA+B1Y(1/3) AAS
それあるね
しかも他のWebで書いてあることじゃんての
その先が知りたいんだよ!ってみてもどこにも無いとかね
370: 弟子 2020/05/16(土)19:00 ID:5yfA+B1Y(2/3) AAS
晒すか
以前angle命令調べるのに出てきたページなんだが
外部リンク:qiita.com
使えなさそうとか平気で書いてるんだよ
使い方知らないだけなんだよ
これについてはミニ知識スレにやり方書いてるけど
ほんとこういうページは駆逐したい
371(1): 2020/05/16(土)19:18 ID:DqlF+U2q(1) AAS
大なり小なり人はミスするんだから、駆逐したいとかなら指摘してあげるだけでいいんでは?
この記事見て、angleというのがあるんだ!と気付く初心者だっているし。
372: 弟子 2020/05/16(土)19:20 ID:5yfA+B1Y(3/3) AAS
それがね最終更新が6年もまえなのよ
こういう、デジタル資産はホントにやっかい
真に受けてしまう初心者出てくるだろうにね
373: 弟子 2020/05/17(日)08:41 ID:lKU4pjgS(1/5) AAS
>>371
あの記事見ると、angle というのがあるけど使えないのか、角度はやはり三角関数なのかぁめんどくさい と思う方が多いのではないかな?
折角簡単に取得出来るのにね
これキータの記事でしかもangle の検索でトップにくるから初心者はそれを信じるだろうね
そうなると、やっぱりunity 面倒だな
となり皆不幸になっていく
書き方なんだよね
検証したけど自分にはよくわからなかった 位ならいいけどさ
何故かは自分が出来ない=unity では無理 見たいに書く人多いよね
374: 2020/05/17(日)08:59 ID:jKnfM6iu(1/2) AAS
そういうしらべものをして学んでいくのがプログラマなので、そこで挫折するならそれはしょうがない、不向きだったんだよ。
unityはあくまで煩雑な作業を軽くするツールで、素人が簡単に作れるという幻想の方が間違ってる。
375: 弟子 2020/05/17(日)09:13 ID:lKU4pjgS(2/5) AAS
今の人はゆとりなのかわからんが、調べもの=ネット検索だからねぇ
自分で検証コード書かないのばかりでしょ
質問スレ見てもそれは顕著だし
そこまでなんとからほっとくと益々底辺広がらず、それは現ユーザーにも悪影響になるからねぇ
上下前次1-新書関写板覧索設栞歴
あと 41 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.006s