【ゲームエンジン】Unity初心者質問スレBuild2

レス数が1000を超えています。これ以上書き込みはできません。
1ageteoff
垢版 |
2019/05/08(水) 14:35:37.58ID:VDHuk8YT
ゲームエンジンUnityを楽しむ初心者による初心者の為のスレ
その為「アセットを購入しましょう」「チュートリアルやれ」「ググレカス」等禁止
初心者が親身になって初心者に教える。
又ググレの場合、何のキーワードでググるのか書いてね

●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・マニュアル
 http://docs.unity3d.com/ja/current/Manual/index.html
・チュートリアル
 http://unity3d.com/jp/learn/tutorials
・スクリプトリファレンス
 http://docs.unity3d.com/ja/current/ScriptReference/index.html
・FAQ
 http://unity3d.com/jp/unity/faq
・MSDN
 http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
2020/01/11(土) 12:46:12.11ID:wPvGtAaQ
敵に攻撃するとダメージが数字でポップアップされるという処理を

var pos = 対象の敵オブジェクト.GetComponent<Transform>()して、
ダメージのテキストをプレハブ化した物をInstantiate(プレハブ, pos)で生成したのですが

ダメージのプレハブが敵オブジェクトの子になっているので、敵オブジェクトのHPが0になってDestroyされた瞬間に一緒に消えてしまいます

生成するプレハブの位置を任意のゲームオブジェクトのtransformに重ねるが、子にはしないみたいな事はどうすれば出来るのでしょうか?
transformから位置(座標?)だけを取得する方法がわかれば応用が色々出来そうなのですが
2020/01/11(土) 13:01:07.21ID:eNMw2FnY
>>993
だろ、やっぱり入れ子になってると勘違いしてるよな?

サンプルソース書いてあげたから見てみな
IL_009aのループ一度しか無いし中身の取り出しも一回だけ
その後でLINQメソッドに渡されたデリゲートを適用してそのままループ内の処理に進んでる
https://imgur.com/a/E99qR2O
2020/01/11(土) 13:08:04.10ID:ftB0znZP
>>995
ダメージテキストのオブジェクトに、新しいスクリプトをつける。
そのスクリプトのstartに、親を放棄させるメソッドを入れる。
ググリワード
transform.parent
2020/01/11(土) 13:13:14.92ID:GoAReVTm
>>995
Instantiateする際に
GameObject obj =Instantiate(プレハブ, pos)
これでGameObject取得できるので、その後すぐに親を外す
obj.transform.paerent =null
これで敵の子として生成した後に独立する
2020/01/11(土) 13:13:52.35ID:1/8GPuaw
>>996
マジで大丈夫?
そりゃそこのforeachがループにされてるだけでそこにループがネストするなんて話はこれっぽっちもしてないんだが
>>993でもそう説明してるけど分からん?マジでシンタックスシュガーによるイテレーターの実装理解できてないだろお前
1000名前は開発中のものです。
垢版 |
2020/01/11(土) 13:17:05.48ID:eNMw2FnY
頭悪い子だな
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 247日 22時間 41分 28秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況