[過去ログ]
【ゲームエンジン】Unity初心者質問スレBuild1 (1002レス)
【ゲームエンジン】Unity初心者質問スレBuild1 http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
945: 名前は開発中のものです。 [] 2019/03/01(金) 00:14:26.79 ID:i9oiQn3T 自分は単純に"オブジェクトA"の"AlphaScript"に「false」を伝えたいのですが、 GameObject.FindObjectOfType< AlphaScript >().SetCanvasGroupEnable( null, false ); ではスクリプト自体がnullになってしまう。でもその代わりを知らない。 そもそもCanvasGroup canvasGroup,自体はいじる必要が無い。 この後の bool enable をfalseにしたいだけなのに、 Ascript.SetCanvasGroupEnable(ここ,false); ここに何か入れなきゃならないようです。falseだけにしたら SetCanvasGroupEnableがアカンって怒られるし...この場合、どういった記入を したら良いのでしょう? http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/945
946: 名前は開発中のものです。 [] 2019/03/01(金) 00:16:51.48 ID:G4Yjf+DM canvasGroupはGameObject.FindObjectOfType< CanvasGroup >()で取ってこれないのか http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/946
947: 名前は開発中のものです。 [sage] 2019/03/01(金) 00:40:29.88 ID:UQFOqO10 嘘は教えるなよ http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/947
948: 名前は開発中のものです。 [] 2019/03/01(金) 00:40:56.10 ID:i9oiQn3T >>946 様 有難うございます。オブジェクトMainに MainGameObject.FindObjectOfType<CanvasGroup>().alpha = 0;と書いた所 Gameシーン上で透過されるのを確認しました。 しかし、勿論これは良いのですが、AlphaScriptはなんの働きもしてませんよね? 後々いじるのに便利そうなので、使ってみたいのです。となると、単純な疑問が 浮かんできます A public void SetCanvasGroupEnable(CanvasGroup canvasGroup, bool enable) このスクリプトAに対し B FindObjectOfType<AlphaScript>().SetCanvasGroupEnable(num,false);FindObjectOfType<AlphaScript>().SetCanvasGroupEnable(「ここ」,false); Bの「ここ」は、何と書いたらVSに怒られず通るのでしょうか。 http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/948
949: 名前は開発中のものです。 [] 2019/03/01(金) 00:43:39.75 ID:i9oiQn3T >>948 の訂正 すみません、ミスしたので訂正させて下さい >>946 様 有難うございます。オブジェクトMainに MainGameObject.FindObjectOfType<CanvasGroup>().alpha = 0;と書いた所 Gameシーン上で透過されるのを確認しました。 しかし、勿論これは良いのですが、AlphaScriptはなんの働きもしてませんよね? 後々いじるのに便利そうなので、使ってみたいのです。となると、単純な疑問が 浮かんできます A public void SetCanvasGroupEnable(CanvasGroup canvasGroup, bool enable) このスクリプトAに対し B FindObjectOfType<AlphaScript>().SetCanvasGroupEnable(「ここ」,false); Bの「ここ」は、何と書いたらVSに怒られず通るのでしょうか。 http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/949
950: 名前は開発中のものです。 [sage] 2019/03/01(金) 00:54:38.03 ID:4ad34hTY https://i.imgur.com/JgScrW8.gifv http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/950
951: 名前は開発中のものです。 [sage] 2019/03/01(金) 01:20:38.12 ID:moEN5l8p >>949 「ここ」には、CanvasG roup型を入れる。 いやー参った。こんな型宣言して使ったことなかったから調べるだけでも精一杯w まぁ知らなくても3Dのシューティング作れたしw とりあえず動いたので多分あってるんじゃないかなぁ、間違ってたらすまん。 http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/951
952: 名前は開発中のものです。 [] 2019/03/01(金) 01:53:36.21 ID:i9oiQn3T >>950 様 最後の行 my_script.SetCanvasGroupEnable(hoge); がVSに認識されませんでした が、自分のスクリプトに入れただけなのでミスがあるかもしれません。 後日新しいスクリプトファイルで勉強させて頂きます。有難うございました! >>951 様 SetCanvasGroupEnable(CanvasGroup, false); ではVSに怒られてしまいました。しかしそちらで動いているのならば、 こっちがおかしいのだと思います。わざわざ遅い時間まで有難うございました! >>こんな型宣言して使ったことなかったから調べるだけでも精一杯 この言葉がありがたかったです。それにより「なぜそんな二度手間をする?」 の意味がわかった気もします。 そして>>941 様 有難うございました http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/952
953: 名前は開発中のものです。 [] 2019/03/01(金) 07:07:08.86 ID:i9oiQn3T >>950様 新規csファイルで確認しましたが、VSは通してくれたものの、Unityはnullエラーを 返してきましたので報告させていただきます。以下は自分の解釈を付けたものです //A_アクセスされる側のcs.目的は自身のアルファ値を0か1にする事だけに絞ってます public class NewBehaviourScript : MonoBehaviour { private CanvasGroup canvasGroup; void Start () { canvasGroup = GetComponent<CanvasGroup>(); } public void SetCanvasGroupEnable(bool enable)//変数"enable"をbool値(省略ではtrue)で作成 //>>950さんは(「ここ」,false);が解らないなら最初から設定すんなって事を言ってるのだと解釈。 { if (enable)//enable==turueであれば //以下の処理 { canvasGroup.alpha = 1; } else//そうでなければ //以下の処理 { canvasGroup.alpha = 0; } } } ---------------- http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/953
954: 名前は開発中のものです。 [] 2019/03/01(金) 07:09:12.88 ID:i9oiQn3T ---------------- //B_アクセスする側のcs public class NewBehaviourScript1 : MonoBehaviour { public bool hoge = false;//bool値 hoge にfalseを代入 private NewBehaviourScript my_script;//my_scriptにNewBehaviourScript.csの"形"を代入。宣言?でいいのかな void Start () { my_script = GetComponent<NewBehaviourScript>();//my_scriptにNewBehaviourScriptクラスをを代入 //以下↓のようにmy_script.SetCanvasGroupEnable();と言うようにアクセスする事が出来る } void Update () { my_script.SetCanvasGroupEnable(hoge);//hoge==false のはず...しかしここでnullエラーを返される } } と言った結果でした。 とりあえずC#の教本は買おうと思います http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/954
955: 名前は開発中のものです。 [sage] 2019/03/01(金) 16:57:57.50 ID:o5fzsr2k https://i.imgur.com/smoGpxp.png 単純にこう書き直せば出来るんやが、 受け手のメソッドで勝手にやってくれた方が便利な訳だから こうすると https://i.imgur.com/yVRgjts.png こうなる https://i.imgur.com/6g4Wr63.gifv http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/955
956: 名前は開発中のものです。 [sage] 2019/03/01(金) 17:27:14.40 ID:rYfVntGw >>954 ちな、最後にnullエラーと書いてるけど、合ってる? alpha値でエラー出てるとかじゃないよね? http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/956
957: 名前は開発中のものです。 [sage] 2019/03/01(金) 23:29:01.01 ID:ad2Mn0me おまいら受け渡しの型くらいあ合わせろ!てかここはおら弟子が楽しむためのスレなんだからな! http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/957
958: 名前は開発中のものです。 [sage] 2019/03/02(土) 01:10:51.03 ID:IiwWR++Q >>955 >>956 様 どうもわざわざすみません今レス見たもので 調べさせて頂きます。結果等はまた書き込みさせて頂きます http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/958
959: 名前は開発中のものです。 [] 2019/03/02(土) 06:49:41.94 ID:IiwWR++Q >>956 様 前回>>953 用意した物 ・スプライトから作った"オブジェクトA" ・UI_Image で作成した"Canvas".中には画像確認用にImageから画像を読み込んだオブジェクト これにCanvasGroupコンポーネントを入れて、alpha値が正常に動くのを確認 オブジェクトA・・・NewBehaviourScript1(アクセスする側)"Hogeにチェック" Canvas・・・NewBehaviourScript(アクセスされる側)をアタッチ 実行→ NullReferenceException: Object reference not set to an instance of an object NewBehaviourScript1.Update () (at Assets/NewBehaviourScript1.cs:20) 箇所は void Update() { my_script.SetCanvasGroupEnable(hoge); } 今回>>955 用意した物 NewBehaviourScript NewBehaviourScript1・・・それぞれ>>955 yVRgjts.png に書き換えたもの 前回に続き"Canvas"・・・NewBehaviourScript1(アクセスする側) 動画を参考に前回の"オブジェクトA"は削除。"canvas2"を作成してそこにButtonを配置。 これにNewBehaviourScript(アクセスされる側)をアタッチ。ターゲットは"Canvas" こちらは何度か失敗しましたが、自分のソースミスが原因だと解り修正後動作しました! >>953はレスが頂けるとは思わず「ちゃんと聞いてるぞ!」という姿勢を見せたつもりだった のですが、そのせいで余計な手間をかかせてしまって本当申し訳ありません。 動画まで用意して頂いて...しかしその動画が実に参考になりました。有難うございます http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/959
960: 名前は開発中のものです。 [] 2019/03/02(土) 07:03:39.92 ID:IiwWR++Q >>926 >>929 様 自分はあなたのレスに悪意を感じたが為>>930のような態度を取ってしまいました しかし今回の件で「まさかそこまでの初心者が来る訳無いだろう」という 考えもあると気付いたつもりです。まだ完全に理解は出来てませんが、他の方が言う 様に答えを提示されて下さったのだと思います。申し訳ありませんでした http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/960
961: 名前は開発中のものです。 [sage] 2019/03/02(土) 07:24:02.08 ID:9Col7dyh >>960 そもそものきっかけはあなたの「ソースは理解してる」 あなたが理解してるのはソースじゃなくて結果だけ コピペしてきたソースを理解していたら簡潔なレスでも問題点を理解できていた http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/961
962: 名前は開発中のものです。 [] 2019/03/02(土) 07:53:34.48 ID:IiwWR++Q ここからは談笑で行きませんか 自分はしょぼい程度ですがFlashのActionScriptを今まで使ってたんですよ だからUnityのC#を見た時、どういう処理をしているのかはだいたい理解出来た でもFlashとUnityのアプリの作り方はまるで違う様に感じました 多分C#よりもUnityの仕組みの方が理解できてないのだと思うけど...どうでしょうか そういった感覚で初心者用教本を1冊読み終え、まずは自作したFlash作品をUnityに 移植しようと思って制作してたのですが...ここで質問してまるで話が通じない! 初心者スレで初心者が質問しているのに皆が皆でよってたかって質問で返して来る http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/962
963: 名前は開発中のものです。 [sage] 2019/03/02(土) 07:55:36.89 ID:9NeG1AvL GetComponentはthis.GetComponentだから自分自身からしか探せないんやが 外部にアタッチされたコンポーネントは>955みたいな書き方になる これはチュートリアルのインターミディエイト/エキスパートで順次出来てきた筈 薮蛇だから何も言わないけど相手の理解力からレベルはほぼ一瞬全てバレるので あまり無駄な事はしない方がいいよ http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/963
964: 名前は開発中のものです。 [sage] 2019/03/02(土) 08:06:57.39 ID:IiwWR++Q またsage忘れてしまった Unity初心者の自分から見たら皆さん中級者以上ですよ テンプレには初心者が初心者に答えるスレって書いてあるのに ここではある程度理解していないと嘲笑のネタになるのだと感じたワケです 教えてくれない、逆に試される。初心者からしたらそういう態度取られるのは 「この人達、教えてくれないのになんでここにいるの?」て思いますよ 勿論教えて厨的な初心者もいますから、千引きは難しい所だと思いますけどね。 http://mevius.5ch.net/test/read.cgi/gamedev/1528249519/964
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 38 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.023s