[過去ログ] 【ゲームエンジン】Unity初心者質問スレBuild4 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
322: 2020/04/29(水)23:21 ID:IMZ53Uaz(2/2) AAS
釣りはよそでどうぞ
323: 2020/04/30(木)00:32 ID:hTGJdOAW(1) AAS
テストプレイ中(UNITYで再生中)に
VisualStudioでコード編集するとテストプレイが一時停止になってしまいます。
前は動作させたままコード編集できたような気がします。(気のせいでしょうか?)
324: 2020/04/30(木)03:18 ID:uP6BsH0v(1/3) AAS
はい、気のせいです。
スクロールはできるが、記入した時点でフォーカスがVSになってunityは止まる
325: 2020/04/30(木)03:33 ID:yZzY0I2t(1/2) AAS
>>308
Undo.RecordObjectは上手く使えなかったのですが、
それの関連で出てきたプロパティ操作とやらを使ったらできました!
ありがとうございました
326(1): 2020/04/30(木)05:33 ID:rTPsa1+b(1/3) AAS
ユニットをクリックすると移動できる範囲の色を変えるという実装を作ろうとしています。
UIのオブジェクトでマップを作った場合、
マップのタイルにUIのImageをアタッチしてこれを半透明にし、後はON/OFFにすることで表現できるようです。
ところがいまヒエラルキーに画像をドラッグ&ドロップで作り出したオブジェクトをベースにマップを作っているので
このやり方ができません。
半透明のマスクのようなものを上から適用したいのですがやる方法があるでしょうか?
すべてを諦めてマップをUIで実装しなすことも考えています。
327: 2020/04/30(木)05:55 ID:rTPsa1+b(2/3) AAS
>>326
自己解決しました。
元のオブジェクトの下に子オブジェクトを追加して、
この子オブジェクトをON/OFFすればできました。
328: 2020/04/30(木)06:48 ID:XHyCB/e1(1) AAS
UnityでFE風のSRPGを作ってる人のブログを前に見たな
自分が見たときはちょうど行動可能範囲に色をつけたところで終わってた
329(3): 2020/04/30(木)11:41 ID:V6Pk2JwW(1/3) AAS
画像リンク[png]:s.kota2.net
ボタンを押すと5の星だけが表示されるスクリプトなのですが、
親になっている星のオブジェクトをpublicで参照するやり方ではなくて
Findでヒエラルキーから探してくるやり方に変更したら動かなくなりました。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
省16
330(1): 2020/04/30(木)12:26 ID:uP6BsH0v(2/3) AAS
どう動かなくなるのか…
331: 329 2020/04/30(木)12:40 ID:V6Pk2JwW(2/3) AAS
>>330
ボタンを押しても何も反応しなくなりました。
publicで外部から親を参照していた時はうまく動いていたのですが、
Findで探すようにしたらボタンが反応しなくなった感じです。
332(1): 2020/04/30(木)12:44 ID:fCNBU+9B(1) AAS
>>329
というかこれエラー出てない?
Findはメンバー変数の宣言時には使えない。
こうすればいけるはず。
Transform STARParent; // = GameObject.Find("starParent").GetComponent<Transform>();//Findで探したい
void Start()
{
省2
333: 2020/04/30(木)12:44 ID:yZzY0I2t(2/2) AAS
簡略化してるのかと思ってたけど
もしかしてStart()とかの関数の外でGetComponentしてる?
334: 329 2020/04/30(木)13:01 ID:V6Pk2JwW(3/3) AAS
>>332 333
どうもありがとうございました。
スタート関数の中でGetComponentを書かなくてはいけなかったのが分かっていませんでした。
publicで親を参照していた時はなぜかエラーが出ていなくてボタンも動いていました。
335: ダーク王鍬大使 ◆SoVpkB15jY 2020/04/30(木)17:20 ID:sYkR1Hoa(1) AAS
僕もガチ初心者の頃にメソッドの外でGetComponentしようとしたことがありまひた(^^
誰もが通る道なのでふね(^^
ボッキング!(^^
336: 2020/04/30(木)17:46 ID:Svx3VR2I(1/2) AAS
昨日screenspace.cameraでのUGUIのドラッグについて質問した者ですが、やっと画面に表示される様になったもののクリックした位置のかなり左にオブジェクトがワープしてしまう様になりました。
もうお手上げです\(^o^)/
337: 2020/04/30(木)20:54 ID:dWqwrf+A(1/2) AAS
原因が同じかどうかはともかく
自分もドラッグで位置を変更できるようにしたオブジェクトがわけのわからない挙動になったことがあるわ
既存のSceneを大量にコピーして増やしたうちの一つだけがそうなったから頭を抱えた
結局原因はヒエラルキーに登録したスクリプトのGameObjectにmissingがあることだった
そんなことでも挙動がおかしくなるんだな
338: 2020/04/30(木)20:54 ID:uP6BsH0v(3/3) AAS
クリックした時の座標データを表示して、見る。
339(1): 2020/04/30(木)21:02 ID:OfoKVMka(1) AAS
質問時にエラーが出てる時は必ず言って欲しいわ
340: 2020/04/30(木)21:28 ID:Svx3VR2I(2/2) AAS
ワープ現象は手札置き場パネルのホリゾンタルレイアウトがカードオブジェクトのアンカー?を左上にセットしていたのが原因っぽいです。
ドラッグ開始時に一度コンポーネントをオフにし、アンカーをスクリプトから中心に移動する事で解決しました。
screenspaceの問題についてはRectTransformUtilityを使って座標を変換する事で解決しました。
同じ現象で困る人が後から救われる様に書き残しておきます。
ありがとうございました!
>>339
エラーが出れば自分でも調べられるから楽なんですけどね・・・。
341: 2020/04/30(木)21:28 ID:dWqwrf+A(2/2) AAS
そういえば自分の時はコンソールに何かエラーメッセージが出てたな
342: 2020/04/30(木)21:34 ID:rTPsa1+b(3/3) AAS
ここで質問していろいろ弄ってわかったことのメモを置いておきます。
【uGUIのImage】と【SpriteRenderer】について
Unityで画像オブジェクトを表示する方法として、uGUIのImageとSpriteRendererの2つがあるようです。
どちらを使っても似たようなことをできるようですが、やり方が多少異なります。
?uGUIのImageを使う場合
uGUIのオブジェクトはヒエラルキーのCanvas以下に置く必要があり、座標系はピクセル(例:-375〜375)。
画像はUI→Imageをオブジェクトにアタッチして設定(あるいは最初からUI→Imageでオブジェクト作成)。
省11
343: 2020/05/01(金)00:44 ID:YDQCTUGy(1/2) AAS
UGUIではUIを作りましょうって事なんだろうけど、レイヤーを指定して最前面以外に描画できるだけで初心者にはありがたいのになぁ。
344(3): 2020/05/01(金)20:23 ID:HXkpQ0jK(1) AAS
おすすめのアセット教えてください(´・ω・`)
345: 2020/05/01(金)20:37 ID:KuaWU/nQ(1) AAS
何が欲しいねん2Dキャラ欲しいのにSE集いらないやろ
346(1): 2020/05/01(金)22:22 ID:YDQCTUGy(2/2) AAS
>>344
セール終わったばっかりじゃん!
初参戦でdotweenとeasysaveとSE集3個買いました。
347: 2020/05/02(土)00:55 ID:d/s8ZDya(1) AAS
宴を買ったけど今すぐ使いたいのはダイヤローグシステムの方だった
次のセールでも半額になっていますように
348: 2020/05/02(土)01:17 ID:z//Ej8ZX(1) AAS
>>344
このブログでも見たら?
外部リンク:www.asset-sale.net
都市ジェネレーターくっそ楽しそう
349(1): 2020/05/02(土)04:48 ID:qMjLJQ/3(1/2) AAS
>>346
DOTweenは無料のようですが
DOTween Proを買ったのでしょうか?
セールが終わったばかりとは残念なことです。
350: 2020/05/02(土)04:58 ID:qMjLJQ/3(2/2) AAS
>>344
最近買った本にオススメアセットが乗っていました。
Playmaker($65):プログラミング補助ツール
DOTween(無料):オブジェクトアニメーション
Easy Save The Complete Save & Load Tool for Unity ($24.99):セーブやロード実装
Anti Cheat Tool Kit($50):チート対策
UniRx - Reactive Extensions for Unity(無料):コルーチン等非同期処理ライブラリ
省7
351: 2020/05/02(土)23:46 ID:jg5HGTGy(1) AAS
ずっと解決できない不具合があり教えて頂きたいです。
画像リンク[gif]:s.kota2.net
ゲームを始めて
「赤い人」に付いているスタート関数が走って「赤い人になるボタン」が非表示になります。
「青い人になるボタン」を押すと赤い人が非表示になり、もともと非表示だった「青い人」が表示されるクリックイベントが付いています。
表示された「青い人」に付いているスタート関数が走って「青い人になるボタン」が非表示になります。
最後に「赤い人になるボタン」を押すと赤い人が表示されて「青い人」が非表示になるクリックイベントが付いているのですが、
省10
352(2): 2020/05/02(土)23:54 ID:liKQCy1q(1) AAS
GameObject.Findは非アクティブオブジェを検索できないから、
//親オブジェから子を探す
Parent.tran.form.Find("子オブジェ").gameObject.SetActive(true);
にすればいいんじゃないかな
353(1): 2020/05/03(日)00:15 ID:mGAguN+2(1/2) AAS
>>352
ごめんなさい親がTransform関数だからtransformいらなかった(あっても通るけど)
Parent.Find("RedMan").gameObject.SetActive(true);
でいけると思います
354(1): 2020/05/03(日)00:46 ID:3PYqNA60(1/2) AAS
>>352>>353
どうも有難うございます。
GameObject.FindからParent.Findに変更したことで挙動が一歩先に進みました。
画像リンク[gif]:s.kota2.net
「赤い人」が表示されるようになりましたが、
「赤い人」に付いているスタート関数通りに動いていません。
「赤い人になるボタン」が非表示になり「青い人になるボタン」が表示されるはず(ループする)なのですが、「赤い人になるボタン」が残ったままです。
省14
355(1): 2020/05/03(日)01:05 ID:mGAguN+2(2/2) AAS
>>354
Start関数は1回目にインスタンス化したときにしか呼ばれないから、アクティブ化したとき毎回呼びたいなら
OnEnable関数に入れると解決すると思います
356: 2020/05/03(日)01:20 ID:3PYqNA60(2/2) AAS
>>355
どうもありがとうございます!
ずっと行き詰っていたので質問してよかったです!
357(1): 2020/05/04(月)11:48 ID:J4ms5P/o(1/2) AAS
ヒエラルキー
Canvas
image
もし、Canvasの子のimageに付いているimage.csの中にあるbool型の変数 isBool が false だったら
{
処理
}
省7
358(1): 2020/05/04(月)11:59 ID:FDckzKji(1) AAS
子の取得
イメージの取得
スクリプトの取得からの変数を取得
の複合となります。
359(1): 2020/05/04(月)16:56 ID:4sVluEfA(1) AAS
なんでもかんでも、public にするのは良くないと
よく言われますが、
その理由は、思いがけず他のスクリプトから変更されるリスクがあるから
という認識で大丈夫でしょうか?
そうであるとすれば、個人制作であれば
それほど気にしなくていいですか?
360: くまじょ 2020/05/04(月)17:27 ID:AIvgNpPa(1) AAS
>>359
いいよ
でも何でもかんでもpublic メンバ変数は良くないと知ったうえで
361: 357 2020/05/04(月)20:12 ID:J4ms5P/o(2/2) AAS
>>358
どうもありがとうございます。
別スクリプトの変数の値を取得することが出来ました。
もし、Canvasの子のimageに付いているimageScriptの中にあるbool型の変数 isBool が false だったら
GameObject _image; //スクリプトが付けているオブジェimageを変数に入れる
BigModeScript _imageScript; //imageのコンポーネントimageScriptを変数に入れる
_image = GameObject.Find("image");
省11
362(1): 2020/05/05(火)13:51 ID:9nXMWD0/(1/2) AAS
画像リンク[jpg]:www.diced.jp
画像リンク[jpg]:www.diced.jp
初歩的な質問ですみません。カメラの撮影範囲を表示している?の線に背景が触れると、?のように表示されます。
?のようにならず正常に表示するにはどうすればよいのでしょうか。
分かる方がいましたら回答お願いします。
363: 2020/05/05(火)15:36 ID:9Qg9BbaI(1) AAS
>>362
その線は、カメラに表示させる範囲をあらわしてるんよ。
カメラに映る範囲の距離を伸ばせばいいだけだから、
カメラのインスペクタの"Clipping Planes"のFarの値を増やせばいいよ。
364: 2020/05/05(火)15:56 ID:M7CVA2SC(1) AAS
手前だからNearだな
365: 2020/05/05(火)16:28 ID:9nXMWD0/(2/2) AAS
ありがとうございました!これで作業が進みます!
366: 2020/05/05(火)20:21 ID:yqNxCZ2T(1) AAS
ユニットが選択されたらステータスに顔画像を表示する部分を作っています。
1.ユニットの子オブジェクトのImageに画像をロード(ユニット生成時に一度だけ)
2.ユニットが選択されたとき、ステータスUIのImageを選択ユニットの子オブジェクトImageに置換
というやり方で実装しました。
ここでゲーム実行中に1の画像ファイルを別なものに置き換えたところ、
2のステータスUIの画像までリアルタイムで(正確にはUnityをActive windowにしたときに)変わりました。
ユニットが選択されるたびにファイルアクセスが発生しないように上記のような実装にしたのですが
省1
367: 2020/05/05(火)21:14 ID:GfNu4m3E(1) AAS
質問失礼いたします。
カメラにアニメーションキーを打って再生しているのですが、
1フレーム間の移動を大きくすると、再生時に正常に再生されない(キー前後で補完のようなものがはいる)のですが、原因や対処法などございますでしょうか。
宜しくお願い致します。
368: 2020/05/05(火)21:20 ID:ENVyAp/N(1) AAS
マルチっすか……
369: 2020/05/06(水)06:05 ID:N50fTHgp(1) AAS
マルチだね
370: 2020/05/06(水)17:25 ID:tuJN3eof(1) AAS
Unity AIPの詳しい解説が掲載されている教本があれば教えてください
371: 2020/05/06(水)17:35 ID:+0FT+A2D(1) AAS
そんな物は無い
372: 2020/05/06(水)18:46 ID:oYW9vXG2(1) AAS
垢付きさんはUnityの教本一冊も読んでないでしょ〜
373(2): 2020/05/06(水)20:30 ID:7QaDuGGA(1/2) AAS
カメラをズームしてもぼやけないよう予め大きめのpng画像でPlayerキャラを用意し、Scale縮小して表示したいと思います。この場合、
・一番親のオブジェクトでまとめて縮小する、
・キャラを描画するレンダラーコンポーネントを付けた子オブジェクトを縮小する
どちらのパターンが無難でしょうか?
親オブジェクトにはRigidbody2Dと接地用のコライダー、メイン処理用のスクリプトが付いており、
子はレンダラー用、レンダラーに追従する当たり判定用などのオブジェクトが3つぐらいあります。
どちらも今のところは大丈夫なんですが、後々物理演算のかみ合わせとかなにか問題出てくる要素あるのではと決めかねています。
省1
374(1): 2020/05/06(水)20:42 ID:DpeqSzMx(1) AAS
>>373
後々がどういう仕様になるか、ご本人がわからなければ第三者はもっとわかりません。未来の話は置いといて作れば良いかと。
あと、気になったのは大きい画像とありますが、2dでドット絵なら、主スケールの時に1対1ドットにすべきかと思います。縮小すると線が消えますので。
375(1): 2020/05/06(水)23:57 ID:7QaDuGGA(2/2) AAS
>>374
ありがとうございます。あまり考えても仕方がないとは思うのですが、
オブジェクトの物理演算の動きを阻害させずにグラフィックだけ動かす必要が出て、オブジェクトのプレハブの親子関係全修正になってしまったので、
後々融通の効くオブジェクト構造とはどういうものなのだろうかと気になっています。
例えば炎がキャラの位置に追随しながら周囲を回転する魔法を実装したい、となった際にはキャラの子オブジェクトとしてインスタンスするのが良さそうですが、
親のルートオブジェクトがキャラによってまちまちの縮小だと汎用的に実装できるのだろうか…とかですかね。
主スケールのときに1対1ドットとは、基準となるカメラのscaleで原寸画像で表示できるサイズにすべき、ということでしょうか?
省1
376(1): 2020/05/07(木)00:20 ID:5v92ATly(1) AAS
>>373
一番無難なのは、画像アセットの「ユニットごとのピクセル数」を設定する方法かな。
377: 2020/05/07(木)01:19 ID:kT1fPxaV(1) AAS
>>376
SpriteModeのPixel Per Unit の項目ですかね。うろ覚えになって以降意識の外にあったので調べ直してみます。
378: 2020/05/07(木)11:15 ID:dcpSlS2D(1) AAS
>>375
ドット絵と思い込んでましたので、そうでない、拡大にも耐えられる絵なら、主スケールは忘れてください。失礼しました。
379(1): 2020/05/07(木)16:07 ID:VHUNtNMf(1) AAS
マルチってどういう意味ですか?
380: くまじょ 2020/05/07(木)18:45 ID:x1GQ3H70(1) AAS
>>379
複数
掲示板などでは嫌われる行為
回答を速く得るために多数の掲示板に書き込む
そういう人はどれかひとつの掲示板に回答があれば他の掲示板住民のことは無視するというかどこに書き込んだか覚えてもいない
自己解決すればすべての回答を放置する確率が高い
最初に説明をすれば許されることがある
省1
381(3): 2020/05/08(金)10:10 ID:UflBmPCI(1/4) AAS
>>349
質問させて下さい。
ターン制バトルのRPGなどで敵ABCが居たとして、
それぞれの攻撃の処理にモーションを含めて1秒ずつかかるとします。
Aの攻撃が終わったらBの攻撃〜とする時にコルーチンなどで1秒毎に行動させる方法が思い浮かびます。
しかし、ゲームを作っているうちにAのモーションは2秒かかるという状況もでてくると思います。
その場合はAの行動が終わった事をフラグにして、アップデート関数でif(A行動済み==true)という風に作るのでしょうか?
省4
382: 2020/05/08(金)10:11 ID:UflBmPCI(2/4) AAS
すみません、予測変換で謎のアンカーがついてしまいました・・・。
383: 2020/05/08(金)10:28 ID:vnSLXTuW(1/4) AAS
>>381
いろんな作り方があるので間違いじゃないです。
384(1): 2020/05/08(金)10:33 ID:vnSLXTuW(2/4) AAS
>>381
敵ににスクリプトが付いていて、呼び出して行動させるなら、戻り値で対応するべきかと思います。
385: 2020/05/08(金)11:21 ID:UflBmPCI(3/4) AAS
>>384
回答ありがとうございます!
引数の使い方を最近やっと覚えたばかりで戻り値というアイデアはありませんでした。
フラグの管理に便利そうですね!
質問の仕方が冗長だったのですが、
メソッドの終了をトリガーにメソッドをスタートさせる事は出来るか(またそれは簡単か)
ターン制のゲームの処理をアップデートで管理するのは普通の事か(RPGに限らずシュミレーション等で敵の移動が完了したら〜など)
省3
386(1): 2020/05/08(金)11:45 ID:vnSLXTuW(3/4) AAS
私なら、ターン制ならupdateは使わない方向で作るかな。全て一元管理が基本(私見)だし。
387(1): 2020/05/08(金)13:25 ID:UflBmPCI(4/4) AAS
>>386
ありがとうございます!参考にさせて頂きます。
プログラミングの基礎的な事はだんだん出来るようになってきたのですが、ゲーム作りは計算結果を瞬時に表示すれば良いわけじゃないので難しいですね。
388(1): 2020/05/08(金)14:20 ID:vnSLXTuW(4/4) AAS
>>387
敵キャラ毎のローカルでupdateを使うこともあります。例えば敵キャラの待機中のアニメのコントロールなどメインに関係のない動作処理で、もちろんメインからの指示があればキャンセルして動作する仕様です。
switch などで条件分け。
389: 2020/05/08(金)15:36 ID:9WCysDW4(1/3) AAS
横から失礼します
>>388
普通のリアルタイムゲームで
敵が例えばしばらく右に動くって場合
毎フレームごとにメインクラスのアップデートから敵クラスの関数(右に動く)を呼び出すカンジで
組むということでしょうか?
メインクラスで基本すべてのオブジェクトを管理するみたいなことでしょうか?
390: 2020/05/08(金)15:46 ID:9WCysDW4(2/3) AAS
>>戻り値で対応する
このテクニックおしえてほしいですm(_ _)m
391(2): 2020/05/08(金)16:53 ID:J8P/XUJn(1/2) AAS
ButtonコンポーネントのOn Click() は
右下の + を何回も押せば複数設定できますが、
複数の On Click() を設定した場合、上から順番に実行されるのでしょうか?
それともランダムでどれかから実行されるのでしょうか?
392(1): 2020/05/08(金)18:03 ID:iGwLiiUh(1/2) AAS
>>381
DOTweenであれば、
.OnCompleteがアニメーションが終わったら実行されるコールバックなので、
この中に続いて行いたい処理を書くのはどうでしょうか。
393(1): 2020/05/08(金)18:05 ID:iGwLiiUh(2/2) AAS
>>391
試しに作ってみて呼び出し先でDebug.Logで適当な文字を出力すれば動作がわかると思います。
わかったらおしえてください。
394: 2020/05/08(金)18:09 ID:9WCysDW4(3/3) AAS
>>392
DOTween聞いたことない言葉でわからないですがこれから
調べてみようと思います
レスありがとうございます!
395: 391 2020/05/08(金)18:47 ID:J8P/XUJn(2/2) AAS
>>393
どうもありがとうございます。
On Click() を10個設定して実行したら必ず上から順番に実行されました。
ありがとうございます。
396(1): 2020/05/08(金)23:56 ID:94Epi6HC(1) AAS
PUN2を使用して1つのオブジェクトを複数人で同時に操作することは可能ですか?
所有権が絡むので無理なのかな…
ターン制のゲームを作ろうとしてまして、自分のターンが終了したら「完了」ボタンを押して
次のプレイヤーに所有権を譲渡という処理が現実的ですか?
このとき完了ボタンの所有権も合わせて譲渡なのかな?
考えはあってもコードがスラスラ書けないので
参考になるサイトなどあれば教えてください。
397(1): 2020/05/09(土)15:07 ID:WHLIySq3(1/2) AAS
関数が実行される回数を数えて5の倍数の時に特別な処理を行うようにしたいのですが、
どのようにすればいいのか教えてください。
398: 2020/05/09(土)15:15 ID:sZmYha8S(1) AAS
% 演算子 でぐぐりなされ。
399: 2020/05/09(土)15:16 ID:7KZIr97V(1) AAS
世界のナベアツに教わるべき
400: 2020/05/09(土)15:52 ID:TAHw/Xve(1/2) AAS
実際例題でナベアツのとこもあるしな
401: 2020/05/09(土)15:58 ID:jO2sL26f(1) AAS
3の倍数のときだけアホになる処理を行います
402: 397 2020/05/09(土)16:00 ID:WHLIySq3(2/2) AAS
解決できました。
ありがとうございます!
上下前次1-新書関写板覧索設栞歴
あと 600 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.026s