[過去ログ]
【3Dゲームエンジン】Unity質問スレッド29 [無断転載禁止]©2ch.net (1002レス)
【3Dゲームエンジン】Unity質問スレッド29 [無断転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
10: 名無し@キムチ [] 2017/05/21(日) 23:10:15.42 ID:VnLVHVoX 2つのカメラをアクティブをオン、オフにして切り替えているんですが、シーンを2つつくったあたりから、切り替えがどうも上手く働かなくなりました。 シーン2では全然働かなくなって、シーン1でもシーン1から同じシーン1に切り替えてやっと働く始末です。 シーンが1つしかないときは上手くいってたのに、一体これは何が原因なのでしょうか?またどうすればうまく切り替わるようになりますか? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/10
30: 名無し@キムチ [] 2017/05/23(火) 06:04:06.15 ID:IlAarJy7 >>53 オブジェクトの名前を変えるだけでよかったのですが、同じスクリプトを2つ作ったのは、用心のためです。 シーン1用のスクリプトとシーン2用のスクリプトをつくって、中身はほとんど同じです。 ただ2つのシーンの名前が干渉しないように、オブジェクトの名前だけは変えてあります。 あくまでも用心のため。こういうやり方って下手くそでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/30
50: 名前は開発中のものです。 [sage] 2017/05/23(火) 23:19:05.55 ID:uFIsh1OI 質問です。 itweenというアセットを使用しています。 http://www.pixelplacement.com/itween/index.php オブジェクトを拡大・回転など手軽にトウィーンしてくれるアセットです。 これでオブジェクトを回転させようと試みています。 普通に回転するだけなら http://doggy.hatenablog.com/entry/2016/02/15/%E3%80%90Unity%E3%80%91iTween%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9%E2%91%A1%E3%80%90%E5%85%A5%E9%96%80%E3%80%91 この辺りとかを見てRotateで特に問題なく回転できました。 iTween.RotateBy(this.gameObject, iTween.Hash("z", 1, "easeType", "linear", "loopType", "loop", "time", 1.5)); こんな感じです。 ただ、この回転はオブジェクトの中心を支点にして回転します。 その視点をオブジェクトの任意の位置から回転させることはできないのでしょうか? いろいろ調べましたが、なかなかそういうサイトが見つからず… ご存知の方、お教えくださいませ! http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/50
79: 名前は開発中のものです。 [sage] 2017/05/25(木) 23:53:22.74 ID:tAq9dlle hogeオブジェクトのz軸を参照して、プレハブを生成したいのですが、 ↓では参照出来ません。 float zzzz = hoge.Transform.position.z; ググリながら色々試したのですが、検索力が足りないのか、どれもうまくいきません。 どのようにすれば良いのでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/79
124: 名無し@キムチ [] 2017/05/28(日) 14:37:19.00 ID:QNw63hQc 初歩的な質問で恥ずかしいですが、 Altを押しながらマウスをスクロールすると、 以前は画面が回転していたのですが、 いつの間にか平行にスクロールするだけになってしまいました。 どこかヘンなところでもいじったのでしょうか? 復旧できずに困っています。 どなたかご教授お願いいたします!! http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/124
212: 名前は開発中のものです。 [] 2017/06/04(日) 20:16:13.95 ID:eVSMmeDS class A { public int i = 1; public enum EnumA{ element1, element2, } EnumA enumA; public A (EnumA arg){ enumA = arg; print (enumA); } } void Start (){ print (A.EnumA.element1); //print (A.i); エラー A[] listA = new A[10]; for (int i = 0; i < listA.Length; i++) { listA [i] = new A (A.EnumA.element1); } } 別のクラスへアクセスするにはそのクラスのインスタンスが必要だと思うんですが、 この場合、int iとenumAにアクセスできないのはわかるんですが、 なぜEnumAだけアクセス可能なんでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/212
253: 名前は開発中のものです。 [sage] 2017/06/10(土) 22:02:47.63 ID:XgQ//yG2 素人同然の質問で恐縮ですが、UnityのSortingGroupのsortingOrderをスクリプトで設定する方法がわかる方教えてください。 SpriteRendererみたいに、GetComponentできないで困ってます。 http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/253
273: 名前は開発中のものです。 [] 2017/06/13(火) 04:32:10.63 ID:AdsyBo0X 質問させてください unityで蛇行した川をポリゴンで作り、プレイヤーがその川に入っている時にバシャバシャという水の跳ねる音をつけたいのですがうまくいきません 自分はmeshコライダーのトリガーを使って判定しようとしましたが、これだと川が蛇行しているので全頂点を内包する長方形の当たり判定が作られてしまい 見た目では川に入っていないのに判定が取られてしまいます。 透明なボックスコライダーなどを複数組み合わせてそれっぽくするしかないんでしょうか・・・ 上記の実装に関して何かアドバイスを頂けたら幸いです http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/273
279: 名前は開発中のものです。 [sage] 2017/06/13(火) 12:18:39.62 ID:79OY4RFV >>278 いやボックスコライダに当たったらそこで初めてメッシュ古来だでの評価したいってことだが。 http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/279
312: 名前は開発中のものです。 [] 2017/06/14(水) 07:15:07.65 ID:haEDSL54 public static class GameObjectExtensions { public static void transformM(this Transform t){ 処理 } } void Start () { gameObject.transformM (gameObject.GetComponent<Transform>()); } このコードだとエラーになるんですが、Transform型の引数ってどうやって渡せばいいんですか? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/312
322: 名無し@キムチ [] 2017/06/14(水) 20:41:49.68 ID:1f23pPXc これが主人公につけた当方のスタート関数です。 // Use this for initialization void Start() { ・・・長すぎるため省略・・・ MainCam = GameObject.Find("MainCamera(2)"); SubCam = GameObject.Find("Camera(2)"); animator1 = GetComponent<Animator>(); audioSources = GetComponents<AudioSource>(); sound01 = audioSources[0]; sound02 = audioSources[1]; sound03 = audioSources[2]; sound04 = audioSources[3]; sound05 = audioSources[4]; //sound06 = audioSources[5]; particle = GetComponent<ParticleSystem>(); MainCam.SetActive(false); SubCam.SetActive(true); InfoBox.SetActive(false); ・・・長すぎるため省略・・・ } この関数 InfoBox.SetActive(false);のところまでしか処理されません。 それはsound06 = audioSources[5];を消しているからで、 この//sound06 = audioSources[5];をつけるとInfoBox.SetActive(false);も処理されなくなってしまいます。 行数にすると24行目までしか処理されないようです。 Unityの規約にスタート関数は24行までという規約でもあるのですか? 当方理由がわからず途方にくれています。 よろしくお願いします。 http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/322
389: 名前は開発中のものです。 [sage] 2017/06/16(金) 22:00:19.70 ID:OyCZvXKK あらかじめインスペクタでアタッチするのと、AwakeとかでFind&GetCommentのとではどっちが効率いいんだろう http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/389
424: 名前は開発中のものです。 [sage] 2017/06/18(日) 10:23:18.25 ID:XAVbtWpl >>418 ケースバイケース君と俺は別人だが俺が書いた>>379から派生してグダッてるみたいなので基本方針を示しておく 1. Findは基本的に使用禁止 文字列引数による検索は実行時エラーの温床となるので避けるべき、インスペクタ上でオブジェクトの名前を変えられただけでコケるとか怖すぎる またヒエラルキーツリーを全部舐める様な処理を多用するのはパフォーマンス的にも好ましくない 2.インスペクタ上で参照がセットされていることを前提にした構造は可能な限り避ける シーンファイルを誤って変更された時に、インスペクタ上で探して修正するのは面倒。特にシーン内のオブジェクトが複雑に絡み合った参照関係を持つなどは論外 もしどうしてもこれが避けられない場合はオブジェクトをプレハブ化してプレハブ内での参照に限定することで問題のスコープを小さく保つ 上記ルールに沿って作れないならそれは設計が悪いので設計を見直す、疎結合を徹底するべし 必要ならCamera.mainなどの様なstatic経由での参照の受け渡しや、シングルトンなマネージャークラスの導入を検討する ※多用は厳禁、後者はScript Execution Orderを正しく設定すること ヒエラルキーツリーやインスペクタでの変更に弱いコードはメンテナンス性が低く、こうした変更による問題が発生した場合の問題箇所の検出が非常に困難になるので避ける様にするといい http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/424
426: 名前は開発中のものです。 [sage] 2017/06/18(日) 11:22:37.04 ID:YW1VLQdX これ間違ってるね >1. Findは基本的に使用禁止 名前で判断するのが一番メンテナンスしやすいので普通によく使われる バグってもそれを上回る使い安さ。だから使用禁止にしてる企業なんかない むしろ命名規則の徹底の方が大切。名前書き間違えるとか池沼に弄らせない限り起きません。 池沼はゲーム作っちゃダメ。以上、終わり http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/426
439: 名前は開発中のものです。 [sage] 2017/06/18(日) 14:08:17.74 ID:M/2QAqjI スクリプトアタッチやインスペクタの設定をエディタ拡張で 自動化してる俺には関係が無かった http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/439
441: 名前は開発中のものです。 [sage] 2017/06/18(日) 14:46:23.45 ID:XAVbtWpl >>432 全面的に同意、求道的すぎるのは認める ここ初心者多いから>>426みたいなクソ開発者になるなという意味を込めて厳しめに書いた リスクを理解した上で使うならともかく、安易に便利だからで多用すると一気にコードが糞になるからなぁ >>439 あるある、ついでにエディタ上で触らせる必要がなく親子関係が確定してるオブジェクトなんかはhideFlagsも立てたりする http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/441
466: 名前は開発中のものです。 [sage] 2017/06/18(日) 20:31:46.17 ID:Ga9T3hxB >>462 そう、その「複雑な参照関係はエディタ拡張スクリプトで自動化しておく」方法を知りたいんです 自分の状況を書いておくと、 1. 最初はインスペクタでドラッグ&ドロップで参照設定していた 2. UIとか配置オブジェクトが1シーンに数十個とかになってくると、さすがにポチポチは面倒… 3. Awakeで命名規則に従ってFindで設定しちゃえ 4. ランタイムではパフォーマンスが悪いし、オブジェクトのリネームに弱いと気づき、泣く泣くポチポチへ戻る で現在4の状態なので、それを自動化できるアセットなら欲しいと思ったわけです この話をしてる流れの中でUnityエディタ上でリフレクションとか使って自動設定するのかなとか考えたけど 運用考えると破綻しそうなので、すでにバリバリ実用してそうな>>441とかに参考コードのおこぼれでももらおうと思ったわけです やっぱりそんなものはないのか、ポチポチ業務へ戻りますかね… http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/466
526: 名前は開発中のものです。 [sage] 2017/06/20(火) 19:52:18.25 ID:hl3V7Wt6 キムチー なんとなく興味で聞くんだけど キムチって年いくつだい? あとどんなゲーム作ろうとしてるの? ま、気が向いたら教えてくれ http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/526
602: 名前は開発中のものです。 [sage] 2017/06/22(木) 23:41:22.63 ID:nL8eDWtt アセットって結局のところミドルウェアだからな ミドルウェアだけで作られた作品はゲーム作りではなくただの積み木 http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/602
694: 名前は開発中のものです。 [] 2017/06/26(月) 07:30:26.45 ID:Y3CMaUBy dammy = FindObjectOfType(typeof(Dammy)); dammy = FindObjectOfType<Dammy>; この()と<>の違いってなんですか http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/694
737: 名前は開発中のものです。 [sage] 2017/06/28(水) 01:05:13.75 ID:zwaBbdH9 スクリプトからMechanimのレイヤーごと、あるいはステートごとに アニメーションのスピードを変更したいのですが、どうすればいいですかね? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/737
865: 名前は開発中のものです。 [sage] 2017/07/02(日) 23:08:49.31 ID:dVwEafn/ Cubeで作った床の上をSphereを回転させて移動させたいと考えています。 Spehgeにtransform.Rotateを使用して回転させているのですが、 床の上を空回りするだけで移動してくれません おそらくRotateはオブジェクトの角度を変えるだけで 物理的に回転をしているわけではないのかなと考えています もしSphereのような球体を回転させながら摩擦によって床の上を転がしたい場合は どのような方法が可能でしょうか もし何かアドバイスありましたら教えてください、、 http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/865
924: 名前は開発中のものです。 [sage] 2017/07/09(日) 14:23:28.77 ID:A5Iz9vIl オブジェクトを色々弄っていたらいつの間にかシーンビューがおかしくなっていました ズームしようとすると大きすぎてオブジェクトを通り過ぎてしまいます どうやったら元に戻せますか? http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/924
931: 遊園地 ◆ExGQrDul2E [sage] 2017/07/10(月) 13:59:03.95 ID:OMkiwFdi 解決しました。 古いグラフィックボードを搭載している為にエラーです。 私は2種類のグラフィックボードの購入を検討しています。 ユニティーを動作させるのに、下記の2つから選ぶなら、どちらが適切なのでしょうか? MSI NVIDIA GeForce GT710搭載 GDDR3 2GB グラフィックスボード VD5931 GT710 2GD3H LP 玄人志向 ビデオカードGEFORCE GT 710搭載 ロープロファイル 空冷FAN GF-GT710-E2GB/LP なお、私が使用しているPCは64bitですが、古いです。 もしくは、物理エンジンをOFFにするべきでしょうか? 回答をお願いします。 http://mevius.5ch.net/test/read.cgi/gamedev/1495286462/931
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.061s