3Dゲームエンジン「Unity」のスレです。
Windows/Mac用。JavaScript/C#といった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはAround、iPhone/iPod Touch/iPad、Mac、PC、Web、WiiU、3DS、Xbox360、PlayStation 3他
次スレは>>970を踏んだ方が建てること。
ダメなら>>980か>>990が建てて下さい。
●公式
http://unity3d.com/unity/
●Unity 2ch Wiki
http://www24.atwiki.jp/unity2ch/
■質問スレ
【3Dゲームエンジン】Unity質問スレッド30
http://mevius.2ch.net/test/read.cgi/gamedev/1492037553/
※前スレ
【3Dゲームエンジン】Unity総合スレッド30
http://mevius.2ch.net/test/read.cgi/gamedev/1500412168/
【3Dゲームエンジン】Unity総合スレッド31 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2017/08/27(日) 22:02:58.18ID:tyoB1q05
564名前は開発中のものです。
2017/12/13(水) 13:57:03.18ID:13aaDdoz そりゃ、ゲームツクールじゃないしな。
昔DirectX使って3D空間にグリッドとキューブ並べてマウスによる矩形選択と空間上を自由に飛び回れるようにするテストアプリだけで勉強始めてからちゃんと動くのに1ヶ月ぐらいかかったの思い出したわ
昔DirectX使って3D空間にグリッドとキューブ並べてマウスによる矩形選択と空間上を自由に飛び回れるようにするテストアプリだけで勉強始めてからちゃんと動くのに1ヶ月ぐらいかかったの思い出したわ
565名前は開発中のものです。
2017/12/13(水) 13:58:42.37ID:AzO2qXOd566名前は開発中のものです。
2017/12/13(水) 14:02:45.77ID:AzO2qXOd >>563
今だから話せる話し。
unityが登場したばかりの時は、嘘だろ…素人でも簡単に3Dゲームが作れる時代になっただと?
と正直危機感があった。
でも実際に触ってみて、あーこれなら大丈夫だわ素人には無理だわって安心したゲームスクール出身者の俺ガイル
こちとら高い授業料払って毎日真面目に通ったんですからー!
今だから話せる話し。
unityが登場したばかりの時は、嘘だろ…素人でも簡単に3Dゲームが作れる時代になっただと?
と正直危機感があった。
でも実際に触ってみて、あーこれなら大丈夫だわ素人には無理だわって安心したゲームスクール出身者の俺ガイル
こちとら高い授業料払って毎日真面目に通ったんですからー!
567名前は開発中のものです。
2017/12/13(水) 14:02:50.22ID:iYhTOS0U 2チャンネラーはunityだと簡単に作れると言ったりunityでも簡単には作れないと言ったり、
詐欺師とドリームキラーだらけですね
詐欺師とドリームキラーだらけですね
568名前は開発中のものです。
2017/12/13(水) 14:06:51.27ID:Kw9TLxi6 >>566
デスヨネーw
デスヨネーw
569名前は開発中のものです。
2017/12/13(水) 14:09:27.42ID:pxi8q7+M 米AmazonでUnity本探したら5冊くらいしかなくて噴いたw
570名前は開発中のものです。
2017/12/13(水) 14:16:13.28ID:iYhTOS0U 嘘つけ。ものすごい沢山有るだろ。
571名前は開発中のものです。
2017/12/13(水) 14:19:26.63ID:MTWm+6P3 本じゃなく海外のネット上で学び、より現実的なソフトウェアとしての動作ができるようになって <-ここまで数年
実はそこからがスタートだからな。単なるプログラムをユーザーにゲームとして認めてもらえるまでのノウハウは本にもネットにも書かれていない
実はそこからがスタートだからな。単なるプログラムをユーザーにゲームとして認めてもらえるまでのノウハウは本にもネットにも書かれていない
572名前は開発中のものです。
2017/12/13(水) 14:21:31.24ID:pxi8q7+M unity game developmentにしたら関係ないのが消えて一杯出て来たw
573名前は開発中のものです。
2017/12/13(水) 15:13:23.08ID:cK9jhuci >>556
そうでもないかな。
低レベルが増えると当然低レベルの質問が押し寄せる。基本無料だから、低レベルは多いっしょ?
するとそうじゃない人へのサービスか悪くなるよね。
この辺りは課金の人優先とか中で采配してると思うから、英文のままとかあり得るのかなぁと。
そうでもないかな。
低レベルが増えると当然低レベルの質問が押し寄せる。基本無料だから、低レベルは多いっしょ?
するとそうじゃない人へのサービスか悪くなるよね。
この辺りは課金の人優先とか中で采配してると思うから、英文のままとかあり得るのかなぁと。
574名前は開発中のものです。
2017/12/13(水) 15:53:43.96ID:zxxOpkOe 花火みたいにパッと散る低レベルはカウントに入らないでしょう
575名前は開発中のものです。
2017/12/13(水) 16:19:53.62ID:L2chAliP でもまあ、初心者大歓迎の雰囲気だけは維持してもらいたいな
俺もいずれアセット作家に転身するかもしれないし・・・・
俺もいずれアセット作家に転身するかもしれないし・・・・
576名前は開発中のものです。
2017/12/13(水) 18:13:18.04ID:IotT1rVx 低レベルはさっさと淘汰されて
まあハイレベルな質問や話題はここでは答えられないからスルーされるが
まあハイレベルな質問や話題はここでは答えられないからスルーされるが
577名前は開発中のものです。
2017/12/13(水) 19:02:57.42ID:MTWm+6P3 日本語化への期待は諦めた方がいい。もしくは初めから国産のゲームエディタだけを選択肢にすればいい
別にunityだから面白いゲームが作れるってわけじゃないから
別にunityだから面白いゲームが作れるってわけじゃないから
578名前は開発中のものです。
2017/12/13(水) 21:26:26.12ID:FxVJbGXK >>573
基本無料じゃないゲームエンジンなんて今時ほぼないから無料かどうかは関係ないし
unityがどんな質問にでも答えるサービスでも提供してるならともかく低レベルな質問が多くてもunityのサービスは変わらないだろうし
むしろ自力でゲームを作れない利用者が増えればアセットの売り上げは増えてunityもアセット開発者もサービス向上を目指せるようになる
基本無料じゃないゲームエンジンなんて今時ほぼないから無料かどうかは関係ないし
unityがどんな質問にでも答えるサービスでも提供してるならともかく低レベルな質問が多くてもunityのサービスは変わらないだろうし
むしろ自力でゲームを作れない利用者が増えればアセットの売り上げは増えてunityもアセット開発者もサービス向上を目指せるようになる
579名前は開発中のものです。
2017/12/13(水) 21:37:09.12ID:Kxr7McTA >>578
低レベルがすくなけりゃね。
おおくなりゃ、その事務対応から何から増えるわけで、人が増えりゃ万々歳なんて、まして無料で大挙してやってこられたらそれだけでお手上げ。
英訳放置っぽいのもそれの現れかもな。
まぁ、そうなるまえにunity運営が考えるだろうけど。
低レベルがすくなけりゃね。
おおくなりゃ、その事務対応から何から増えるわけで、人が増えりゃ万々歳なんて、まして無料で大挙してやってこられたらそれだけでお手上げ。
英訳放置っぽいのもそれの現れかもな。
まぁ、そうなるまえにunity運営が考えるだろうけど。
580名前は開発中のものです。
2017/12/13(水) 22:44:23.31ID:KuRaW49r 英語圏人口は、もっとずっと多いんだから、
ローカライズを向上したら運営がお手上げとか、
ローカルの運営の無能ぶりの証左にしかならんぞ
無能なのは薄々わかってたけどなwww
ローカライズを向上したら運営がお手上げとか、
ローカルの運営の無能ぶりの証左にしかならんぞ
無能なのは薄々わかってたけどなwww
581名前は開発中のものです。
2017/12/13(水) 22:48:25.54ID:izje/xLX 日本語でおk
582名前は開発中のものです。
2017/12/13(水) 22:52:53.93ID:aZfamG33 ローカライズは、翻訳より、翻訳したあとのメンテが大変だからな
バージョンアップするたびに仕事が増える
大企業も細かいとこまではやりたがらないよ
バージョンアップするたびに仕事が増える
大企業も細かいとこまではやりたがらないよ
583名前は開発中のものです。
2017/12/14(木) 00:02:04.17ID:9tWShtdo584名前は開発中のものです。
2017/12/14(木) 06:59:47.03ID:VUBDIldN シェアが増えるとユーザーのレベルに差が出るのは必然的だからな。
それが無くなるってのはUnity の衰退を意味する訳で、この法則も理解できてないってのは見ていて辛いね。
数が多いことの恩恵は少ない時よりも多いんだわ。
でも一部の人間は恩恵は無意識に甘受しながらその副産物である小さな弊害にばかり噛みつく。
そういう残念な人間には出来るだけなって欲しく無い。
それが無くなるってのはUnity の衰退を意味する訳で、この法則も理解できてないってのは見ていて辛いね。
数が多いことの恩恵は少ない時よりも多いんだわ。
でも一部の人間は恩恵は無意識に甘受しながらその副産物である小さな弊害にばかり噛みつく。
そういう残念な人間には出来るだけなって欲しく無い。
585名前は開発中のものです。
2017/12/14(木) 08:29:24.60ID:fpuqjDVR どうせすぐそういう奴しかいなくなるんだよなあ
586名前は開発中のものです。
2017/12/14(木) 08:53:18.29ID:0RQxom0C レベルの低い奴をターゲットにしたカテゴリは他にあるんだよな
それこそ小学生をターゲットにしてるものもある
もちろんそれはゲームエンジンと呼べる代物ではないけど
それこそ小学生をターゲットにしてるものもある
もちろんそれはゲームエンジンと呼べる代物ではないけど
587名前は開発中のものです。
2017/12/14(木) 09:40:23.89ID:mxsyfVB4 寄生虫の分際でお前らも宿主チューチューしてんだろ?とか
ドヤ顔でいわれましても、普通皆自立してるからね
ドヤ顔でいわれましても、普通皆自立してるからね
588名前は開発中のものです。
2017/12/14(木) 09:44:11.75ID:bpRztYYt >>583
ゲームもunityも課金の有無と技術の巧拙は全く関係ないしオンゲと同一視すること自体が的外れ過ぎる
アセットは初心者向けの物もあるしむしろ技術がある人ほど買う価値がなくなっていくだろう
万が一初心者全員が売り上げに全く寄与しなかったとして上級者にとっては一切マイナスにはならない
それにオンゲこそ無課金がいないと成り立たない
課金者のみプレイ可能で全員いいアイテム持ってるゲームとかクソゲーの極み
ゲームもunityも課金の有無と技術の巧拙は全く関係ないしオンゲと同一視すること自体が的外れ過ぎる
アセットは初心者向けの物もあるしむしろ技術がある人ほど買う価値がなくなっていくだろう
万が一初心者全員が売り上げに全く寄与しなかったとして上級者にとっては一切マイナスにはならない
それにオンゲこそ無課金がいないと成り立たない
課金者のみプレイ可能で全員いいアイテム持ってるゲームとかクソゲーの極み
589名前は開発中のものです。
2017/12/14(木) 13:55:39.39ID:qZ99LNdG 高卒大国ニッポンらしいわ
590名前は開発中のものです。
2017/12/14(木) 15:57:19.86ID:UIHENBZT まあまあ、皆さん落ち着いて
アセットを購入すればみんなハッピーになれますよ
アセットを購入すればみんなハッピーになれますよ
591名前は開発中のものです。
2017/12/14(木) 16:09:28.02ID:pC0gV8nN >1
いまボール転がしの英語チュートリアル動画見てるが、
無数にあるプログラム言語からぽんぽんと必要なものを置いていく時点で
絶対に初心者に教える気ねえよなこいつら
初心者ってのはプログラム言語すら知らないからこそ、
UNITYでどうにか出来ないかと訪れてるわけで、
そこへ「知ってて当たり前」あるいは「あとで全部マスターしろ」って前提で
チュートリアルをどんどん進めていくのはバカだと思う
ズブの素人でも欲しい機能がどこにあるかを見つけやすいように
ウィザード形式で作れるように導くのがこの手のツールの仕事だろうに。
これじゃプログラマー用の補助ソフトじゃねえか
いまボール転がしの英語チュートリアル動画見てるが、
無数にあるプログラム言語からぽんぽんと必要なものを置いていく時点で
絶対に初心者に教える気ねえよなこいつら
初心者ってのはプログラム言語すら知らないからこそ、
UNITYでどうにか出来ないかと訪れてるわけで、
そこへ「知ってて当たり前」あるいは「あとで全部マスターしろ」って前提で
チュートリアルをどんどん進めていくのはバカだと思う
ズブの素人でも欲しい機能がどこにあるかを見つけやすいように
ウィザード形式で作れるように導くのがこの手のツールの仕事だろうに。
これじゃプログラマー用の補助ソフトじゃねえか
592名前は開発中のものです。
2017/12/14(木) 16:20:23.68ID:UIHENBZT >>591
アセットを買えばいいですよ
アセットを買えばいいですよ
593名前は開発中のものです。
2017/12/14(木) 16:21:03.55ID:pC0gV8nN たとえばしれっとStart関数内にrb = GetComponent<RigidBody>();とか書いてるけども、
これが処理速度をあげるためのもの(だよな?よく知らんが)であることを説明しないとダメじゃん。
そもそも初心者用チュートリアルでまだこんなの使う必要ない。そういうところからしてダメ
「仕事のプロ」が必ずしも「教えるプロ」にはなれない典型
これが処理速度をあげるためのもの(だよな?よく知らんが)であることを説明しないとダメじゃん。
そもそも初心者用チュートリアルでまだこんなの使う必要ない。そういうところからしてダメ
「仕事のプロ」が必ずしも「教えるプロ」にはなれない典型
594名前は開発中のものです。
2017/12/14(木) 16:21:31.14ID:knImhvvX お前の勝手な願望とリアルは違うって事だよw
595名前は開発中のものです。
2017/12/14(木) 16:33:17.08ID:On7lkIBu596名前は開発中のものです。
2017/12/14(木) 16:38:41.68ID:/q2rzebX >>591
別にUnityはズブの素人でもゲームが簡単に作れますよって事は唄ってないと思うけど
別にUnityはズブの素人でもゲームが簡単に作れますよって事は唄ってないと思うけど
597名前は開発中のものです。
2017/12/14(木) 16:45:41.85ID:On7lkIBu 話しをぶった切るが
色々細かい事気にせず作れるようになってて優秀な開発環境だなと思い
他の環境だと繊細に気を遣わないといけなような事も気にせず3ヶ月ガンガン進めて来ていたが
ついにイベントサイクルの関係で、実行してくれない物が出てきたわ
@→A→B、という流れになるようにコード書いてるのに
実際は@→B→A、みたいになり期待した結果にならない感じ
具体的には
「親Object(AScript)→子Object(BScript)→孫Object(CScript)」という構成のプレハブを
リソースからInstantiateしたと同時に、親Object(AScript)から孫Object(CScript)のpublic関数を呼び出し
その関数内で孫に対する色々な初期化やってるんだが
Visible類の初期化がうまくいかないわ
おそらくコード上のInstantiateを実行した段階では、実際にまだフィールドにはPrefabが生成されていなくて
先に親Object(AScript)から孫Object(CScript)のpublic関数の処理が、生成されていないPrefabのvisible系に対し
実行されてるから変化しないんだと憶測している。
やっぱりこの手のタイミング部分はUnity信用しきってやらず
今まで通り気を遣ってプログラミングするべきだったのね・・・( ^ω^)
大きくやり方変えないといけなくなったチクショウ!・・・orz
色々細かい事気にせず作れるようになってて優秀な開発環境だなと思い
他の環境だと繊細に気を遣わないといけなような事も気にせず3ヶ月ガンガン進めて来ていたが
ついにイベントサイクルの関係で、実行してくれない物が出てきたわ
@→A→B、という流れになるようにコード書いてるのに
実際は@→B→A、みたいになり期待した結果にならない感じ
具体的には
「親Object(AScript)→子Object(BScript)→孫Object(CScript)」という構成のプレハブを
リソースからInstantiateしたと同時に、親Object(AScript)から孫Object(CScript)のpublic関数を呼び出し
その関数内で孫に対する色々な初期化やってるんだが
Visible類の初期化がうまくいかないわ
おそらくコード上のInstantiateを実行した段階では、実際にまだフィールドにはPrefabが生成されていなくて
先に親Object(AScript)から孫Object(CScript)のpublic関数の処理が、生成されていないPrefabのvisible系に対し
実行されてるから変化しないんだと憶測している。
やっぱりこの手のタイミング部分はUnity信用しきってやらず
今まで通り気を遣ってプログラミングするべきだったのね・・・( ^ω^)
大きくやり方変えないといけなくなったチクショウ!・・・orz
598名前は開発中のものです。
2017/12/14(木) 16:53:58.16ID:mHno5vPA 変だと思ったら即デバッグが正解
599名前は開発中のものです。
2017/12/14(木) 16:54:13.98ID:+skae71K ミドルウェアってのは慣用的な処理を担ってくれるってだけでプログラミングすら出来ないトーシローが触るもんじゃないだろ
そういう人は素直にツクールシリーズ使ってなよ
そういう人は素直にツクールシリーズ使ってなよ
600名前は開発中のものです。
2017/12/14(木) 17:25:54.24ID:fpuqjDVR >これじゃプログラマー用の補助ソフトじゃねえか
一発で本質見抜いてて笑うしかない
一発で本質見抜いてて笑うしかない
601名前は開発中のものです。
2017/12/14(木) 17:28:22.49ID:0RQxom0C UnityにしろUE4にしろ、使うのに少なくともDirectXとかOpenGLの経験は必要だろ
何甘えたこと言ってんだよ
素人が手を出して簡単にゲームつくれるようなもんじゃねーから
何甘えたこと言ってんだよ
素人が手を出して簡単にゲームつくれるようなもんじゃねーから
602名前は開発中のものです。
2017/12/14(木) 17:31:26.26ID:+skae71K まあぶっちゃけプログラミング出来なくてもゲーム作る方法があって、その中でも一番いい方法あるぞ
それはズバリ金を与えて他人にゲームを作らせることだ
こんな楽勝ゲーないだろ?
それはズバリ金を与えて他人にゲームを作らせることだ
こんな楽勝ゲーないだろ?
603名前は開発中のものです。
2017/12/14(木) 17:32:06.39ID:UIHENBZT アセットを買えばプログラムも知識もいりませんけどね
604名前は開発中のものです。
2017/12/14(木) 17:32:11.46ID:fPXWlDku 分からない点をググって調べる程度の学習意欲もなく5chに文句を書き込みに来る人間なんて優しくしてもクレーマーにしか育たないんだから
605名前は開発中のものです。
2017/12/14(木) 18:19:14.77ID:p1I9JT0+606名前は開発中のものです。
2017/12/14(木) 18:22:09.95ID:fpuqjDVR607名前は開発中のものです。
2017/12/14(木) 18:28:35.77ID:On7lkIBu 確かに金は全て解決してくれる魔法力
608名前は開発中のものです。
2017/12/14(木) 18:34:09.00ID:fPXWlDku609名前は開発中のものです。
2017/12/14(木) 18:47:23.35ID:p1I9JT0+610名前は開発中のものです。
2017/12/14(木) 18:50:27.75ID:On7lkIBu 「金だけ」では当然ダメだよw
特に今は開発と同じくらい宣伝の方にも金まわさないとさ
このゲームもTVCM出しまくってれば運命は変わってたかもよ
特に今は開発と同じくらい宣伝の方にも金まわさないとさ
このゲームもTVCM出しまくってれば運命は変わってたかもよ
611名前は開発中のものです。
2017/12/14(木) 19:00:22.67ID:mHno5vPA 56億ぽっちじゃなぁ・・・
400人雇うとか無計画過ぎるし大味な人だったんじゃね?
400人雇うとか無計画過ぎるし大味な人だったんじゃね?
612名前は開発中のものです。
2017/12/14(木) 19:06:34.50ID:On7lkIBu うみょー直った
初心に帰り単純な方法思いついて試したら直った
今回また1つ学べたわ
Instantiate()で生成した物を、直後にGameObject.Find()で見つけ出そうする処理は気を付けた方がいい
staticではないpublicなりグローバルなりに参照格納してそっちから扱った方がトラブルなくてよさげ
初心に帰り単純な方法思いついて試したら直った
今回また1つ学べたわ
Instantiate()で生成した物を、直後にGameObject.Find()で見つけ出そうする処理は気を付けた方がいい
staticではないpublicなりグローバルなりに参照格納してそっちから扱った方がトラブルなくてよさげ
613名前は開発中のものです。
2017/12/14(木) 19:07:04.95ID:TmZDkWZX ローカライズって翻訳だけじゃないからなあ
614名前は開発中のものです。
2017/12/14(木) 19:08:46.71ID:TmZDkWZX >>612
コルーチンで1フレーム待てよ
コルーチンで1フレーム待てよ
615名前は開発中のものです。
2017/12/14(木) 19:09:32.05ID:On7lkIBu というような事がちらほらあるから
全くの初心者には無理でしょうというお話し
色々経験していないと原因追及と回避できるわけがない
全くの初心者には無理でしょうというお話し
色々経験していないと原因追及と回避できるわけがない
616名前は開発中のものです。
2017/12/14(木) 19:13:48.60ID:On7lkIBu617名前は開発中のものです。
2017/12/14(木) 19:16:40.03ID:UIHENBZT 完成プロジェクトアセットを購入すればプログラムは不要ですよ
618名前は開発中のものです。
2017/12/14(木) 19:20:13.25ID:/q2rzebX619名前は開発中のものです。
2017/12/14(木) 19:22:20.31ID:fpuqjDVR620名前は開発中のものです。
2017/12/14(木) 19:25:05.29ID:qp9QOnez 何というか、複製して起動したら勝手に設定とかxmlロードするように出来んの?
621名前は開発中のものです。
2017/12/14(木) 20:37:03.92ID:VUBDIldN どんなスポーツでもそれなりに楽しめるには理解して慣れる時間が必要だからなー
ゲーム制作もそれと同じだと思うが
あと誰でも簡単に出来てしまう事に、人は価値を見出ださないっていう事もあるわけだからな
ゲーム制作もそれと同じだと思うが
あと誰でも簡単に出来てしまう事に、人は価値を見出ださないっていう事もあるわけだからな
622名前は開発中のものです。
2017/12/14(木) 21:45:30.27ID:qZ99LNdG 誰でも出来ることならそれこそね、時給1000円出して高卒を連れてくれば良いんだから
623名前は開発中のものです。
2017/12/14(木) 22:04:42.30ID:0RQxom0C ことゲーム開発に関しては何故かずぶの素人も俺でも出来るかもって根拠のない期待感持っちゃうよね
624名前は開発中のものです。
2017/12/14(木) 22:28:37.68ID:mPqkXT+P 勉強さえすれば誰でもできる
625名前は開発中のものです。
2017/12/14(木) 23:45:13.38ID:On7lkIBu >>618
原因わかった今ならすっきりだが検証中は原因究明に本当に苦戦したよ
簡単にまとめると次のような処理
void func(){
@
for(〜){
Destoryでステージ上の全落ちてるアイテムを一旦削除
}
A
for(〜){
Instantiateで新しいアイテムをフィールドにばら撒く
}
B
for(〜){
新しくばら撒いたアイテムの中にあるスクリプトをGameObject.Findで呼び出しながら
アイテムを初期化していく
}
}
この処理がうまく機能していなかった。
原因は
・@のDestoryはvoid func(){}が終了しないと実際にゲームオブジェクトは削除されていない。
・AのInstantiateも@と同じくこの時点で完了していないようだった
・結果Bでの検索はAで生成されたものではなく@で削除予定だったものが参照されていた
これで新しいアイテムは全部正しく初期化されてなかった。
ゲームオブジェクト名でアイテムを識別して
GameObject.Findの検索に使ってるという不幸も重なってのバグ
原因わかった今ならすっきりだが検証中は原因究明に本当に苦戦したよ
簡単にまとめると次のような処理
void func(){
@
for(〜){
Destoryでステージ上の全落ちてるアイテムを一旦削除
}
A
for(〜){
Instantiateで新しいアイテムをフィールドにばら撒く
}
B
for(〜){
新しくばら撒いたアイテムの中にあるスクリプトをGameObject.Findで呼び出しながら
アイテムを初期化していく
}
}
この処理がうまく機能していなかった。
原因は
・@のDestoryはvoid func(){}が終了しないと実際にゲームオブジェクトは削除されていない。
・AのInstantiateも@と同じくこの時点で完了していないようだった
・結果Bでの検索はAで生成されたものではなく@で削除予定だったものが参照されていた
これで新しいアイテムは全部正しく初期化されてなかった。
ゲームオブジェクト名でアイテムを識別して
GameObject.Findの検索に使ってるという不幸も重なってのバグ
626名前は開発中のものです。
2017/12/14(木) 23:49:28.76ID:UIHENBZT 有料アセットで勉強いらず
627名前は開発中のものです。
2017/12/14(木) 23:49:50.26ID:On7lkIBu 上の処理は
@→A→B
の予定で動くはずなのに
実際には
B→@→A
みたいに動くわけよ
次からは気を付けるぞーっと
@→A→B
の予定で動くはずなのに
実際には
B→@→A
みたいに動くわけよ
次からは気を付けるぞーっと
628名前は開発中のものです。
2017/12/14(木) 23:52:18.21ID:N8/aZDnG ぶっちゃけゲームを制作するなんて実際にやってみるに越したことはない プログラムがダメでも普通に日本製のRPGツクールやウディタやアクエディも有るしわざわざUnityでやる必要もないしなー‥
沢山の人に見てもらうならともかく配信サイトとか大量だし環境は整っていると思うんだけどもね
沢山の人に見てもらうならともかく配信サイトとか大量だし環境は整っていると思うんだけどもね
629名前は開発中のものです。
2017/12/15(金) 00:14:58.24ID:RKufAXlJ その通り
考えるより行動
行動しない奴は一生無理
考えるより行動
行動しない奴は一生無理
630名前は開発中のものです。
2017/12/15(金) 01:04:40.44ID:cZlrc8Ac 後、制作することの何処かが楽しい、と思えるならゲーム制作にかぎらず創作は向いているだろうなぁ すべての過程が辛いと考えるならば辛いけど無理そうだとしか言えない
631名前は開発中のものです。
2017/12/15(金) 01:06:45.28ID:SnxYHSnm >>627
それってgetcomponentの後の行に取得済み前提のコード書くとたまに「ありましぇん」エラーが出ちゃうのもそれか>順序不定
でIfでゲットできてるの確認してから取得前提のコードを実行するようにすればおkという
Unityはきまぐれなのかな
それってgetcomponentの後の行に取得済み前提のコード書くとたまに「ありましぇん」エラーが出ちゃうのもそれか>順序不定
でIfでゲットできてるの確認してから取得前提のコードを実行するようにすればおkという
Unityはきまぐれなのかな
632名前は開発中のものです。
2017/12/15(金) 02:26:58.18ID:ZeNW5Loz script Execution Orderを使えばいい
順序を設定しなければ予定されてもいない予定通りにプログラムが動かないのは当たり前
気まぐれなのはunityじゃなく動くかわからないプログラムを作る人間
順序を設定しなければ予定されてもいない予定通りにプログラムが動かないのは当たり前
気まぐれなのはunityじゃなく動くかわからないプログラムを作る人間
633名前は開発中のものです。
2017/12/15(金) 02:36:10.08ID:isaWg6wg Script Execution Orderに依存する作りなんてクソだろ
634名前は開発中のものです。
2017/12/15(金) 11:38:03.18ID:GfHyeVdP 順序不定っていうけどdestoryとinstantiateがどういう動作を行うものかを理解してないだけじゃ?
unity初級の内容だと思うけどリファレンスに明記されてなかったっけ?
unity初級の内容だと思うけどリファレンスに明記されてなかったっけ?
635名前は開発中のものです。
2017/12/15(金) 12:15:42.13ID:KHDtIX5X リアルタイムゲーだけど、そこまで苦労した覚えないなぁ。そこを考えずにヤラレタたら消す、押されたら連産とかしてるが。
636名前は開発中のものです。
2017/12/15(金) 12:29:33.28ID:bl7EbMaM octane来るみたいだけどどうなん?
637名前は開発中のものです。
2017/12/15(金) 12:52:57.40ID:SsN/OcfA ですとろーい
Actual object destruction is always delayed until after the current Update loop,
but will always be done before rendering.
実際のオブジェクト破壊はいつも遅れる、現在のUpdateループの後まで
しかしいつもレンダリングの前には終わる
Actual object destruction is always delayed until after the current Update loop,
but will always be done before rendering.
実際のオブジェクト破壊はいつも遅れる、現在のUpdateループの後まで
しかしいつもレンダリングの前には終わる
638名前は開発中のものです。
2017/12/15(金) 14:01:12.76ID:7hJ7rjh+639名前は開発中のものです。
2017/12/15(金) 14:01:21.76ID:H2gZStUL640名前は開発中のものです。
2017/12/15(金) 14:22:56.16ID:bO73tzHJ >>631
気まぐれというよりは見落としがちな仕様の1つって感じかな?
他の不親切な開発環境だと、マニュアルの車運転んしてるみたいに最初からその辺り注意して作るが
Unityは変に親切設計でオートマ車みたいな感じなのもあり
意識しないで作れるようになってるから俺には落とし穴だった。
その割には詳しく説明してるサイトは少ない気がした。
>>634
漠然とは明記されてたようだよw漠然とね >>637
説明みてても初心者向きではないわなw
>>637
サンクス!
この説明分に俺なりの補足いれると
こうなる
↓
実際のオブジェクト破壊は瞬時には行われません。
Destoryを記述した同一フレームのUpdateの最期に実行されます。
この動きはinstantiateも同じです。
よってFindでオブジェクトを検索する時は注意してください。
Findは同一フレームのUpdateの最初に実行されます。
Start()でinstantiateした場合Findを使用しても検索できない事になります。
気まぐれというよりは見落としがちな仕様の1つって感じかな?
他の不親切な開発環境だと、マニュアルの車運転んしてるみたいに最初からその辺り注意して作るが
Unityは変に親切設計でオートマ車みたいな感じなのもあり
意識しないで作れるようになってるから俺には落とし穴だった。
その割には詳しく説明してるサイトは少ない気がした。
>>634
漠然とは明記されてたようだよw漠然とね >>637
説明みてても初心者向きではないわなw
>>637
サンクス!
この説明分に俺なりの補足いれると
こうなる
↓
実際のオブジェクト破壊は瞬時には行われません。
Destoryを記述した同一フレームのUpdateの最期に実行されます。
この動きはinstantiateも同じです。
よってFindでオブジェクトを検索する時は注意してください。
Findは同一フレームのUpdateの最初に実行されます。
Start()でinstantiateした場合Findを使用しても検索できない事になります。
641名前は開発中のものです。
2017/12/15(金) 15:15:47.33ID:oUFFIJn/ >>640
そもそもGameObject.Find()に依存した作りはお勧めしない
Destroyに関しては一応DestroyImmediateという即時削除メソッドが定義されているが、エディタ拡張を作る目的以外の使用は推奨されない
素直にDestroyを呼んで待つべき
Instantiateに関しては、Instantiateを実行した時点でインスタンスは存在する。ただしこれがヒエラルキーツリーに組み込まれるまでに遅延がある
よって生成されたオブジェクトを即時初期化したい場合にはInstantiateの戻り値に対して操作を行うと良い
また更に、AwakeやStartの処理が終わっていないオブジェクトのメソッドの呼び出しは推奨されない
Awakeでの参照関係の解決やStartによる初期化が終わっていないと正しく動作しない可能性があるから
プレハブ内で完結する操作ならInstantiateの戻り値に対して行えばいいが、それ以外は1フレーム待つのがいいと思う
そもそもGameObject.Find()に依存した作りはお勧めしない
Destroyに関しては一応DestroyImmediateという即時削除メソッドが定義されているが、エディタ拡張を作る目的以外の使用は推奨されない
素直にDestroyを呼んで待つべき
Instantiateに関しては、Instantiateを実行した時点でインスタンスは存在する。ただしこれがヒエラルキーツリーに組み込まれるまでに遅延がある
よって生成されたオブジェクトを即時初期化したい場合にはInstantiateの戻り値に対して操作を行うと良い
また更に、AwakeやStartの処理が終わっていないオブジェクトのメソッドの呼び出しは推奨されない
Awakeでの参照関係の解決やStartによる初期化が終わっていないと正しく動作しない可能性があるから
プレハブ内で完結する操作ならInstantiateの戻り値に対して行えばいいが、それ以外は1フレーム待つのがいいと思う
642名前は開発中のものです。
2017/12/15(金) 15:20:26.78ID:GfHyeVdP >>640
オブジェクトの生成破棄は時間かかる処理だからupdateの中でやられちゃ困る
だからフラグだけ立てて処理を次に回すような処理を取ってる
どこまでを初級者とするかってところはあるけども日本語で解説してる記事なんか山ほどある
scriptでオブジェクトの生成破棄を操作するならよく引っかかる内容
コレが初級者向けじゃないってなると、初級者は自分でscriptをほとんど使わずに組み上げるレベルになるね
オブジェクトの生成破棄は時間かかる処理だからupdateの中でやられちゃ困る
だからフラグだけ立てて処理を次に回すような処理を取ってる
どこまでを初級者とするかってところはあるけども日本語で解説してる記事なんか山ほどある
scriptでオブジェクトの生成破棄を操作するならよく引っかかる内容
コレが初級者向けじゃないってなると、初級者は自分でscriptをほとんど使わずに組み上げるレベルになるね
643名前は開発中のものです。
2017/12/15(金) 15:41:36.02ID:DzxyY709 アセットを購入すれば初級者も簡単!
UNITYサイコーですね!
UNITYサイコーですね!
644名前は開発中のものです。
2017/12/15(金) 16:18:25.78ID:ZhbSlRFS ドラクエXみたいなMMOを簡単につくれるアセットありますか?
645名前は開発中のものです。
2017/12/15(金) 16:40:10.63ID:bO73tzHJ >>641
まさにおっしゃりとおり
ちなみに
>そもそもGameObject.Find()に依存した作りはお勧めしない
これも当然承知の上で物は使い様でケースバイケースで使ってる
例えば俺の場合ステージ移管の時の初期化はFindが多い。
Updateみたいに毎フレーム呼び出すような頻繁にやるものではないため処理速度を要求していないのと
変数に格納してメモリー圧迫したくないという点からFindの方が向いてるわけよ。
その場限りの使い捨てみたいな感じの場所でFindは重宝してる。
俺の場合ね。
まさにおっしゃりとおり
ちなみに
>そもそもGameObject.Find()に依存した作りはお勧めしない
これも当然承知の上で物は使い様でケースバイケースで使ってる
例えば俺の場合ステージ移管の時の初期化はFindが多い。
Updateみたいに毎フレーム呼び出すような頻繁にやるものではないため処理速度を要求していないのと
変数に格納してメモリー圧迫したくないという点からFindの方が向いてるわけよ。
その場限りの使い捨てみたいな感じの場所でFindは重宝してる。
俺の場合ね。
646名前は開発中のものです。
2017/12/15(金) 16:52:10.28ID:bO73tzHJ >>642
そうそうまさに初心者の定義は人によるから何とも言い難いところだわな。
フラグ立てて非同期っぽく遅延処理かけるやり方は結構制御に気をつかうので
中級者レベルかな〜と勝手に思ってる。
なんとなくネットワークプログラムのタイムアウト処理とか
外部ファイルの非同期読み込み処理に似てるものがあるしね。
初心者には結構難しい所だとおもうわけよ。
俺が最初そうだったからさwあくまで俺基準だけどなw
そうそうまさに初心者の定義は人によるから何とも言い難いところだわな。
フラグ立てて非同期っぽく遅延処理かけるやり方は結構制御に気をつかうので
中級者レベルかな〜と勝手に思ってる。
なんとなくネットワークプログラムのタイムアウト処理とか
外部ファイルの非同期読み込み処理に似てるものがあるしね。
初心者には結構難しい所だとおもうわけよ。
俺が最初そうだったからさwあくまで俺基準だけどなw
647名前は開発中のものです。
2017/12/15(金) 17:15:47.42ID:GfHyeVdP >>646
まぁ人それぞれだけどプログラムとして見れば非同期処理となると中級なのかもしれん
が、俺はunityを使う上では初級だと思うよ
scriptでオブジェクト生成破棄を扱うなら前提知識になるわけだし
対応策は色々あってその対応方法によっては中級とかに値するかも知れんが
それはその方法が中級なのであって知識は初級だと思う、ってことね
まぁ人それぞれだけどプログラムとして見れば非同期処理となると中級なのかもしれん
が、俺はunityを使う上では初級だと思うよ
scriptでオブジェクト生成破棄を扱うなら前提知識になるわけだし
対応策は色々あってその対応方法によっては中級とかに値するかも知れんが
それはその方法が中級なのであって知識は初級だと思う、ってことね
648名前は開発中のものです。
2017/12/15(金) 17:49:04.73ID:3n3Olf7j Unityはまだこれからなんだけど、他のプログラムの作りから考えるとオブジェクトのデータはModelにあって、GameObjectは単にそのビューとして生成、表示、消滅が行われるべきって感じがするけど間違ってる?
649名前は開発中のものです。
2017/12/15(金) 18:05:03.18ID:isaWg6wg UnityはModelもViewもControllerもGameObjectだよ
650名前は開発中のものです。
2017/12/15(金) 18:05:06.82ID:bqplhpp6 >>639
マジかよ
マジかよ
651名前は開発中のものです。
2017/12/15(金) 18:08:36.33ID:VAIxtI2p コンポーネント指向だからMVCとかない
652名前は開発中のものです。
2017/12/15(金) 18:13:55.80ID:3n3Olf7j >>649
だから分離したほうがいいんじゃって話なんだが。
だから分離したほうがいいんじゃって話なんだが。
653名前は開発中のものです。
2017/12/15(金) 18:32:56.28ID:isaWg6wg Modelの挙動自体がフレーム単位にしかしようがないんだからGameObjectから分離してそこまでメリットがあるかなあ
654名前は開発中のものです。
2017/12/15(金) 21:00:03.54ID:o5X2W6SU >>646
へえ、Unityのアクター階層への動的登録には、そういう問題があるんだな。シェア、サンクス
もっとも自前エンジンでアクターやタスク要素の登録管理基盤までスクラッチする場合でも、当然ついて回る問題だが。
安定動作のために(FixedUpdateを?)1フレーム待つべし、という書き込みがあるが、本当に1フレームで良いのかな
へえ、Unityのアクター階層への動的登録には、そういう問題があるんだな。シェア、サンクス
もっとも自前エンジンでアクターやタスク要素の登録管理基盤までスクラッチする場合でも、当然ついて回る問題だが。
安定動作のために(FixedUpdateを?)1フレーム待つべし、という書き込みがあるが、本当に1フレームで良いのかな
655名前は開発中のものです。
2017/12/15(金) 21:30:45.47ID:UNIt6IER UnityにMVC持ち込んだら破門するわ
656名前は開発中のものです。
2017/12/15(金) 22:49:25.54ID:GfHyeVdP >>655
企業でmvcやってるとこ知ってる
ソースじっくり読んだわけじゃないから上手く行ってるかは知らんが
web上がり、ってかブラウザソシャゲでphp使ってた会社だから設計思想をそのままunityに応用したっぽい
こういうとこ多そうな気がする
企業でmvcやってるとこ知ってる
ソースじっくり読んだわけじゃないから上手く行ってるかは知らんが
web上がり、ってかブラウザソシャゲでphp使ってた会社だから設計思想をそのままunityに応用したっぽい
こういうとこ多そうな気がする
657名前は開発中のものです。
2017/12/15(金) 22:50:39.33ID:GfHyeVdP658名前は開発中のものです。
2017/12/15(金) 23:12:41.83ID:UNIt6IER >>656
発狂しそうw
発狂しそうw
659名前は開発中のものです。
2017/12/15(金) 23:20:31.26ID:bMBvfMPS UniRX入れたらどうなんの
660名前は開発中のものです。
2017/12/15(金) 23:47:50.34ID:UHM9Ls75 上の方の神クラスみたいなのとかUniRXでやったほうが楽そう
661名前は開発中のものです。
2017/12/16(土) 00:22:33.99ID:cmGLmMLb アセットを買えば簡単ですよ
662名前は開発中のものです。
2017/12/16(土) 00:36:55.77ID:WmGcpWaH663名前は開発中のものです。
2017/12/16(土) 00:45:49.02ID:zgsa9dPV Unity制作初心者です。検索して調べても知りたい内容にどうしても辿り着けないので質問させていただきます。
いま、PCゲームでどうぶつタワーバトルと落ちてくる動物以外は全く同じものを作ろうとしているのですが初歩的なところで詰まっています。
プロジェクトは2Dで作成しました。
画像を取り込んでRigibody 2DやPolygon collider2Dを使って下に落ちるようにしたんですがそれからわからなくて詰まっています。
どうぶつタワーバトルのように回転させるボタンがあって画面をクリックすると動物が落ちる(それまでは動物は画面上に固定されている)という仕様にして,動物が落下したら次の動物が出てくる。というような仕様にしたいのですがプログラムが書けなくて実現できません。
上記の解決策が思いつかないのでどうかご教授お願い致しますm(__)m
いま、PCゲームでどうぶつタワーバトルと落ちてくる動物以外は全く同じものを作ろうとしているのですが初歩的なところで詰まっています。
プロジェクトは2Dで作成しました。
画像を取り込んでRigibody 2DやPolygon collider2Dを使って下に落ちるようにしたんですがそれからわからなくて詰まっています。
どうぶつタワーバトルのように回転させるボタンがあって画面をクリックすると動物が落ちる(それまでは動物は画面上に固定されている)という仕様にして,動物が落下したら次の動物が出てくる。というような仕様にしたいのですがプログラムが書けなくて実現できません。
上記の解決策が思いつかないのでどうかご教授お願い致しますm(__)m
■ このスレッドは過去ログ倉庫に格納されています
