■ このスレッドは過去ログ倉庫に格納されています
【3Dゲームエンジン】Unity質問スレッド21
- 300 :名前は開発中のものです。:2015/11/30(月) 19:44:06.39 ID:ax7RzpnH.net
- Resume で再開じゃないの
- 301 :名前は開発中のものです。:2015/11/30(月) 20:36:40.57 ID:BEie15Xx.net
- >>300
なにか勘違いしてました・・・
SetDestinationは新しい経路を設定するものであって
リスタートはResumeだったんですね。
解決しました、ありがとうございました。
- 302 :名前は開発中のものです。:2015/11/30(月) 23:10:22.56 ID:/q5gMwyv.net
- 5.2に更新してからスクリプトからフォグ設定してandroidの実機にインストールした場合、フォグが表示されないです…pcでは表示されているので呼び出し方法は間違っていないとは思うのですが…対処方法が分かる方がいれば教えていただけると助かります。
- 303 :名前は開発中のものです。:2015/11/30(月) 23:49:01.51 ID:kBOeE3Lt.net
- ビルドセッティングのところで、低クオリティーな設定がされてるんじゃないの?
- 304 :名前は開発中のものです。:2015/12/01(火) 01:53:00.48 ID:dma6ySGz.net
- Unity5でAIThirdPersonControllerを配置して指定位置まで走らせようとすると
斜面で挙動がおかしくなります。
キャラクターが手を挙げて硬直した態勢のまま滑り下りて行ってしまいます。
NaviMeshは斜面のところにも正常に設定されています。
- 305 :名前は開発中のものです。:2015/12/01(火) 02:09:53.22 ID:G1dVTeUZ.net
- proにしたんだけどlevel11ってどうやって使うの?
- 306 :名前は開発中のものです。:2015/12/01(火) 02:13:12.10 ID:dma6ySGz.net
- >>304ですがコライダーや剛体のせいではなく
sphereなどを剛体を設定して配置すると斜面に沿って正常に転がります。
- 307 :名前は開発中のものです。:2015/12/01(火) 02:30:11.44 ID:lyHrr4Dm.net
- ゲームでよくある、敵、見方のアニメーションや動作が止まっている状態で
カメラだけがイベント場所まで動いていき、地形が変わる。
バイオ4のように、アタッシュケースを開いている時やお宝を確認している時に
ゲーム状態だけが止まる
などの処理をしたい場合、Time.timeScale=0としてしまうと処理できないとおもうのですが、
なにかいい方法はありませんでしょうか?
- 308 :名前は開発中のものです。:2015/12/01(火) 02:37:23.35 ID:dma6ySGz.net
- >>304です
どうやらTerrainで作られた斜面があると挙動がおかしくなるようです
FirstPersonControllerであればキーボード操作で正常にTerrain上を移動できるのですが
AIThirdPersonControllerにTerrain上を歩かせようとすると>>304の動作になってしまいます。
- 309 :名前は開発中のものです。:2015/12/01(火) 09:05:20.90 ID:cpAKRRPM.net
- >>305
AssetStoreの右側のLeve11アイコンで割引販売ページに行けるよ
あとAssetStoreウインドウの上部人物アイコンの所に11って書いてあるハズ
- 310 :名前は開発中のものです。:2015/12/01(火) 18:24:15.78 ID:opoQWdVA.net
- プレハブから生成したオブジェクトを
他ソースのGameObjectに格納する良い方法ない?
結構困ってる
- 311 :名前は開発中のものです。:2015/12/01(火) 19:00:06.08 ID:AEkGpHpL.net
- >>307
必要な時にはunscaledDeltaTimeとか使えば?
http://docs.unity3d.com/ScriptReference/Time-unscaledDeltaTime.html
- 312 :名前は開発中のものです。:2015/12/01(火) 19:17:45.30 ID:opoQWdVA.net
- プレハブから動的に生成したオブジェクトを
他ソースのGameObjectに読み込ませるする良い方法ありませんか?
結構困ってます
- 313 :名前は開発中のものです。:2015/12/01(火) 19:23:31.12 ID:+bqWhFqv.net
- prefabの何をGameObjectに読み込ませたいの?
prefabのインスタンスってコンポーネントじゃなくGameObjectだから、SetParentして好きなところに置くのが関の山では。
読み込ませたい側から参照させたいならpublicなフィールド作って代入するだけだし
コンポーネントだけ拾ってつけたいならGetComponentしてAddComponentするだけ
- 314 :312:2015/12/01(火) 19:50:46.80 ID:opoQWdVA.net
- >>313
プレハブ内のGameObjectをソース内のGameObjectに読み込ませたいです
プレハブのGameObjectにいれたソースや
プレハブのを生成したオブジェクトでもなく
第三者のソースで生成したオブジェクトのGameObjectを読み込む方法を知りたいです
GameObject.Find(
- 315 :312:2015/12/01(火) 19:53:02.53 ID:opoQWdVA.net
- >>313
プレハブ内のGameObjectをソース内のGameObjectに読み込ませたいです
プレハブのGameObjectにいれたソースや
プレハブのを生成したオブジェクトでもなく
第三者のソースで生成したオブジェクトのGameObjectを読み込む方法を知りたいです
GameObject.Find() を使って1つは格納出来ましたが
複数生成させた場合、個別に選択が出来ません
宜しくお願いします
- 316 :名前は開発中のものです。:2015/12/01(火) 19:59:26.06 ID:AEkGpHpL.net
- >>315
そういうのは固有のコレ、っていう方法があるんじゃなくて
最初からそれを参照できる方法を用意しておくべきってだけなのでは。
例えば管理オブジェクトを作っておいて生成したらそこに登録するようにしておけばいいわけで。
大量にあったりする場合は個別に「自分が生成したオブジェクトはここに登録しておく」ってクラスをもってもいいけど。
- 317 :名前は開発中のものです。:2015/12/01(火) 20:01:24.58 ID:fH1D1Frt.net
- 自分用語を使われても他の人には意味がわからんよ
- 318 :名前は開発中のものです。:2015/12/01(火) 20:11:47.03 ID:+bqWhFqv.net
- 複数生成したときに.nameで個別に名前つければFindで参照できるよ
- 319 :名前は開発中のものです。:2015/12/01(火) 22:12:08.73 ID:wZXtkh9e.net
- BlackSmithや建築系のデモ見てたらUnrealに負けない絵作りできるのかと思ったんだけど
ゲームではBlackSmith級がない・・・これは何でなの?
ど素人丸出しの質問で申し訳ないです
- 320 :名前は開発中のものです。:2015/12/01(火) 22:31:23.53 ID:cpAKRRPM.net
- >>315
Instantiateの戻り値のGameObjectのnameでFindするよろし
- 321 :名前は開発中のものです。:2015/12/01(火) 22:34:27.98 ID:AEkGpHpL.net
- >>319
割と単純な話でUnityは主としてモバイル向けで使われてるから
PCでハイエンドな絵作りしたいならUE4を選べばいい訳で
ハイエンドな絵作りしたい場合当然プロジェクトも大きくなるし
エンジンのデフォルトから少し外れたこともしたくなる
それならUE4の方が全然有利。ソースコードまでいじれるし
- 322 :名前は開発中のものです。:2015/12/01(火) 22:40:19.02 ID:aZgzUlQ/.net
- 標準アセットのThirdPersonCharacterが超えられる段差の高さはどこで設定するのでしょうか?
CharacterControllerのstep Offsetにあたる設定項目が見つかりません
- 323 :名前は開発中のものです。:2015/12/01(火) 23:21:20.58 ID:xvXHyh/Z.net
- >>315
第三者の〜ってのがよくわからんなー
スクリプトA内でプレハブから生成したオブジェクト(複数)を
スクリプトBの中で使いたいってこと?
他の人が既に書いてるけど
管理し易くするため、格納用の親を予め作っておき生成したときに子に入れておけば探せる
スプリプトAでpublicの配列なりにつっこんでおけば、スプリプトAをつけてるオブジェクトのソースへアクセスすれば取れる
生成時に名前つけておけば一意にでき管理もしやすい
いろいろやりかたあるよ
- 324 :名前は開発中のものです。:2015/12/02(水) 00:24:42.43 ID:SpGbHO1Q.net
- >>321
Unityの描画の品質が劣るわけではないんですね
安心しました
- 325 :名前は開発中のものです。:2015/12/02(水) 00:43:21.17 ID:b/ubbyMj.net
- 結構凝ったフォトリアルやりたいのかな?
劣るか否かなら標準状態での絵作りに差はあるよ。Unrealが安くなって驚かれた流れ自体、そのノウハウの蓄積そのものと言って過言じゃないくらい
比較してるサイトもここやUnrealスレでちょくちょく紹介されてなかったかな。テクスチャに対する光源処理や影が素で違うのが分かる
もちろんUnityはその分モバイルでのノウハウが情報量でも実績でも先んじてるのだけども。
俺の関わってる制作ではハイポリなんか作り込めないので、そもそもレガシーの絵作りも満足なんだけどもw
あとまあどっちもシェーダ使えるんだからあとは頑張れ、で済まされる面もあるだろうなぁ
- 326 :名前は開発中のものです。:2015/12/02(水) 02:26:23.14 ID:SpGbHO1Q.net
- >テクスチャに対する光源処理や影が素で違うのが分かる
このあたりアセットストアで拡張機能を購入しても補えないものってあるんでしょうか
Unityはエディタ拡張を含めた情報量が段違いだったんで絵がどうにかなるならUnityがいいと思ってます
- 327 :名前は開発中のものです。:2015/12/02(水) 03:20:21.23 ID:0gDTzzfy.net
- >>315
GameObject.FindObjrctsOfType<>
で配列に渡せば全部取得出来ると思う。多分
- 328 :名前は開発中のものです。:2015/12/02(水) 12:57:27.87 ID:EINVToni.net
- >>307
俺がよくやってるのは止めたいオブジェクトだけ指定して止める
単に止めたい動作がUpdateなどの毎フレーム更新なら代わりにコルーチンで実装して、止めたいタイミングでコルーチンを止めればいい
ついでにこれを楽に行うとすれば止めたいオブジェクトのコンポーネントに止めたいオブジェクト共通のインターフェースを実装させればいい
あとは前スレにあった特定のインターフェースを実装したコンポーネント一覧を取得するメソッドを用意すればいい
- 329 :名前は開発中のものです。:2015/12/02(水) 13:17:43.90 ID:+pslSdHH.net
- >>326
違う=劣る
というわけじゃないのにUnityでUEの画面と同じものを作りたいなら
もうそれUE使えよとしかいえないわ
UEと同じスクリーンショットをUnityで作るのが目的じゃないなら
エンジンの出力の違いを吸収させる意味自体がないだろ
- 330 :名前は開発中のものです。:2015/12/02(水) 14:09:51.83 ID:3eY2ziOa.net
- まあUnityはこの先ジリ貧だしな。
既にモバイル系で仕事やってるならともかく、
今から勉強するなら大人しくUnrealにしておいたほうがいい。
まして今リッチな絵が欲しいというならなおさら。
- 331 :名前は開発中のものです。:2015/12/02(水) 17:26:29.29 ID:qX+nzKEH.net
- 質問させてください。
カメラから見て、マウスオーバーしたオブジェクトと同じ位置に別オブジェクトを置きたいのですが、
https://gist.github.com/Buravo46/8367810 これの// Z軸修正の箇所に
http://qiita.com/kajitack/items/799a18da3174a6af0b89 これを入れて
Vector3.Distanceで、カメラからhitオブジェクトの距離を求め、position.zとしています。
が、カメラの中央にオブジェクトがあるときは合うのですが、
カメラの端のほうのオブジェクトではズレてしまいます。
どうしたらうまくいくでしょうか?宜しくお願いします。
- 332 :331:2015/12/02(水) 17:36:17.16 ID:qX+nzKEH.net
- >>331です。
追記です。同じ位置と書きましたが、
全く同じ位置というわけではなく、(それならマウスオーバー時にpositionを同じにすればいいので)
マウスオーバーしている間はそのオブジェクトとカメラとの距離を保ったまま、
マウスに別オブジェクトを追従させたいのです。
- 333 :307:2015/12/02(水) 17:55:56.75 ID:odH9pkbh.net
- >>328
なるほど。キャラクターの移動をUpdateじゃなくて、コルーチンで実装して、
止めたいタイミングでコルーチンを止めると同時に、アニメーションは
GetComponent<Animator>().speed = 0;
で一時停止にして、空のゲームオブジェクトで時間管理させれば、
時間を止めるだけでなく、キャラごとにスピードを自在に操ることも可能ですね。
いい方法を教えていただきました、ありがとうございました。
- 334 :名前は開発中のものです。:2015/12/02(水) 18:28:00.74 ID:yyo/uO5m.net
- >>331
void Update(){
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit = new RaycastHit();
if (Physics.Raycast(ray, out hit, distance)) {
gameObject.transform.position =hit.point;
}
}
とかか?
マウスポイントからちょっとずらしたい、場合はちょっとめんどくさいかもな。
例えば右に1ずらしたければ
gameObject.transform.position =hit.point+Camera.main.transform.right;
とかでできるが。
- 335 :名前は開発中のものです。:2015/12/02(水) 19:46:12.56 ID:qX+nzKEH.net
- >>334
あああありがとうございます
できました!
なぜかScreenToWorldPointにこだわって自らややこしくしてしまってました
シンプルでいいんですね
感謝です
- 336 :名前は開発中のものです。:2015/12/03(木) 00:45:14.61 ID:0mX5g2ro.net
- 物体の回転をx軸y軸z軸で回転させるんじゃなくて、例えばtransform.upを軸にして回転させるにはどうすればいい?
つまり任意の方向を軸にして回転させたい
- 337 :名前は開発中のものです。:2015/12/03(木) 00:47:29.38 ID:RK6gpU6x.net
- >>336
transform.Rotate();
http://docs.unity3d.com/jp/current/ScriptReference/Transform.Rotate.html
Rotate()はデフォではローカルスペースで回る。リファレンスよく読みたまえよ
- 338 :名前は開発中のものです。:2015/12/03(木) 00:51:20.01 ID:RK6gpU6x.net
- >>336
完全に任意の軸で回したいなら
transform.rotation=transform.rotation*Quaternion.AngleAxis(deg,axis);
とかかな。
- 339 :名前は開発中のものです。:2015/12/03(木) 00:57:56.01 ID:IjCFo0mt.net
- >>329 >>330
たまにいるけどこういうUnityでハイエンドやってみたい人を頑なに拒む奴らって何なんだろ。
既にモバイル系以外でもUEと競合し始めてるのに。
日本しか見てないのかねえ。
- 340 :名前は開発中のものです。:2015/12/03(木) 00:59:38.69 ID:jKybS+CM.net
- エディタ拡張系の質問なのですが、
なるべくAttributeの拡張だけでInspectorの表示を整えたいのですが、
折りたたみや、MinMaxSliderのような複数の変数に関わる拡張は、
Attributeじゃできませんかね?
- 341 :名前は開発中のものです。:2015/12/03(木) 02:59:36.74 ID:JvyMPJkl.net
- Unity5.2.3のインストールしているとVisual StudioやMS net frameworkのインストール画面が出てきてインストーラー停止するんだけど
これ省けないですか?
- 342 :名前は開発中のものです。:2015/12/03(木) 03:27:45.67 ID:YLpL1k0k.net
- インストール選択したの?
- 343 :名前は開発中のものです。:2015/12/03(木) 04:39:41.21 ID:JvyMPJkl.net
- >>342
見落としてました・・・ありがとう
- 344 :名前は開発中のものです。:2015/12/03(木) 08:38:46.33 ID:HJv0Qqkj.net
- >>339
UE4さわりゃわかるがデフォルトのレンダリング性能で差がつきすぎだもん
まぁUE4でモバイルやWebプレイヤーはまだ厳しいものがあるし
ネットコードはUE4のが圧倒的に優秀だし作るゲームで使い分けるのが正義
- 345 :名前は開発中のものです。:2015/12/03(木) 08:57:24.67 ID:Cw0hiiOI.net
- レンダリング性能の差って具体的に何を指してるんだ?
- 346 :名前は開発中のものです。:2015/12/03(木) 10:20:11.31 ID:z+lZgBRH.net
- むしろレンダラに差がないと本気で思ってるならヤバイだろ
今の所両エンジンのカバー範囲は被ってないんだから作りたいものに併せて選べって話だろ
- 347 :名前は開発中のものです。:2015/12/03(木) 10:40:04.79 ID:74kRDXmT.net
- いつもながらUnrealとの比較になると
スカスカな話になるな。
- 348 :名前は開発中のものです。:2015/12/03(木) 14:32:28.38 ID:+IQa1UHT.net
- >>336
quarternionで合成ベクトルで頑張る
- 349 :名前は開発中のものです。:2015/12/03(木) 14:36:10.33 ID:X/SX/RH1.net
- 無料で利用できるBGMやSEで3Dゲームでも使えそうなものって極端に少ない気がする
オススメのサイトとかある?
- 350 :名前は開発中のものです。:2015/12/03(木) 15:04:43.04 ID:kkgGARlz.net
- ゲームグラフィックが2Dか3DかでBGMの合う合わないが変わるか?
SEは多少リアルな方が合うかもしれんが
- 351 :名前は開発中のものです。:2015/12/03(木) 15:09:53.17 ID:+IQa1UHT.net
- ファミコン風の音楽だと確かに3Dゲームには向かない感じはするね
- 352 :名前は開発中のものです。:2015/12/03(木) 17:09:11.77 ID:YLpL1k0k.net
- クラシック曲とか、意外と条件に合致するぜ
- 353 :名前は開発中のものです。:2015/12/03(木) 17:30:49.01 ID:FVAAXw7W.net
- >>349
ニコニ・コモンズ(ドメインが2chNGワードになってるっぽい)
http://commons.nico video.jp/search/tag/BGM?s=d&o=d&ld=2&sc=1
まだ本格的に探してないけど、ポテンシャルは高いんじゃないかって印象持ってる
- 354 :名前は開発中のものです。:2015/12/03(木) 19:08:48.33 ID:zV8iJfu3.net
- ゲームでは使えないし、著作権フリーでもないけどな
- 355 :名前は開発中の物です。:2015/12/03(木) 19:14:19.00 ID:FWVmqhf9.net
- unity5.2of3で2Dゲーム開発しているものです。製作しているジャンルは探索ゲーで、
プレイキャラを操作してマップを歩き回りオブジェクトを収集するような感じの作品です。
参考にmachinaliumといった同じジャンルの有名作品をプレイしたりしていて不思議に思った事があります。
2Dの場合でNPCの周りを歩き回って、オブジェクトの後ろ側に行く場合は操作キャラが背面に、
前に行く場合は前面に出るというのはどうしたら良いのでしょうか?また、ソーティングレイヤーは関係ありますか?
- 356 :名前は開発中のものです。:2015/12/03(木) 19:23:28.80 ID:gsygo5bm.net
- y座標をもとにorder in layerの値をセットすればよくね
- 357 :名前は開発中のものです。:2015/12/03(木) 20:50:44.69 ID:uuZKrhtQ.net
- 5.3でアプリ内課金が使えるようになるらしいけど、いつごろ来るんだろ
- 358 :名前は開発中のものです。:2015/12/03(木) 21:08:05.86 ID:gsygo5bm.net
- アプリ内課金自体はSoomlaで不自由ないけど、外部ライブラリ減らせるのは助かるよね
ついでにサーバサイド検証まで世話みてくれると嬉しいんだけどもw
- 359 :名前は開発中のものです。:2015/12/03(木) 21:50:13.44 ID:RzBc1rD7.net
- >>355
手段として良いかは置いておいて、Zで前後の制御はできるね
Yが上ならZを奥に、下ならZを手前に持ってくるように連動すれば
例えば縦16マスだとして、キャラなら画面上からZを1.00〜1.16の範囲に、
壁とかなら2.00〜2.16で、背景なら0.00〜0.16にという感じでYに連動させるとか
- 360 :名前は開発中のものです。:2015/12/03(木) 21:51:02.57 ID:RzBc1rD7.net
- アカン、0〜16じゃ17マスやん
- 361 :名前は開発中のものです。:2015/12/03(木) 22:18:51.09 ID:YLpL1k0k.net
- >>359
やっぱ2DでもZ軸を使っちゃうのが楽そうよね
ゲームによっては、ライトとかちょい修正が必要かもしらん
- 362 :名前は開発中のものです。:2015/12/03(木) 22:35:53.21 ID:wMT3LI/N.net
- ニコニコなんとかってとこにいる奴らのデータ使うの気持ち悪いなんとなく
- 363 :名前は開発中のものです。:2015/12/03(木) 23:57:00.86 ID:wGCZChKT.net
- >>357
一応、12月8日にリリース予定だってよ
- 364 :名前は開発中のものです。:2015/12/04(金) 00:01:01.03 ID:WI4Qgc9H.net
- 今日の俺ぼけてるわ>>359
手前のほうがZ小さいから数値逆だわな
ともかく「基準値-Y/100な」どで計算してZに突っ込めば
>>361
重なり順で真っ先に思いつくのがCSSのz-indexだったもんで
これが個人的には分かりやすいし楽な手法だわ
ライトは確かに気をつけなきゃいけないね。意識してなかったわ、ありがとう
- 365 :名前は開発中のものです。:2015/12/04(金) 00:20:21.05 ID:JhBH9r/s.net
- >>363
サンクスもうすぐだな
今作ってるやつはそれで作れそうで助かった
- 366 :名前は開発中のものです。:2015/12/04(金) 00:27:18.50 ID:9jpyH600.net
- 5.5の2D強化が楽しみだぜ
- 367 :名前は開発中のものです。:2015/12/04(金) 01:42:59.89 ID:qTSzVmde.net
- なんかエディタ上では問題なく動いてるのにWebプレイヤーやスタンドアロンでビルドすると挙動おかしくなるな
Webプレイヤーの方はGetAxisの入力が離しても0に戻らない感じで
スタンドアロンの方は一部オブジェクトが動かない
- 368 :名前は開発中のものです。:2015/12/04(金) 10:54:59.53 ID:NNnsdri/.net
- Unityはソシャゲ・ブラウザゲー用、UE4はコンシューマ・PCハイエンドゲーム用
もう完全に棲み分けが始まって両者ともこの方向性で進んでる
- 369 :名前は開発中のものです。:2015/12/04(金) 11:00:16.75 ID:519YdUSN.net
- まぁいいことだよね
- 370 :名前は開発中のものです。:2015/12/04(金) 11:27:45.35 ID:KcUV2OvH.net
- 住み分けが始まっているというよりは最初からそういうものなんだよなぁ
Unityが開拓した「お手軽に3Dゲーを作る」っていうエンジン市場をUEが侵食しようとしてる
- 371 :名前は開発中のものです。:2015/12/04(金) 11:48:11.08 ID:x5se+V8Z.net
- 結局どっちでも使える知識に進んでくものだし
切磋琢磨の発展はユーザにも嬉しいな
- 372 :名前は開発中のものです。:2015/12/04(金) 14:44:20.21 ID:YiKbNb6/.net
- どっちかに縛られず両方覚えればいいじゃんって感じ
C++とC#なら両立は楽だし
ただUE4はまだ未完成感あるから様子見した方がいいかもね
- 373 :名前は開発中のものです。:2015/12/04(金) 14:48:53.83 ID:YZpvL1m9.net
- 5.1から使い始めた初心者です。
質問なのですが、MacのEl CapitanにOSをアップグレードしてからか
最近やたらUnityが重いです。
よく見たら、Unityエディタの右下に青いバーがあり、なにか処理をしているっぽいのです。
「7/11 Light Transport 5 jobs」など、〜 jobs という表示で、何種類かあるようです。
前から出ていたものかもしれませんが、公式リファレンスで「jobs」で検索しても何もヒットしないのですが
このバーは何でしょうか?
これのせいで重い気がするのですが・・・なかなか処理が終わりそうにありません。
環境は3年前の秋に出たMacBook、Retinaのやつです。メモリは16Gで今のところ十分足りてます。
- 374 :名前は開発中のものです。:2015/12/04(金) 15:00:13.62 ID:a7mz3d1a.net
- て
- 375 :名前は開発中の物です。:2015/12/04(金) 15:02:20.65 ID:DDRlSPWz.net
- >>356
>>359
>>361
アドバイスありがとうございます!
359さんのxyzの連動ってどうすればいいのでしょうか?メカニムでやるのでしょうか?
四方向の移動設定はわかるのですが、メカニムでやった時X,Yの設定しかできないようだったので。
- 376 :名前は開発中のものです。:2015/12/04(金) 15:03:16.41 ID:a7mz3d1a.net
- >>373
なぜjobsで検索w
unity light transportでググるとなんかでてくるとおもうよ
- 377 :名前は開発中のものです。:2015/12/04(金) 15:34:49.24 ID:YZpvL1m9.net
- >>376
たしかにその方が良かったかもです・・・
公式リファレンスで検索したところいろいろ出てきたのですが、どれが関係してるのかわからず…
Google先生に聞くべきでした。
その結果、どうやら大きいキューブがあることが原因っぽいような、そうでもないような・・・
大きいキューブ4つを消してみたら多少は改善されました。
ありがとうございます。
- 378 :名前は開発中のものです。:2015/12/04(金) 16:21:57.97 ID:XLTAUkIE.net
- UnityそのもののUIの大きさとかフォントサイズとか変更したいんだけど、何でググって良いのかさえわからなくて困ってます。
【Unity UI】とかで検索するとinspector部分とかの文字サイズじゃなくてゲームのUIをカスタマイズするページばかりが引っかかってしまいます。
PC買い換えたら解像度が上がったせいでソフトウェアのUIが軒並み小さい…
- 379 :名前は開発中のものです。:2015/12/04(金) 16:54:04.59 ID:LhrOBBwU.net
- >>378
できない。
来年5月に5.4でRetina対応した時に何とかなるのかもしれない、という期待もある。
http://forum.unity3d.com/threads/how-to-change-font-size-in-unity-editor.149481/
- 380 :名前は開発中のものです。:2015/12/04(金) 17:22:48.86 ID:YZpvL1m9.net
- C#での動かし方の質問です。
マップ上を自動で歩き回る敵のオブジェクトを作ろうと思っています。
各方向に壁があるかを調べるために、本体から前、左右、後の4方向に判定を伸ばします。
そのうち、例えば前方と右に壁がないことがわかった時、その2方向からどちらかを抽選して
そちらに移動する・・・ということをやりたいと思っています。
その時、前方は60%、左右は30%、後ろは10%など変化をつけたいと思っています。
それぞれの判定が壁にぶつかったかどうかの判定はできると思うのですが、
その中から「壁にぶつかった」ものを選び、その中で抽選をする・・・という部分が
どうやるべきかがなかなか思いつきません。
こういう時に使うべき命令や、手法など、ヒントでもいいので頂けると助かります。
C#、というかプログラム自体が勉強し始めたばかりなので
ifやforを使って変数をこねくり回すのがやっとというくらいなので
わかりやすい言葉で教えていただけるとなお助かります。
- 381 :名前は開発中のものです。:2015/12/04(金) 18:05:32.87 ID:XLTAUkIE.net
- >>379
素早い回答ありがとうございます。
画面全体の拡大率を上げつつ対応を待ってみようと思います。
- 382 :名前は開発中のものです。:2015/12/04(金) 18:55:00.77 ID:LhrOBBwU.net
- >>380
unityっていうよりアルゴリズムの話の気はするがな。
壁にぶつかったもの、じゃなくて壁にぶつからなかったもの、だろう。
命令的に使うべきものはRandom.Range(a,b)くらいだ。
例えばだが
前後左右に壁判定をして結果がbool[4] detectとかに格納されている。壁があればtrue
float[4] weightにそれぞれ前・右・左・後の順で重み付けが格納されている
として
float total=0f;
for(int i=0;i<4;i++){
if(detect[i]==false)total+=weight[i];
}
float probability = Random.Range(0,total);
int direct;
for(direct=0;direct<3;direct++){
if(detect[direct]==false)total-=weight[direct];
if(total<0)break;
}
とかやればdirectが0なら前、1なら右〜という結果が残る。
探索距離にもよるが全方面がふさがっていた場合どうすんのかとかそういう問題はあって
ゲームの内容によってはこのままではバグ化することは考えられるが。
- 383 :名前は開発中のものです。:2015/12/04(金) 19:05:04.10 ID:LhrOBBwU.net
- しまった、Random.Rangeのフロート版とイント版の範囲を勘違いしてた
if(total<=0)break;
だな
- 384 :380:2015/12/04(金) 19:26:31.30 ID:YZpvL1m9.net
- >>382
なるほど!
基本的な命令だけでここまでできるんですね…ちょっと感動しています。
配列は使ったことはないですが、書かれていることは概ねわかる範囲です。
ちょっと下から2番目のifの行が難しいけど…
5行目のprobabilityで有効な方向のウェイトの中から抽選してるのはわかります。
でもその後使わない??
うーん、わからない部分もあるけどちょっとやってみます!
光明が見えたのと、プログラムってすげー!って思ったよありがとうございます!
- 385 :名前は開発中のものです。:2015/12/04(金) 19:29:02.93 ID:LhrOBBwU.net
- >>384
ゴメン、そこも間違ってるw
for(direct=0;direct<3;direct++){
if(detect[direct]==false)probability-=weight[direct];
if(probability<=0)break;
}
だな
- 386 :名前は開発中のものです。:2015/12/04(金) 19:39:09.72 ID:YZpvL1m9.net
- >>385
理解できました!(たぶん!)
あと、for文ってこう活用するのかと目から鱗です。
ありがとうございます、プログラム難しくてへこたれそうになってたけどやる気出てきたよ!
- 387 :名前は開発中のものです。:2015/12/04(金) 19:43:36.95 ID:WI4Qgc9H.net
- >>375
そのメカニムで移動させた直後に、別途自身の座標取得して書き換えるだけですよ
こんな感じ↓で
Vector3 pos = obj.transform.position;//objは移動させたキャラ自身(GameObject)
pos.z = 1f - pos.y / 100;//キャラ描画の奥行き基点を1.0としてます
obj.transform.position = pos;
…というか移動でtransform.positionいじるはずだから、そこにzも一緒に放り込む処理追加するだけかと
- 388 :名前は開発中のものです。:2015/12/04(金) 22:00:38.05 ID:t/zKap4N.net
- コントローラーで操作できるようにしたかったのでこんな感じに書いてみたのですが、
ベクトルの大きさを表示してみたところ、上下左右をぴったり入力すると1と出ますが
斜め入力だと最大1.5ぐらいの大きさになってしまいました。
ゲームパッドのジョイスティックって三角関数のような円単位で表せられるものでは
ないのでしょうか?
そうであれば斜め入力で上下と等速にするためには、加筆しないといけないですよね。
private Vector2 JoyStick;
void Update () {
JoyStick = new Vector2 (Input.GetAxis("Horizontal") , Input.GetAxis("Vertical"));
if (JoyStick.magnitude > 0) {
transform.position += transform.forward * JoyStick.x * Time.deltaTime;
transform.position += transform.right * JoyStick.y * Time.deltaTime;
}
print (JoyStick.sqrMagnitude);
}
- 389 :名前は開発中のものです。:2015/12/04(金) 22:33:23.42 ID:LhrOBBwU.net
- >>388
アナログスティックはともかく十字キーはOnかOffだけだろう。
まぁ加筆自体は
JoyStick = new Vector2 (Input.GetAxis("Horizontal") , Input.GetAxis("Vertical"));
joyStick.Normalize();
だけでいいだろうが。
- 390 :名前は開発中のものです。:2015/12/04(金) 22:36:03.89 ID:LhrOBBwU.net
- ああ、それじゃダメか…
if(joyStick.sqrMagnitude>1)joyStick.Normalize();
かな
- 391 :名前は開発中のものです。:2015/12/05(土) 01:09:13.49 ID:Ip323cCd.net
- Macでの質問です。
El Capitanにアップデートしたところ、今まで使っていた痛MonoDevelopが起動しなくなりました。
痛の方を使っていた理由は、日本語入力ができるからです。
一度削除して入れ直してみても同様で、起動しようとすると原因不明のエラーで落ちます。
そこで、いろいろネット上を調べると、Xamarin Studioなら日本語入力できるとのことで
早速入れてみました。
バージョンは5.10.1でおそらく最新です。
しかし、日本語入力はできませんでした。
El Capitanで日本語入力のできている環境の方、いらっしゃいますか?
また、解決法などわかる方いましたらお願いしますm(_ _)m
- 392 :388:2015/12/05(土) 02:00:05.01 ID:iKztX7xZ.net
- >>389
質問の意図をうまく表現できなくて申し訳ありません。
変数名がジョイスティックなのでアナログではないです。
せっかくジョイスティックを使うので、傾きを考慮して
最大値を1とし、中間の傾きも考慮したいために
質問した次第です。
- 393 :名前は開発中のものです。:2015/12/05(土) 02:36:03.65 ID:tPuulIVh.net
- こんな感じで2D格闘ゲームみたいにアニメーションに併せて箱の組み合わせで当たり判定を付けたいのですが
http://www.capcom.co.jp/blog/sf4/development_blog/2011/02/22_3050.html
アセットストアなどに良さそうなものないでしょうか?
今はBOXコリダーを置いてon/offでやってるのですが膨大になりすぎて…
- 394 :名前は開発中のものです。:2015/12/05(土) 02:58:27.63 ID:B0/pRd/x.net
- >>392
機器としてのジョイスティックが吐き出す縦軸横軸の数値が
君の言う円単位的なもの(恐らく正規化されているかということだと思うが)
になっているかと言われると恐らく違う。
物理的な作りにもよると思うが基本的に斜めに倒せばX=1 Y=1の数値を吐き出す。
イマドキのゲームパッドについているアナログスティックも大体同様だろう。
斜めに倒せばベクトルの大きさはルート2=1.414とかになる。
- 395 :名前は開発中のものです。:2015/12/05(土) 03:17:31.29 ID:qe0RLnbZ.net
- >>391
一通りやってみた
確かにmono developでは日本語入力対応してなかったし
Xamarinも惜しいとこで入力できなかった
でも痛、、の方は動いたし、日本語入力できたよ
動かないというのがどう動かないのかわからんから調べようがないけど
未認証アプリは動作しない設定のせいだったらFinderでアプリケーションから
右クリックで開く、から1度でも動かしとけばいけると思う
そうでないなら動作しない状況を教えて
- 396 :名前は開発中のものです。:2015/12/05(土) 03:21:17.22 ID:qe0RLnbZ.net
- あ、動いた痛のほうのバージョンは5.9.6ね
- 397 :391:2015/12/05(土) 09:45:01.07 ID:Ip323cCd.net
- >>395
ありがとうございます。
動かないという部分を詳しくいうと
・Unityから起動しようとしたら真っ白いウィンドウが1秒くらい出た後に消え、
「MonoDevelop-Unity が予期しない理由で終了しました。」と表示が出る
・Finderから単体を起動しようとしても同じ
・古いのを消し、新しいものを「けいごのなんとか」ブログから落としてきてインストール後
開こうとすると「ネットから落としたものだけどいい?」と聞かれるので許可
→同じようにFinderからでもUnityからでも「白いウィンドウ→予期しない理由で終了」となる
今気づいたのですが、昨日ブログにあるリンクから落としたものはFinderで情報を見ると
5.9.4となっているのが気になります(5.9.6ではない?)
Finderから「情報を見る」でバージョン確認でも5.9.6になっていますか?
El Capitanは10.11.1、環境はMacBook Pro (Retina, 13-inch, Late 2013)、メモリは16Gです
- 398 :名前は開発中のものです。:2015/12/05(土) 11:30:18.55 ID:A+8m8HuO.net
- Unity5.1のカラーピッカーの質問です。
HSVの理解が足りてないのかもしれませんが、
HSV(0,255,255)とHSV(359,255,255)って別の色の筈ですよね?
Unityのカラーピッカーで359を指定して、
一旦カラーピッカー閉じて開くと0に戻っていて、
なんだか359と0を同一にしているような気がします
というかHexColor見ても、
HSV(0,255,255)でFF0000
HSV(359,255,255)でもFF0000
なので、
もしかして、UnityのHSVバグってます?
それとも自分の計算と頭がバグってます?
よろしくお願いします
- 399 :名前は開発中のものです。:2015/12/05(土) 12:31:35.64 ID:0UL6qy5F.net
- >>398
推測なんだが内部的にHSVの形では保存していないのだろう。
実際UnityEngineにはHSVカラーの構造体とかないしね。
HSVのインターフェース部分だけがHSV構造体をもってるだけで
実際にシリアライズされてるデータは変換されたColor32だったら
359=0という処理をしていても不思議ではない
- 400 :名前は開発中のものです。:2015/12/05(土) 15:59:48.53 ID:vToW6z9I.net
- 3Dサウンドに関して質問です。
動画のサウンドは3Dサウンドに対応していないのでしょうか?
- 401 :名前は開発中のものです。:2015/12/05(土) 16:47:24.16 ID:ocXKSXt2.net
- スマホ実機で実行してみたら画像がそれぞれにしょぼくなってました
画像の1つにオーバーライドにチェック入れてTruecolorにしたら
直ったけど全部の画像にこれやるのが普通なんでしょうか?
- 402 :名前は開発中のものです。:2015/12/05(土) 17:36:38.15 ID:TKKOGjwy.net
- >>401
複数選択で一度に変更できるよ
フォルダ細かく分けてるとめんどいけど
- 403 :名前は開発中のものです。:2015/12/05(土) 17:44:36.90 ID:ocXKSXt2.net
- ありがとうございます!
まとめて変更できたとは
メモリ使用量がちょっと心配だけど全部変更しちゃいます
- 404 :名前は開発中のものです。:2015/12/05(土) 18:24:43.14 ID:6BZRm6u4.net
- 複数のSpriteからAnimationClipを動的に生成したい
http://www.gaprot.jp/pickup/tips/unity5_for_2d/
> Sprite アニメーションの AnimationClip を作るには
> UnityEditor パッケージに含まれているクラスを使う必要があり、
〜中略〜
> いざ Build を行う際には UnityEditor パッケージは Build の対象外となるため
> Build が出来ないという結果で終わってしまいます。
上で話題になってた2D強化って、ここら辺の仕様も変わるんだろうか
Clip数百個とか作りたくないなぁ
- 405 :名前は開発中のものです。:2015/12/05(土) 21:40:07.17 ID:iKztX7xZ.net
- >>394
よく見たら1.5ではなく1.15ぐらいでした。
数値的には納得いかないのですが、以下のコードにて無事に動作しました。
ありがとうございました。
private Vector2 JoyStick;
void Update () {
JoyStick = new Vector2 (Input.GetAxis("Horizontal") , Input.GetAxis("Vertical"));
if (JoyStick.magnitude > 1) {
JoyStick.Normalize ();
}
transform.position += -1* transform.forward * JoyStick.y * Time.deltaTime;
transform.position += transform.right * JoyStick.x * Time.deltaTime;
}
- 406 :名前は開発中のものです。:2015/12/05(土) 22:52:19.63 ID:5cP0RmJy.net
- >>391
>>397
もう解決したかもしれないけど。
「MonoDevelop-Unity 5.9 Preview Release」でググったら出てくる
Unity Communityのやつをダウンロードすると幸せになれるかも。
上のフォーラムの「Minimun Requirements」に記載されているバージョンが
あなたの使っているUnityの条件に合えばだけど。
今のところうちのEl Capitanでは普通に日本語打てるし動作も問題ない。
ちなみに数日待つとUnity5.3が出るけどそれには上のMonoDevelopが含まれるってさ。
- 407 :391:2015/12/05(土) 23:56:34.22 ID:Ip323cCd.net
- >>406
おおお!幸せになれました!
そこのをダウンロードしてみて、開く前に情報を見たところ
やっぱりなぜか「5.9.4」となってて、あーまたダメか…と思ったんですが
こっちは開くことができ、日本語入力もできました!
ありがとうございます!
- 408 :391:2015/12/06(日) 00:04:50.30 ID:SqhYBxP8.net
- ちなみに開いてからAbout MonoDevelopで確認するとちゃんと5.9.6になってる…謎
- 409 :398:2015/12/06(日) 12:37:32.08 ID:Xo25Ei6c.net
- >>399
ありがとうございます〜
コード書いてると、RGBよりHSVの方が出番多いような気もするので、
気持ち悪いなーと思ってしまいます
- 410 :名前は開発中のものです。:2015/12/06(日) 12:53:57.93 ID:M7EELMn9.net
- >>408
痛のほうも同様だy,多分中身は同じと思うコアの部分はね
- 411 :名前は開発中のものです。:2015/12/06(日) 13:41:50.12 ID:uKAERiPd.net
- ネット麻雀みたいなのを支えるBaasでやすいのってないかな?
Photon程のリアルタイム性がなくていい代わりに安くてUnityから使いやすいのがほしいんだけど・・・・だれか教えて!
- 412 :名前は開発中のものです。:2015/12/06(日) 14:44:59.63 ID:698J1662.net
- Google App Engineかな
Datastoreの使い方間違うと課金膨れ上がるけど、上手くやればユーザ増えるまでは無料枠で捌けると思うよ
- 413 :名前は開発中のものです。:2015/12/06(日) 18:17:22.09 ID:uKAERiPd.net
- Google App Engineは確かに忘れてました
料金を調べてみます
趣味でゲームを作ろうと思っているのですが毎月数万円マイナスだときついので安ければ安いほど助かるんです
- 414 :名前は開発中のものです。:2015/12/06(日) 18:24:04.50 ID:tut05Xyo.net
- void OnCollisionStay(Collision col)
{
if (col.gameObject.name == "Cube(Clone)")
{
Destroy(gameObject);
}
}
このScriptを破棄したいオブジェクトAにアタッチして
Cube(Clone)に接触したらオブジェクトAを破棄するようにしているのですが
"2つ以上のCube(Clone)と接触したら破棄する"といった条件はどう書いたらいいですかね?
- 415 :名前は開発中のものです。:2015/12/06(日) 19:02:41.83 ID:5yO0Yl9X.net
- 新しいPCにUnity入れたんだけど30分毎に落ちる・・・
- 416 :名前は開発中のものです。:2015/12/06(日) 19:23:47.40 ID:y/4U1a0N.net
- >>414
いくつぶつかっている、みたいなのを判別してくれる便利関数はない。
自分でCollisionEnter,CollisionExitとかで数えるしかないな。
- 417 :名前は開発中の物です。:2015/12/06(日) 19:45:59.82 ID:z4APy23j.net
- >>387
すいません、スクリプト自体はコピペで書いてある文字は全然わからないです・・・。
下のスクリプトで動かしているのですが、どう書けば良いのでしょうか・・・
void Update () {
if(animator)
{
float h = Input.GetAxisRaw("Horizontal");
float v = Input.GetAxisRaw("Vertical");
walking = true;
if (h > 0) {
directionX = 1;
directionY = 0;
} else if (h < 0){
directionX = -1;
directionY = 0;
} else if (v > 0) {
directionX = 0;
directionY = 1;
} else if (v < 0){
directionX = 0;
directionY = -1;
} else {
walking = false;
}
if (walking) {
transform.Translate(new Vector3(directionX, directionY, 0) * Time.deltaTime * 0.5f);
}
animator.SetFloat("DirectionX", directionX);
animator.SetFloat("DirectionY", directionY);
animator.SetBool("Walking", walking);
- 418 :名前は開発中のものです。:2015/12/06(日) 20:11:29.30 ID:M7dP0Kw0.net
- クイズに答えるだけで「プログラミングの勉強」ができるWebサービスたちにハマる!
http://plus.appgiga.jp/masatolan/2014/07/29/53133/
小学生でもゲーム制作を可能にするWeb統合エディタ「Tynker」が、
むしろ大人がハマると話題に!
http://plus.appgiga.jp/masatolan/2015/06/05/56144/
3Dゲームを直接ブラウザ上で制作・公開可能な「Goo Create」が楽しすぎる!
http://plus.appgiga.jp/masatolan/2014/11/28/54632/
プログラミングの勉強を本気でWebゲーム化した「CodinGame」が時間泥棒確定!
http://plus.appgiga.jp/masatolan/2014/10/03/53923/
スマホで、プログラミングが勉強できる3Dロボット対戦「Hakitzu」がヤバ過ぎる!
http://plus.appgiga.jp/masatolan/2014/12/12/54802/
- 419 :名前は開発中のものです。:2015/12/06(日) 20:39:51.98 ID:c7kqWhqV.net
- 題名があると読まなくていい記事だと判断できて便利だな
- 420 :名前は開発中のものです。:2015/12/06(日) 20:56:01.16 ID:mgi24f37.net
- 自作のクラスの、他のクラスからの読み込みについて質問です。
2Dシューティングゲーム - 第04回 敵を作成しよう
https://github.com/unity3d-jp-tutorials/2d-shooting-game/wiki/%E7%AC%AC04%E5%9B%9E-%E6%95%B5%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%82%88%E3%81%86
上記チュートリアルの「Spaceship.cs」は、
使う際は下記のようにインスタンス化?できています。(自分で試しても出来ました)
//----------------------------------
public class Player : MonoBehaviour
{
// Spaceshipコンポーネント
Spaceship spaceship;
IEnumerator Start ()
{
// Spaceshipコンポーネントを取得
spaceship = GetComponent<Spaceship> ();
spaceship.Shot (transform);
//---
対して、今自分で作ったソースでは下記のようにしないと
インスタンスがnullだと言われてエラー終了してしまいます。
//----------------------------------
public void Save() ←実際に使うメソッド
{
Spaceship spaceship = gameObject.AddComponent<Spaceship>();
spaceship.save(text);
//---
この挙動?の違いはどこからくるのでしょうか。
ご教示お願いしますm(_ _)m
- 421 :名前は開発中のものです。:2015/12/06(日) 22:07:18.04 ID:e8MyX0tc.net
- >>420
GetComponent<T>()はそのスクリプトが動いているGameObjectにアタッチされているTコンポーネントを取得する、なければnullが返る。
AddComponent<T>()はそのスクリプトが動いているGameObjectにTコンポーネントをアタッチして追加されたものを返す。
つまりそのスクリプトが動いているGameObjectにSpaceshipコンポーネントがアタッチされていないだけだと思う
とりあえずヒエラルキーでそのGameObjectを選択し、インスペクタからSpaceshipを追加すれば動くよ
このような別のコンポーネントがないとまともに動かないスクリプトの場合、付け忘れを避けるために[RequireComponent(typeof(T))]をつけておくといい
余計なお世話かもしれないが学び始めなら公式のマニュアルとリファレンスは読む習慣をつけることをお勧めしとくよ
わからない名前が出たらとりあえずググって公式のマニュアルとリファレンスを読めば自己解決出来るケースが増えるから自分のペースで開発出来る様になる
いちいち躓いて人に聞いてたらゲーム作る前に嫌になって挫折しそうな気がするから自己解決の方法を多く持つのは習得への近道だと思うよ
調べてもわからない事が出てきたらまたここに聞きに来ればわかる範囲で答えるから頑張れ
- 422 :名前は開発中のものです。:2015/12/06(日) 22:08:56.62 ID:tut05Xyo.net
- >>416
ありがとうございます
下のScriptで無事出来ました〜
int hitNum = 0; //cubeと接触した回数
void OnCollisionEnter(Collision col)
{
if (col.gameObject.name == "Cube(Clone)")
{
hitNum += 1; //接触したら接触回数を1増やす
if(hitNum >= 2) //接触回数が2回以上でオブジェクトを破棄
{
Destroy(gameObject);
}
}
}
- 423 :名前は開発中のものです。:2015/12/06(日) 23:00:24.87 ID:jPU/1I8Z.net
- ここまで丁寧に説明してくれる人がいる事と
それまでの無知全開の流れに良くも悪くもこのスレらしいなと思うのです
- 424 :名前は開発中のものです。:2015/12/06(日) 23:02:21.00 ID:mgi24f37.net
- >>421
チュートリアルの方調べたら、ご指摘の通りPlayerのprefabにスクリプトがアタッチされていました。
よくわかりました。
リファレンス、自分では調べたつもりなのですが折れるのが早いのかもしれません…
マニュアルは途中まで読んで飽きてチュートリアルに移ってしまったので、
読破するようにしますorz
助かりました、ありがとうございます!
- 425 :名前は開発中のものです。:2015/12/06(日) 23:11:08.96 ID:mgi24f37.net
- リファレンスにバッチリ載ってますね…
なんで見なかったんだろうorz
- 426 :名前は開発中のものです。:2015/12/07(月) 00:03:16.79 ID:6i/uTLhj.net
- >>424-425
マニュアルもリファレンスも全文読む必要はないというか読んでも最初はわからない単語だらけで理解出来ないで飽きると思う
チュートリアルなどをやっててわからなくなったらその部分を見る方が実体験に基づいて調べるから見落としにくいし覚えやすい
個人的には調べたついでに類似メソッドとの違いを把握出来るとより好ましいと思う
例えばGetComponent<T>を調べたらGetComponents<T>やGetComponentInChildren<T>などを理解しておくと応用が利くといった具合
小さなことから少しずつ覚えて行けばそのうち全体が把握出来る様になるさ
- 427 :名前は開発中のものです。:2015/12/07(月) 00:38:10.47 ID:nzWuz8jB.net
- 複数のオブジェクトを仮置きしておいたのを、
いっぺんに指定のprefabに置き換える方法ってありますか?
- 428 :名前は開発中のものです。:2015/12/07(月) 01:17:30.55 ID:kAr350d2.net
- >>417
少なくともコピペしたコードが何をしてるのか理解しようとしてみましょう
そうすればできることがどんどん増えていきますよ
transform.Translate(new Vector3(directionX, directionY, 0) * Time.deltaTime * 0.5f);
ここで移動後の位置を設定してるのはわかるよね?
この「Vector3(directionX, directionY, 0)」がX,Y,Zの指定です
で、ここのZ(今「0」が設定されてる)を直接変えたいところだけど、
「Time.deltaTime * 0.5f」がかけてあり、0.5秒あたりの移動量で設定されてるから、
このtransform.Translateの処理直後に↓これ突っ込んでみたらと
Vector3 pos = transform.position;//今いる場所のxyz
pos.z = 1f - pos.y / 100;//z変更。キャラ描画の奥行き基点を1.0としてyで計算
transform.position = pos;//変更したxyzを上書き
プレイヤー以外のキャラが動くならそちらの処理にも対処入れておかないといけないね
あと2Dということはマップチップも配置してるよね?
ならばマップチップの座標にもZが要るかもね(マップチップは層が違うから基点を変える必要ありです)
マップなどはレイヤーで管理してるとは思うけど…影響がでるなら配置時に設定が必要
そもそもz使って管理するのがメカニムと相性良いかどうかは微妙だけど、作り次第かな
- 429 :名前は開発中のものです。:2015/12/07(月) 01:19:27.31 ID:Uj4/ZsVJ.net
- >>427
置き換えられる側のStartやAwakeで置き換えればいいんでないの?
Editorの話?
- 430 :名前は開発中のものです。:2015/12/07(月) 03:17:41.06 ID:2ZS+ix9z.net
- Editor想定でザクッと書いてみた
using UnityEngine;
using UnityEditor;
public class ReplaceToPrefab : EditorWindow {
[MenuItem(
- 431 :名前は開発中のものです。:2015/12/07(月) 03:28:42.76 ID:2ZS+ix9z.net
- ミスったので以下に置いてきた
http://www.dotup.org/uploda/www.dotup.org642133.txt.html
なお、ヒエラルキー上での順序等細かなことはしていない適宜修正されたし
- 432 :名前は開発中のものです。:2015/12/07(月) 03:42:13.20 ID:2ZS+ix9z.net
- >>431
自己レスすまん使い方書き忘れ、眠くてダメぽ
ソース読めばわかると思うが、一応以下使い方
メニュー>Window>ReplaceToPrefabという項目を選択
出てきたウインドウで置換先のプレハブを指定する
ヒエラルキーで置き換えたいオブジェクトを全て選択
Replaceボタンをクリックで置き換える
テキトーに書いたためアンドゥが出来ない
細心の注意を払いつつ自己責任で使ってくれ
- 433 :名前は開発中のものです。:2015/12/07(月) 12:28:22.25 ID:OKonrqZH.net
- 質問です。
c#初心者で勉強中なのですが、よく使うであろう処理を関数にしてみようと思いました。
必要な時はそれに値を入れて、戻り値?をもらうような。
そこで、疑問が湧きました。
その「これこれこういう処理を○○という関数にする」という書き方はたぶん調べればわかるんですが
それを書いたスクリプトは、どこにどう置いておくものなのでしょう?
Unity上の、おそらくシーン上に置く必要がありますよね。
例えばその処理を実際に使用するスクリプトの上の方にでも書いておけばいいのでしょうか?
そうすると他のスクリプトからもその関数を使用する場合、わざわざ他のGameObjectを参照して…とか
やらなければいけないのでしょうか?
根本的なことだと思うのですが、調べ方もよくわからず困っています。
わかる方いましたら教えていただけると助かります。
- 434 :名前は開発中のものです。:2015/12/07(月) 12:56:19.37 ID:Uj4/ZsVJ.net
- >>433
いや、プロジェクトに含めて置けばクラスとして参照できるよ
便利関数をまとめとくだけなら、とりあえずstatic classにして静的メソッドとしておけば良いかと。
public static class Utils{
public static int Hoge(){
return 123;
}
}
別ファイルから「Debug.Log(Utils.Hoge())」とすれば123が得られる
- 435 :名前は開発中のものです。:2015/12/07(月) 13:00:57.01 ID:Uj4/ZsVJ.net
- 調べ方だけど、とりあえずC#の基礎でぐぐればまとまったサイトいくらか見つかるだろうから、分かる範囲で斜め読みしておけば良いかと
Unityスレで言語の基礎知識聞くとスレ違い扱いされて仕方ないところなので、基礎的な質問はプログラム板で初心者スレ探してみて
MonoBehaviourやコンポーネント絡むとあちらではスレ違い扱いされるので、この辺はぐぐって出てくるのがUnityかどうかで判断すればいいかと
- 436 :名前は開発中のものです。:2015/12/07(月) 13:15:25.29 ID:5Zo01j7L.net
- unity5.2.1p4において、
player settingのiOS のsplash imageの設定で、
規定のサイズの画像を入れた後にXcodeで書き出して実機テストすると、
端末サイズ(自分の場合640×1136)のsplashの後に
640×960のsplashが表示されて困ってます。
(端末と画像の解像度が違うので画像が潰れている)
おそらくsplash画像をフェードアウトさせる為にunity側でsplashを表示してると思われるのですが、
解決方法はありませんか?
- 437 :433:2015/12/07(月) 13:16:24.23 ID:OKonrqZH.net
- >>434,435
ありがとうございます。
プロジェクトフォルダに置いておけばいいのですね。
関数を作ってやってみます。
質問に関しては、Unity上のどこに置くのだろう?という質問だったのでここで聞きました。
不適切な質問でしたらすみませんでした…
- 438 :名前は開発中のものです。:2015/12/07(月) 16:24:10.23 ID:IwWiwmZk.net
- ゲームオブジェクトにアタッチするC#スクリプトで、
public変数を幾つかのグループ(この場合は効果音)に分け、
それぞれインスペクター上で折りたたみ表示にしたいと思います。
現在、以下のように内部にクラスを用意し、それを実現しています。
public class Player : MonoBehaviour
{
[TooltipAttribute("効果音")]
public SoundEffects sfx;
[System.Serializable]
public class SoundEffects
{
[TooltipAttribute("効果音:攻撃")]
public AudioClip attack;
[TooltipAttribute("効果音:ジャンプ")]
public AudioClip jump;
}
}
このコードでは SoundEffects クラスがありますが、一度しか使われておらず
なんだかモヤモヤしてしまいます。
より簡潔な書き方があれば教えてください。
エディタ拡張のFoldOutも考えましたが、変数をグループ分けするだけだと
ちょっと大げさすぎるように感じました。
([SerializeField]のような属性で表現できるなら良いのですが)
- 439 :名前は開発中のものです。:2015/12/07(月) 16:42:56.04 ID:RRr2nEu0.net
- >>438
折りたためなくてもいいなら[Header("効果音")]でもつけておけばいいと思う
折りたたみたいならエディタ拡張で表示を弄るかクラスを作るしかないが、インナークラスにせずにEnemyクラスとかで使いまわすとか再利用する事は想定されないのかな?
- 440 :名前は開発中のものです。:2015/12/07(月) 17:27:37.38 ID:IwWiwmZk.net
- >>439
最初はHeaderにしてたんですけど、
数が多くなるとどうしてもゴチャゴチャしちゃいまして。
変数グループ毎にスクリプトを分けてアタッチ、なんてのも試してました。
あ、もろちん使い回せる部分は使いまわせるようにしています。
- 441 :名前は開発中のものです。:2015/12/07(月) 18:41:47.89 ID:kAr350d2.net
- >>437
俺はプロジェクトのAssetsの中にScriptsってフォルダ作ってそこにcsファイル入れてるわ
他にもSpritesやPrefabsなどなど、判りやすく分類してる
あと、シーン上のオブジェクトに関連付けて使うクラスなら、
そのスクリプトをプロジェクトから掴んで該当オブジェクトにドロップすればいいっすよ
ここらへんのやり方はチュートリアルで説明あるからやったら分かるんじゃないかな
- 442 :名前は開発中のものです。:2015/12/07(月) 20:10:24.38 ID:kAr350d2.net
- あー、>>441は見当違いなレスだ
なんか読み間違いしてた、すみません
- 443 :名前は開発中のものです。:2015/12/07(月) 21:03:24.78 ID:jBIJTjjk.net
- 自分が向いている方向(青軸)を0度として、
相手のオブジェクトのある位置の角度は求められるのですが
それが右側にあるのか、左側にあるのか、Angleを使って求めると
分からなくなってしまうのですが、いい方法はないでしょうか?
- 444 :名前は開発中のものです。:2015/12/07(月) 21:08:47.05 ID:jBIJTjjk.net
- 連投すいません、右側、左側というのは、
青軸を0度として数学で言う第一象限〜第四象限の
どの位置にあるかを求めたいということです。
- 445 :名前は開発中のものです。:2015/12/07(月) 21:24:14.87 ID:x8ZuNdat.net
- XZ平面で三角関数解けや
- 446 :名前は開発中のものです。:2015/12/07(月) 21:41:52.72 ID:mrT5kF6m.net
- >>443
transform.rightとターゲットへのベクトルの内積が正なら右、負なら左
- 447 :名前は開発中のものです。:2015/12/07(月) 22:17:22.32 ID:s5RZFjAL.net
- くっそつまらんことで2週間ほど頭悩ましてるんやが、
指定したボールをボタンを押すたびに時計回りで同じ強さで発射したい
AddForce(initialVector, ForceMode.Impulse);
でinitialVectorの強さをかえると方向は変わるんやが、強さもかわっちまう。強くなる。
で、色々調べてrotateを変更すればとあるが変更してもなんら変わりなし。
rotate(0,20,0)とかrotate(20,0,0)
たぶん何らかの前提となる知識が必要なんだと思うけど、道筋だけでも教えてくれ
- 448 :名前は開発中のものです。:2015/12/07(月) 22:50:12.03 ID:kAr350d2.net
- >>447
Rotateで向きを変えて、AddForce(transform.forward * 20.0f)でどうだろうか
※20.0fは強さね
transform.forward で今の向き取得できるから、そこにチカラ加えてあげればいいんじゃないかな
- 449 :名前は開発中のものです。:2015/12/07(月) 22:56:30.23 ID:jBIJTjjk.net
- >>446
すぐに内積の事が出てこないとか恥ずかしい限りです。
ありがとうございました。
- 450 :名前は開発中のものです。:2015/12/07(月) 23:03:38.90 ID:s5RZFjAL.net
- >>448
返信どうも
ボタンが押されたら実行
{
CreateDummyBall();
_dummyBall.transform.Rotate(new Vector3(10, 0, 0));
//_dummyBallController.transform.Rotate(new Vector3(10, 0, 0));
_dummyBallController.Shot(Vector3.forward * 10);
}
private void CreateDummyBall()
{
_dummyBall = (GameObject)Instantiate(this.dummyBall, Vector3.zero, Quaternion.identity);
_dummyBallController = _dummyBall.GetComponent<dummyBallController>();
}
shotの中では
this.GetComponent<Rigidbody>().AddForce(initialVector, ForceMode.Impulse);
これでうまくいかん・・・
何が腐ってるんだろうか・・・
コメントアウトも試した
怪しんでるのはthis.GetComponentと_dummyBallの紐付き
- 451 :名前は開発中のものです。:2015/12/07(月) 23:24:44.15 ID:kAr350d2.net
- >>450
shotのAddForceを
AddForce(transform.forward *10, ForceMode.Impulse)ではだめですか?
- 452 :名前は開発中のものです。:2015/12/07(月) 23:29:23.77 ID:s5RZFjAL.net
- >>451
ごめんなさい
変に省いちゃったのがだめだった
public void Shot(Vector3 initialVector)
{
this.GetComponent<Rigidbody>().AddForce(initialVector, ForceMode.Impulse);
}
ってなってるんだ
で、先ほどのコードはこのショットを呼び出してる
- 453 :名前は開発中のものです。:2015/12/07(月) 23:53:25.18 ID:kAr350d2.net
- ごめんね、考え汲み取れなくて
じゃあ、
_dummyBallController.Shot(Vector3.forward * 10);
↓
_dummyBallController.Shot(_dummyBall.transform.forward * 10);
こうではないのん?
上で回転させた&打ち出したいボールは_dummyBallですよね
個人的には、shotに強さと向きを引数で渡して、
shotの中で回転させて、AddForceでforwardに強さかければスマートな気はします
- 454 :名前は開発中のものです。:2015/12/08(火) 00:00:36.93 ID:YWarlEDs.net
- >>453
こちらこそ省いて申し訳ない
>上で回転させた&打ち出したいボールは_dummyBallですよね
ですです。そうですね、ご指摘のとおりの実装が正しいと思います。
で、Startメソッドの中で_dummyBall.transform.forwardを取得すると
"(0.0, 0.0, 1.0)"
_dummyBall.transform.Rotate(10f, 0f, 0f);
実行後に_dummyBall.transform.forward
"(0.0, -0.2, 1.0)"
という値が取れて思うように回転してくれないっすね
この辺に関しては回転の概念を学ばなくてはならなそうです
- 455 :名前は開発中のものです。:2015/12/08(火) 00:08:29.98 ID:LZ7q6pwb.net
- 壁だらけのダンジョンを歩き回る敵のアルゴリズムをちまちま作ってて、納得がいく動きになったから
意気揚々とマップに5体くらい配置してみたら途端に変な動きをするようになった・・・
単体だと問題ないけど複数配置しておかしな挙動になるってことは、ひょっとしたら
変数の値を共有しちゃってるのかな?と思ってc#入門とかを見ると
省略するとprivateになると書いてあるので、当てはまらなそうです(publicな変数は特に使ってません)
こういう現象って他にどんな原因が考えられますかね…??
- 456 :名前は開発中のものです。:2015/12/08(火) 00:25:15.51 ID:YWarlEDs.net
- >>454
自己解決
Rotateとは軸となる座標を指定するというのが味噌
Rotate(0,10,0)であれば、Y座標に軸、つまりこまみたいなイメージ
そこから指定した数字だけ回転(角度)する
- 457 :名前は開発中のものです。:2015/12/08(火) 00:27:27.59 ID:YWarlEDs.net
- >>455
情報が少ない気がする
- 458 :名前は開発中のものです。:2015/12/08(火) 00:32:23.88 ID:lHB0dUDl.net
- >>454
ああ、そうだ…すみません
最初に向いてる方向がZ方向だからそれを目的の時計回りになるところに
まず軸を初期化しないと、だ
ギズモが
↑Y
←□→Z
↓ の状態でやるとわかりやすいけど、球のXを変えて力を加えれば球のZ方向に向かって動きます
なのでshotするのが自機だとしたら自機の向きでボールの向きを初期化してから
目的の向きへ回転させて力を加えてください
- 459 :名前は開発中の物です。:2015/12/08(火) 01:27:43.17 ID:LoOIpgPp.net
- >>428
アドバイスありがとうございます!
z値を利用した画像の前後ができました!
まだプレイヤーを上に動かすと他のオブジェクトより手前に出たりとか・・・。
上下キー以外にも、左右も押すだけでz値が奥行ってしまったりとか。
動画撮ってみました。元が趣味のアカウントで、申し訳ないのですが一番上の三つの記事
が今日の成果物です・・・。
http://8biskets.tumblr.com
- 460 :名前は開発中のものです。:2015/12/08(火) 01:49:12.14 ID:k3T2AEQg.net
- >>455
static変数を使ってると見た
- 461 :名前は開発中のものです。:2015/12/08(火) 02:21:41.66 ID:tKLb4rQn.net
- 質問です。
ボールがあって、床を転がっている間に減速させたいのですが、
摩擦で遅くしようとすると壁に当たった時に(入射角と反射角の)角度が一致しなくなります。
モンOトのように動いて欲しいのですが摩擦で調整することは無理なのでしょうか?
最近始めたばかりの初心者なので、初歩的な質問だったらごめんなさい・・。
- 462 :名前は開発中のものです。:2015/12/08(火) 06:24:31.29 ID:D5aX/sPt.net
- >>461
RigidBodyでDragの設定をしてやればそれで減速は可能。
転がしてるならAnglerDragでもいい。
ただUnityは緻密な制御をしたいタイプのゲームには本当に不向きなので
そういうことがやりたくてまだ初めて間もないならUE4に鞍替えした方がいい
- 463 :名前は開発中のものです。:2015/12/08(火) 06:44:29.24 ID:tKLb4rQn.net
- >>462
アドバイスありがとうございます!
AngularDragは挙動が変わってしまいうまくいかず…orz
Dragの存在をなぜか忘れていたので試してみます!!
UE4ですか…調べてみます_φ(・_・ メモメモ
- 464 :名前は開発中のものです。:2015/12/08(火) 10:02:59.28 ID:DCL7l9fw.net
- >>455
始めにfindで自分を見つけてるけど、全部同じ人を見つけちゃってるか
全員が同じインスタンスを参照してる
private云々は関係ない
- 465 :455:2015/12/08(火) 11:39:15.29 ID:LZ7q6pwb.net
- >>457
ごめんこれ以上なに書けばいいかわからなくて
コードは結構長いし
>>460
ありがとうです、staticは使ってません。
入門サイトなどを読んでも危険そうなものらしいので…(偏見かな)
>>464
インスタンスというのは調べてみます。
findは使ってるので怪しそうですね。その線も調べてみます、ありがとうです!
- 466 :名前は開発中のものです。:2015/12/08(火) 12:12:49.88 ID:2F01qqB3.net
- インスタンスはクラスを元にした実体だよ
変数の値を共用かもって書いてるけど、その通り同じオブジェクトを使ってるせいかと
Findはどこからやってるのさ
- 467 :455:2015/12/08(火) 12:33:15.67 ID:LZ7q6pwb.net
- >>464
報告です、やはりFindでした。
それぞれの方向の判定用に、敵本体の四方に判定用の子を作ってたんですが
その判定を指定するとこでろでFindを使っていたのが原因のようで
これをFindChildにしたらみんなちゃんと動くようになりました。
昨日ずっとこねくり回しても解決せず悩んでたところが解決しました、ありがとうございます!
>>466
インスタンスやクラスや実体など、c#の文献を読んでもその辺がいつもピンとこないんですよね・・・
わかったようなわからないような、という
「取得できる」とか「参照できる」ってよく出てくる単語だけどどう違うの?とか
プログラムの勉強はなかなかに難しいです;
- 468 :名前は開発中のものです。:2015/12/08(火) 12:53:40.38 ID:2F01qqB3.net
- このケースで言えば、Hierarchyに載ってるのがインスタンス
FindはHierarchy全体から探してくるし、
FindChildはそのコードが乗ってるオブジェクトの下(▲がついてる下とか)から探してくる、、
というイメージでいいのかな。環境によるかもだけれど
- 469 :名前は開発中のものです。:2015/12/08(火) 13:02:28.95 ID:LZ7q6pwb.net
- >>468
あ、Findはどこからというのはそういう意味でしたか。
ヒエラルキーに敵本体の空オブジェクトがあり、その子に3Dオブジェクトや各方向の判定用オブジェクトがあり
スクリプトは本体(親)にアタッチしていたので、探す対象は子でした。
- 470 :名前は開発中のものです。:2015/12/08(火) 13:54:16.39 ID:POPm1vgD.net
- unityの4.xと5以降って互換性はありますか?
先輩からもらった本が全部4.xの本で、先輩には「unityの過去verもあるからそれDLして勉強しろ」と言われてます。
自分としては最新ver入れたいのですが、4.xのソースそのままでは動かないでしょうか?
- 471 :名前は開発中のものです。:2015/12/08(火) 14:01:17.85 ID:nh5N6RSZ.net
- どうしてわざわざ今から古いの勉強するのかしら
- 472 :名前は開発中のものです。:2015/12/08(火) 14:04:16.01 ID:nh5N6RSZ.net
- >>461
普通に摩擦係数を設定するのはやってみましたか
- 473 :名前は開発中のものです。:2015/12/08(火) 14:28:21.32 ID:1/R/NX1z.net
- >>470
4系は年末でサポート切れるというかパッチ提供終わるよ。互換性がないわけじゃないけどやる価値はないと思う
先輩に4系の古書押し付けられただけなんじゃね?
本を無駄にしたくないだけなら多少は意味あるけど。バージョン合わせて学べば学習中のトラブルは少ないし、リリースログ追いかけてどう進化したのか追いかけると知識にはなる
- 474 :名前は開発中のものです。:2015/12/08(火) 14:41:01.47 ID:8dEZH0eU.net
- 先輩から何冊も本もらったら「いや別に使ってないっす」とは言いづらいよな
進捗とかいちいち聞かれるような状況なら4使っちゃうだろうな俺なら
実際は遠回りでしかないんだけど
- 475 :名前は開発中のものです。:2015/12/08(火) 14:45:37.37 ID:D5aX/sPt.net
- いや〜、4の本は使ってないっすでいいと思うよw
5になってどんだけたってるんだよって話なので(4をいじりながら…
- 476 :名前は開発中のものです。:2015/12/08(火) 14:58:25.26 ID:2F01qqB3.net
- 練習コードくらいなら
5に4のコード入れると修正していいか聞いてくるからそれでやってもらえば修正箇所あまりないかと
- 477 :名前は開発中のものです。:2015/12/08(火) 15:09:25.36 ID:ABVsuJ99.net
- 4と5で全く別物って訳じゃないんだから5入れて本の通りやってみればいいんじゃない?
本の通りに入力すると当然の様にエラーが出るからエラーメッセージ読んで対処するw
今更4系触る意味はないし古書押し付けられただけだと思うけど、エラーと格闘するのは確実に身になるよ
レガシーGUI周りだけはエディタ拡張ぐらいでしか使わないからスルー推奨
- 478 :名前は開発中のものです。:2015/12/08(火) 17:14:28.51 ID:k3T2AEQg.net
- バージョンの話とも関連するけどFindChildじゃなくてTransformのFindと覚えておかないと後で混乱するぞ
- 479 :名前は開発中のものです。:2015/12/09(水) 00:55:06.58 ID:EADFfwHR.net
- そういえば素朴な疑問なんだけどOnCollision、OnTriggerメソッド系ってどうして
ゲームオブジェクトにRigidbodyをアタッチしてないといけないんだろ。
重力とか衝突とかするつもりないけど触れたかどうかの判定したいだけなのに。
それとも俺がなんか勘違いしてるのかな
- 480 :名前は開発中のものです。:2015/12/09(水) 01:02:58.59 ID:g4y1GMbr.net
- コンポーネント志向の陰部
細かい機能に分けて依存しあってるってことだよね
ソースコードライセンス得られる方じゃなきゃ真相は分からんのかもな
なんでいちいちtextのサイズ調節でContent size fitterを別で付けなきゃいけないんだとか俺もよく思う
フレームまたがないと変更更新されないし
- 481 :名前は開発中のものです。:2015/12/09(水) 01:30:16.56 ID:kyZA5n2X.net
- PhysXに処理ぶん投げてるからじゃね?
bulletも同じでPhysicsWorldにブツが無い物は何も返らない
- 482 :427:2015/12/09(水) 02:26:21.74 ID:nPYSEZLJ.net
- >>429
editorの話ですー
- 483 :名前は開発中のものです。:2015/12/09(水) 09:04:35.88 ID:GXiFDqkj.net
- >>482
>>431-432にとりあえず動く程度のエディタ拡張が置いてある、諸々テキトーなのでスクリプト読んで自己責任で使うなり修正するなりしてくれ
- 484 :名前は開発中のものです。:2015/12/09(水) 12:37:55.02 ID:1+tFHWUE.net
- Unity最新版64bitなのですが、スマホ用に縦画面でゲームを作成するにはどうすればいいのでしょうか?
というより、GameタブのAspectを変更して9*16とすると、サイズが232*412になってしまいます。
- 485 :名前は開発中のものです。:2015/12/09(水) 13:11:50.07 ID:oRz1NHsF.net
- >>484
エディタのゲーム画面のアスペクト比は単なるプレビュー用
その数字は9:16になってるから問題ないよ
あとはuGUIのRectTransformで、想定解像度で破綻しないようにレイアウトしていく感じ
- 486 :名前は開発中のものです。:2015/12/09(水) 15:17:46.22 ID:1+tFHWUE.net
- >>485
そういう仕様か・・・ありがとう
- 487 :名前は開発中のものです。:2015/12/09(水) 16:12:21.06 ID:GXiFDqkj.net
- >>484-486
一応、プレビュー設定を比率指定ではなくピクセル指定にしてGameウインドウを充分に大きくすれば指定解像度のドットバイドットの表示をプレビュー出来る
…だか最近のスマホを想定するなら相当でかいモニターが必要だから1/2ぐらいで使ってるわ
uGUIはCanvasScalerの設定でUI Scale ModeをScale With Screen Sizeにしてリファレンスサイズを想定する端末の解像度にするのが楽だと思う
- 488 :名前は開発中のものです。:2015/12/09(水) 19:41:12.17 ID:9HIqqD8T.net
- すんげー初歩的なこと聞くけど、
ゲームも基本的にapk
androidの場合
で、ゲームをプレイストアからダウンロードしてゲームを開始すると本格的なダウンロードがはじまるじゃん?
この本格的なダウンロードってなにをダウンロードしているのだろうか?
初めからapkとして提供できない?
apkに全て載せてしまうとアップデート時に都合がわるいのかな?
後、実際なにをダウンロードしてるのだろうか
この辺の仕組みについて詳しく解説してるサイトとかあったら教えて下さい。
- 489 :名前は開発中のものです。:2015/12/09(水) 19:46:43.93 ID:oRz1NHsF.net
- playには50MB制限なんてのもあるけど、主目的はアプリメイン部分の切り分け
バージョンアップやトラブル対策の便宜のため、アセットバンドルをあとからダウンロード出来るようにしてるってこと
ユーザーの端末見て、必要なアセットが高解像度か低解像度なのか振り分けたりもする
アセットバンドルで検索すれば公式ヒットするよ
- 490 :名前は開発中のものです。:2015/12/09(水) 19:54:36.20 ID:9HIqqD8T.net
- >>489
アセットバンドル
キーワードをありがとう
- 491 :名前は開発中のものです。:2015/12/09(水) 20:37:07.37 ID:jkMpCA9+.net
- 2Dアドベンチャーゲームを作っています。
バストアップの表情変化って、
ベース+差分だけで管理する場合、
アニメーションでまとめた方が良いでしょうか。
それとも、スプライトにスプライトを重ねた方が良いのでしょうか。
どちらでも出来そうなのですが、
我流なので普通はどうするか知りたいです。
- 492 :名前は開発中のものです。:2015/12/10(木) 00:05:51.69 ID:DsuWO57j.net
- >>479
そういやrigidbodyがなくても動く場合って無かったっけ
- 493 :名前は開発中のものです。:2015/12/10(木) 00:11:38.90 ID:zCufkP1o.net
- あれ?結局5.3でSSRR載ったのか
- 494 :名前は開発中のものです。:2015/12/10(木) 01:21:55.63 ID:KKtez6od.net
- >>492
2Dだと必要
3Dならいらね
って感じだったはず
- 495 :名前は開発中のものです。:2015/12/10(木) 01:48:43.90 ID:DsuWO57j.net
- あれ、そうなのか…
2Dで動いてた記憶あるんだよな……うん、人間の記憶ってあてにならないな。
- 496 :名前は開発中のものです。:2015/12/10(木) 11:29:35.38 ID:3/LLrULp.net
- まぁお前みたいな阿呆は特にな
- 497 :名前は開発中のものです。:2015/12/10(木) 13:01:24.40 ID:HRN/QTix.net
- Windowsアップデートで寝てる間に勝手にPC再起動されていて
昨日のUnityでの作業がかなり消えたのですがもう戻せないのでしょうか
正直かなりショックなので復元方法知ってる方いましたら教えてくださいお願いします
- 498 :名前は開発中のものです。:2015/12/10(木) 13:37:40.05 ID:XTMygCjy.net
- saveしてないものは無理じゃなかろうか
残ってたら逆に怖い
- 499 :名前は開発中のものです。:2015/12/10(木) 13:58:18.18 ID:S4D2WVxY.net
- オートセーブ欲しいよな
俺もたまに無限ループでシーンの保存忘れやらかすw
たしかUnrealEngineにはついてたんだよなぁ。軽く触っただけだけど
- 500 :名前は開発中のものです。:2015/12/10(木) 14:30:01.11 ID:iP5U2QPa.net
- キャッシュに残ってる可能性あるけど、消えたことを確認したあとじゃ
もう消えてるな
- 501 :名前は開発中のものです。:2015/12/10(木) 15:27:19.74 ID:B4QcIrx/.net
- プレイ画面で必死に微調整したとか、そういう作業への救済策も作ってほしいっす・・・・
- 502 :名前は開発中のものです。:2015/12/10(木) 16:03:55.63 ID:DsuWO57j.net
- エディタ拡張でオートセーブにする場合、何をトリガーにして保存するのが無難だろう
- 503 :名前は開発中のものです。:2015/12/10(木) 16:34:15.99 ID:iP5U2QPa.net
- そりゃインターバル時間じゃないのかな
- 504 :名前は開発中のものです。:2015/12/10(木) 17:58:49.83 ID:DsuWO57j.net
- そういうものもあるのか!
ってググったら、いつものテラシュールさんとこでロールバック付きの公開してんじゃん
- 505 :名前は開発中のものです。:2015/12/10(木) 21:14:53.11 ID:Cq7KoUL7.net
- プロジェクトを削除するにはどうしたらいいでしょう
New Unity Project
New Unity Project 1
とかいらないプロジェクトを消したいです
Unityを通さずOSのエクスプローラとかでファイルをいじるとリンクが切れたりするのは知ってますが
ツールバーを探してもそれらしいメニューがありません
- 506 :名前は開発中のものです。:2015/12/10(木) 21:37:52.35 ID:8wRu5fJZ.net
- >>499
俺もよくあるわー
キャラクタ設置、スプリクト適応、微調整
休憩するために落とす、保存し忘れ、の無限ループ。
- 507 :名前は開発中のものです。:2015/12/10(木) 21:59:29.45 ID:GF1rpicb.net
- 俺は逆になんかやったらCTRL+Sが癖になってるから、
たまに保存したくない時まで保存してしまう
- 508 :名前は開発中のものです。:2015/12/10(木) 22:59:35.99 ID:B4QcIrx/.net
- あとバージョン管理方法も誰か教えてほしいな
俺は半日ごとにzipに固めてるんだけど・・・・これ効率的じゃないよな
Windows版のgitとか使ってる人いたら使い勝手がどうか教えてくれんか
- 509 :名前は開発中のものです。:2015/12/10(木) 23:26:19.79 ID:S4D2WVxY.net
- おいおいgitは必須だよ何やってんだ
コマンドライン不慣れならSourceTreeでもいれとくといい
ただUnity側設定と.gitignoreミスると厄介なので、先にUnity Gitあたりでぐぐっといてね
そんな難しい物じゃない
すぐ慣れる
- 510 :名前は開発中のものです。:2015/12/10(木) 23:32:34.32 ID:NGebudwa.net
- 完全に初心者で悪いんだけどインスペクタービューの開き方教えてくれ
unity5なんだが
- 511 :名前は開発中のものです。:2015/12/10(木) 23:40:11.70 ID:S4D2WVxY.net
- まず閉じてしまったなら単にメニューから開ける
Macならcmd+3
インスペクタがよく分からんだけなら、そのビューはヒエラルキーやプロジェクトビューで選択した物の詳細が開かれるだけの事だ。何も選択してなきゃ何も表示されないぞ
- 512 :名前は開発中のものです。:2015/12/11(金) 00:04:15.22 ID:/Tfpm4AI.net
- これからandroid向けで物理エンジンを駆使したゲームを作ろうと思ってるんですが
android機器で物理エンジンはどのくらいのスペックで動作するのか知りたいです
例えば「nexus7の2012年版で○○個のオブジェクトを動かしてもサクサク動く」
みたいな感じで教えてもらえないでしょうか?
- 513 :名前は開発中のものです。:2015/12/11(金) 00:11:49.26 ID:auUWvctk.net
- ちょうど2012Nexus7手元にあるけどさ
2D数十個でもサクサクいかん時はいかんよ。テクスチャやフィルレートとかなんでもボトルネックになり得るところだし
2012Nexus7なんてそれこそuGUI要求が多いだけでもモタつくときはモタる
常時60fpsじゃないとだめなのか(※これはほぼ無理ゲー)、たまに30fps切っても平気なのかとか、細かい基準出して欲しいかな
- 514 :名前は開発中のものです。:2015/12/11(金) 00:21:23.33 ID:/Tfpm4AI.net
- >>513
そうですね
できるだけ30fpsは維持したいです
ゲーム内容は大雑把に言えば3dゲームでオブジェクトの山に弾をぶつけて山を崩すようなものを予定してます
オブジェクトの数が多ければ多いほど楽しくなると思うのですが
- 515 :名前は開発中のものです。:2015/12/11(金) 00:26:59.56 ID:yLemPvqT.net
- rigidbodyを付けた球を坂から転がして、その後に摩擦係数を設定したPhysicMaterialを付けた平面を転がるような配置をしました。
しかし、球が止まりません。摩擦がきていないような挙動です。
どうすれば摩擦を有効にして球を止めることができるのか教えてください。
- 516 :名前は開発中のものです。:2015/12/11(金) 00:32:17.67 ID:x+AP/k/7.net
- PCゲームばっかやってて60FPS以上を見慣れてると
自分の作ったスマホゲーを30FPSに落とした時きつい
カックカクでゲームにならんって感じてしまうんだよ
一般のスマホゲーマー達はそう感じない事に期待してそのままリリースするが
- 517 :名前は開発中のものです。:2015/12/11(金) 00:51:15.98 ID:x+AP/k/7.net
- >>514
Unityで作られたその手のアプリをいくつかiPhone5Sで遊んだ事あるけど
重くて遊べたもんじゃないのばっかだったな
弾ける瞬間は1FPSも出てなかったり
まぁ無駄なコーディングで足引っ張ってそうなインディーばかりだったけど
物理コライダ持ってるオブジェクトが20個程度でそんなもんだったけど
参考にはならんと思う
ボーリングアプリくらい30分で作れるだろうしまずPCでどんくらい出るのか作ってみたら?
Androidにリリースするんなら実機持ってるんだろうし
- 518 :名前は開発中のものです。:2015/12/11(金) 01:01:15.99 ID:/Tfpm4AI.net
- >>517
返答ありがとうございます
5sって結構新しいのにそんなに厳しいんですか
これは本格的に作り始める前に自分で色々テストした方が良さそうですね
- 519 :名前は開発中のものです。:2015/12/11(金) 02:04:11.46 ID:2yOpPUBV.net
- 5.3にしたらユニティちゃんのCandy Rock Starが変になったんだけど
多分ConfettiのParticle Systemが問題だと思うのだがどう直せばいいか判らん
同様の症状で直した人いる?
- 520 :名前は開発中のものです。:2015/12/11(金) 04:40:44.87 ID:06Jnt7l7.net
- せめて人が読んで理解できる文章を書けよ
だから嫌われるんだよ
- 521 :名前は開発中のものです。:2015/12/11(金) 08:47:20.23 ID:Az4gv7hK.net
- 5.3にしてから、プロジェクト選択画面で真っ黒(正確には濃いグレー)になってしまった。
同じようにそこから先に勧めないって人いる?
http://forum.unity3d.com/threads/unity3d-5-3-not-working.372682/
状況的にこれに似てる気がする。32ビット版Windowsでしか起こってないぽい?
でも自分の英語力&Unity知識では後半さっぱり分からん。
とりあえずエクスプローラからシーンファイル(*.unity)をダブルクリックすれば、
Preferencesでプロジェクト選択画面を出す設定にしてても飛ばして起動できるのは確認した。
また、最初から飛ばす設定にしてれば問題なく起動するぽい。
- 522 :名前は開発中のものです。:2015/12/11(金) 14:27:13.90 ID:aGJdRLUp.net
- >>518
似たようなものがない時は大体が「できない」からだと思ったほうがいい
物理演算てそもそも重たいものだから
- 523 :名前は開発中のものです。:2015/12/11(金) 15:50:37.61 ID:zm6mejj3.net
- >>521
俺も焦ったが
http://forum.unity3d.com/threads/unity3d-5-3-not-working.372682/
フォーラムの
https://mega.nz/#!29ICSLTb!bxNAxe7FxtAhp7UbPfrQy36wJexr-fXAYi1GSafl-k0
をダウンロードして中身の
unityeditor-cloud-hub-0.0.1.tgz
unity-editor-home-0.0.7.tgz
解凍して
それぞれのpackageの中身を
cloudはC:\Users\<ユーザー>\AppData\Roaming\Unity\Packages
homeの方はC:\Users\<ユーザー>\AppData\Roaming\Unity\Packages\node_modules\unity-editor-home
に配置してまた再起動すれば例のログイン画面が出てくる
node_modules\unity-editor-homeが無ければ自分で作る
まあここの連中は向こうのも日本法人の連中もゴミ見たな奴しか居ないわ
糞見たいなイベントなんかしてないでさっさとドキュメントの翻訳をしろよ クズが
- 524 :名前は開発中のものです。:2015/12/11(金) 15:53:26.99 ID:/Tfpm4AI.net
- >>522
実は今日検証用のミニゲームを作って試してみたんですがnexus7の2012バーションで
実にサクサク動きました
ブロックオブジェクトを100個位表示して爆発動作させてみてもfpsは40くらいで
一定を保っています
サクサクにならないゲームってひょっとしてメッシュコライダとか重いものを
使ってるんじゃないですかね?
俺のゲームはブロックとか球などのビルトインコライダで事足りるので十分いけると
思います
これから本格的に作り始めようと思ってます
- 525 :名前は開発中のものです。:2015/12/11(金) 15:55:04.54 ID:zm6mejj3.net
- おれも頑張ってサクサク作るわ
まあ今年は殆どはMAxでの作業になるが
- 526 :名前は開発中のものです。:2015/12/11(金) 16:51:51.73 ID:Az4gv7hK.net
- >>523
さんくす! 表示されるようになった!
お前さんも32ビットだったりする?
- 527 :名前は開発中のものです。:2015/12/11(金) 17:12:49.02 ID:NWaqo9Yy.net
- >>526
俺も32ビットのタブレットにインストールしたらなったけど無事解決
- 528 :名前は開発中のものです。:2015/12/11(金) 17:15:21.25 ID:zm6mejj3.net
- >>526
だね 7の32
これ32bitでまだ導入してない人は 修正版が出るまで待った方がいいかもしれない
- 529 :名前は開発中のものです。:2015/12/11(金) 23:02:51.18 ID:TNWJHdul.net
- 質問です。
ラジコン操作をさせようと思って、ネットで見つけたコードを参考に以下のように組みました。
プレイヤーが前(Z方向)を向いている時は上下キーで前進、後退するんですが
左右で向きを変えると、変えた向きの分だけ前進・後退の角度がズレてしまいます。
具体的に言うと、右に20度回転してから上キーを押すと、PLから見て右20度に進むようになり、
右に90度回転した状態から上キーを押すと真横(右)に横滑りするようになります。
ラジコン操作にしたいので、向きを変えても前に進んでほしいのですが・・・
なぜそんなことになってしまうのか、お知恵をお貸しいただければm(_ _)m
void Update () {
if (Input.GetKey(KeyCode.RightArrow)){
this.transform.Rotate(new Vector3(0, 1f,0));
}
if (Input.GetKey(KeyCode.LeftArrow)){
this.transform.Rotate(new Vector3(0, -1f,0));
}
if (Input.GetKey(KeyCode.UpArrow)){
this.transform.Translate(this.transform.forward * 0.05f);
}
if (Input.GetKey(KeyCode.DownArrow)){
this.transform.Translate(this.transform.forward * -0.05f);
}
}
- 530 :名前は開発中のものです。:2015/12/11(金) 23:29:59.99 ID:Az4gv7hK.net
- 言いたいことはわかるが、
「プレイヤーから見て右20度に進む」だと、「正しいじゃん?」と思ってしまうw
- 531 :529:2015/12/12(土) 00:01:49.97 ID:OCSYJa91.net
- >>530
図解できれば伝わりやすいのですが;
つまり想定している方向からズレる、ぞのズレる角度が変えた方向の角度と一致する、ということですね。
向きを20度変えたのに、進む方向は40度変わっとるやんけ!という
- 532 :名前は開発中のものです。:2015/12/12(土) 00:14:36.58 ID:2plOXWN4.net
- >>529
まずRotateはnew vector3いらずに
Rotate(0,1,0)で良くなかったっけ?
ゲームアプリ20個以上リリースしても、たった一ヶ月Unity触らなかっただけでそんな事さえも忘れてしまってる自分が悲しい
- 533 :名前は開発中のものです。:2015/12/12(土) 00:22:09.87 ID:2plOXWN4.net
- >>529
で前進後退においても
Translateはもともとローカル軸だった気がするので
transform.Translate(0,0,0.5f)で真っ直ぐ進まないかな?
- 534 :529:2015/12/12(土) 00:25:11.16 ID:OCSYJa91.net
- >>532
ほんとだ、new vector3無くてもいけますね。
症状はまったく変わらないですが・・・
ちなみに新しいプロジェクトにキューブ1個だけ置いて>>529のスクリプトつけても症状は同じでした。
何がいけないんだろう・・・
- 535 :名前は開発中のものです。:2015/12/12(土) 00:29:24.46 ID:yC1kWMxQ.net
- >>529
this.transform.Translate(this.transform.forward * 0.05f);
は
this.transform.Translate(Vector3.forward * 0.05f);
にするかもしくは
this.transform.Translate(this.transform.forward * 0.05f, Space.World);
にする。
- 536 :529:2015/12/12(土) 00:30:54.36 ID:OCSYJa91.net
- >>533
それでいけました!
もともとローカルのものをローカル指定したから角度が2重にかかってたとかですかね・・・
とにかく
this.transform.Translate(this.transform.forward * 0.05f);
の部分を
this.transform.Translate(0,0,0.05f);
にしたらちゃんと正面に進むようになりました!
助かったありがとう!!
- 537 :529:2015/12/12(土) 00:34:20.31 ID:OCSYJa91.net
- >>535
ありがとうございます、
this.transform.Translate(Vector3.forward * 0.05f);
でもしっかりいけますね!
うーん、こんな単純なスクリプトでも理解するのは難しいもんですね…
- 538 :名前は開発中のものです。:2015/12/12(土) 00:34:21.77 ID:2plOXWN4.net
- >>536
良かったねえ
Time.DeltaTimeするのを忘れないようにね
別の環境で遊ぶ時に高速になったり低速になったりしちゃうよ
- 539 :名前は開発中のものです。:2015/12/12(土) 00:35:37.88 ID:yC1kWMxQ.net
- つーか、
this.transform.Rotate(Vector3.up*rotSpeed*Time.deltaTime);
とか
this.transform.Translate(Vector3.forward *moveSpeed*Time.deltaTime);
とかそういう表現にした方がいいかとは思うがなぁ…
- 540 :529:2015/12/12(土) 00:36:04.64 ID:OCSYJa91.net
- >>538
ありがとうです、*Time.DeltaTimeとかにするんでしたっけ…
それは手元の入門書にも書いてあったのでそれ見ながら入れておきます!
- 541 :529:2015/12/12(土) 00:37:49.04 ID:OCSYJa91.net
- >>539
こんなに書き方が色々あるなんて・・・
全部メモっておいて調べてみます、ありがとうです!
- 542 :名前は開発中のものです。:2015/12/12(土) 00:47:17.51 ID:2plOXWN4.net
- まぁゆくゆくはRigidbodyで動かしたりもするようになるだろうけど、少しずつ分かっていけば良いと思うよ
あ、ここもこうすれば後々便利だ!とかそんな風に気付いていく喜びを楽しみつつね
敵のとかAI作ってて脳がほとんど溶けたのも良い思い出だわ
- 543 :名前は開発中のものです。:2015/12/12(土) 04:46:34.69 ID:LX2Avmx5.net
- 残念ながら論点はそこじゃねえんだ
「漢字は一文字から意味をなすが、アルファベットは数文字必要」
って書けば日本語化の価値に気づけるか?
- 544 :名前は開発中のものです。:2015/12/12(土) 13:18:20.61 ID:3GGIAwvU.net
- Transoform関連はサンプルアセットのThirdPersoncharacterのスクリプトを徹底的に見れば良く判る
更に適当なアセットで戦闘時の前を向いたまま左右やバックの動きをカメラとの関連で理解して
最後にanimationでRootMotionの有無による違いを理解すればゲームで思った通りに動かせるようになる
- 545 :名前は開発中のものです。:2015/12/12(土) 16:42:34.69 ID:NPVAYdih.net
- 5.3にしてみて気のせいかもしれないんだけどさあ
インスペクターでオブジェクトを見ると、貼り付けられたスクリプトの項目がすべてグレーアウトしてる
これって前からこうだったっけ・・・・?
- 546 :名前は開発中のものです。:2015/12/12(土) 23:19:06.90 ID:6cVhaj81.net
- unityを4.6から5.2.3f1にバージョンアップしたところ、Scenceが開けなくなりました。
開こうとすると「Merge scenes」というのがはじまるのですがどのボタンを押しても結局開けません。
エラーログは下記です。
Error running semantic merge
UnityEditorInternal.
InternalEditorUtility:INTERNAL_CALL_SceneViewDrag(Object, Vector3&, Vector2&, Boolean)
UnityEditorInternal.InternalEditorUtility:SceneViewDrag(Object, Vector3, Vector2, Boolean)
(at C:/buildslave/unity/build/artifacts/generated/common/editor/InternalEditorUtilityBindings.gen.cs:250)
UnityEditor.DockArea:OnGUI()
ちなみにCドライブ直下に[buildslave]のフォルダなど無く、なんのエラーかもわかりません。
解決方法わかる方いらっしゃったら助けていただけませんでしょうか。
- 547 :名前は開発中のものです。:2015/12/12(土) 23:54:00.78 ID:pnfEa23s.net
- Unity5.3.0f4にアップデートしたのですが、
今まで(5.2系列)上手く行っていたWebGLのゲームのロードに失敗するようになりました。
chromeのコンソールで見るとこんなエラーが出ており、
─────────────────────────
* Failed to load resource: the server responded with a status of 404 (Not Found)
http://hogehoge.com/Release/Build.js ←Build.jsは、実際にはBuild.jsgzという圧縮ファイルになっている
Invoking error handler due to UnityLoader.js:1
Uncaught unknown compression method
─────────────────────────
「
Uncaught unknown compression method」でググると
Apacheの設定で解凍失敗してるんでは?的な記事があって
httpd.confなどをその通りに設定したのですが改善しません。
自分で作っていた過去のビルド分を見なおしたところ、
そもそも前のバージョンでもjs等の圧縮は行われており
それは問題なく解凍できていたようです。
急に挙動が変わった原因は恐らく↓だと思うのですが、改善方法がわかりません。
Unity WebGLはサーバー側で圧縮の設定がされていない場合でも、自分で適切に圧縮をハンドリングするようになりました。
http://blogs.unity3d.com/jp/2015/12/07/unity-5-3-webgl-updates/
なにか改善策や問題点心当たりありましたら、ご教示お願いしますm(_ _)m
- 548 :名前は開発中のものです。:2015/12/13(日) 00:22:59.55 ID:uiR6M1Lf.net
- 変な話ですまんがなんでバージョン上げたの
これまでのバージョン使いなよ
Unityわりと気楽にトラブル起こすよ
Android用のresフォルダ認識しなくなったのとか記憶に新しいところだ
サポートで解決できなかったから広告SDK側をAndroid Plugin形式に改造したったよ
その後パッチバージョン出たけど
- 549 :名前は開発中のものです。:2015/12/13(日) 00:31:44.57 ID:5sytrhgf.net
- そういうもんなんですか。。
WebGLはビルド対象にしようと思っているのと、今後出る2D強化に期待してるので
アップデートはしていきたい気がしています…
公式のコミュニティでWebGLで検索もしたんですが、
特にそういう話題なかったんで恐らく環境依存なのかな?と思うのですが
同じ境遇の方いらっしゃいませんでしょうかorz
- 550 :名前は開発中のものです。:2015/12/13(日) 00:46:50.76 ID:uiR6M1Lf.net
- 今後の2D強化というとロードマップで来年June予定の奴かな?RPGツクール的なのとかSmartSprite
あれはすでにPro版あライセンスで触れるんだけど、まだまだ製品に使えるものになってないアルファ版だと思って問題ないよ
- 551 :名前は開発中のものです。:2015/12/13(日) 01:27:05.37 ID:UxISlOla.net
- 具体的にどんなのだろう。
あとはタイルマップも気になってるんだけども…
- 552 :名前は開発中のものです。:2015/12/13(日) 02:18:50.42 ID:T1PVLqMJ.net
- 新しくついたIn App Billingを試した人いる?
個人の俺は住所氏名をストアでさらすの嫌だから課金システムをつける気はないけど、いつかやってみたい機能ではある
- 553 :名前は開発中のものです。:2015/12/13(日) 18:33:33.10 ID:JGp8cZyt.net
- http://i.imgur.com/dviSrrZ.jpg
画像のような空白のエラーメッセージが出て、何もできなくなってしまいました。
同じような症状を経験した方はいらっしゃいますか?
Unityを再インストールしてもダメでした。
別のプロジェクトからスクリプトファイルをインポートしたらこうなったような気がします。
ググっても解決策は見つかりませんでした。
- 554 :名前は開発中のものです。:2015/12/13(日) 19:18:36.57 ID:yWkumFwQ.net
- インポートしたスクリプトが悪いとめぼしをつけてるならインポート前に戻せばいいんじゃね
- 555 :名前は開発中のものです。:2015/12/13(日) 19:21:59.61 ID:JGp8cZyt.net
- >>554
返信ありがとうございます。
スクリプトを削除しても再起動してもエラーは消えませんでした。
- 556 :名前は開発中のものです。:2015/12/13(日) 22:00:25.82 ID:nrWSMJOj.net
- ソース管理システム使えとは言わんがバックアップはこまめにしとこうぜ。
インポート前のプロジェクトがそのまま残ってないなら、最終的には新しくプロジェクト作って少しずつ移植かな。
- 557 :名前は開発中のものです。:2015/12/13(日) 22:22:57.67 ID:UxISlOla.net
- Dropboxの同期フォルダに突っ込んでおくだけでもだいぶ違うね
- 558 :名前は開発中のものです。:2015/12/13(日) 23:31:58.39 ID:HGfclpxH.net
- 質問です。
player_win_x64.pdb
player_win_x64_s.pdb
上記のファイルって何でしょうか?
エンドユーザーの環境に入れないとダメですか?
- 559 :名前は開発中のものです。:2015/12/14(月) 00:59:45.74 ID:H2lQWtd2.net
- ttp://stackoverflow.com/questions/29359473/unity-5-pdb-file-on-build-development-build-turned-off
デバッグ用途のデータなのでエンドユーザに配布する必要はないよ
- 560 :名前は開発中のものです。:2015/12/14(月) 01:09:48.37 ID:GIlDuD45.net
- enemy.csを作成して敵キャラクターのオブジェクトに貼り付けた場合を想定してほしいのですが
この場合、ゲームコントローラー等からすべての敵キャラクターの同じメンバ関数を呼ぶにはどうすればいいのでしょうか?
- 561 :名前は開発中のものです。:2015/12/14(月) 01:16:30.04 ID:H2lQWtd2.net
- 俺なら単にforeachで回すよ
あとEnemyManager.csみたいな敵キャラクター全体の管理クラス作ってそいつに全ての敵キャラクターを管理させる
ゲームコントローラからは管理クラスのメソッド呼ぶだけ
- 562 :名前は開発中のものです。:2015/12/14(月) 01:17:18.34 ID:W90jgNlN.net
- BroadcastMessage!
- 563 :名前は開発中のものです。:2015/12/14(月) 01:23:24.13 ID:uyCW8aeP.net
- このブロックとブロックの間の黒い線を消したいんだが
何をどうすればよいんでしょうか。
Standardのシェーダーに適当なテクスチャくっつけて
uvずらして切り貼りしてるかんじなんです
http://i.imgur.com/rclm0RB.jpg?1
だれかエスパーお願いしますうう
- 564 :558:2015/12/14(月) 01:39:50.84 ID:RTi2ffUX.net
- >>559
ありがとうございました。
- 565 :名前は開発中のものです。:2015/12/14(月) 01:55:16.42 ID:GIlDuD45.net
- >>561
ありがとうございます
オブジェクトを取得するのはやはり、毎回GameObject.Findで探してやる感じになるのですか?
- 566 :名前は開発中のものです。:2015/12/14(月) 02:55:22.94 ID:pzkPucZv.net
- まあ>>561のやり方でちゃんと管理するのがいいのだが
単純な話であればenemy.csに
void Update(){
if(Input.GetKeyDown(Keycode.A)MethodA();
}
void MethodA(){
}
とか書いておけばそれでも呼べる。
ちゃんと管理するっていうのは生成も廃棄もちゃんと管理するってことだ。
>>561が想定しているのは恐らくManageEnemy.csというクラスをシングルトンで作っておいて
その中に例えばパブリックメンバとしてList<enemy> enemyListとかをもっておくとか追加削除メソッドをもって
enemy.csで
void Awake(){
ManageEnemy.instance.enemyList.Add(this);
}
void OnDestroy(){
ManegeEnemy,instance.enemyList.Remove(this);
}
と書いておくとかもっといえばEnemyを生成するのは必ずUnitManagerとかのクラスを通して行い
廃棄もそれを通して行うみたいな話ではあろうと思う。
- 567 :名前は開発中のものです。:2015/12/14(月) 04:08:56.91 ID:ronnLmNu.net
- 逆にゲームコントローラのイベントに敵キャラがハンドラを登録する方法もある
- 568 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 15:34:23.80 ID:sO33dj3S.net
- 某書籍を買ったのですが、update関数の中でnew Vector3を使っています。
毎フレームnewするのは一見遅くなる気がしますが、unityではこれ普通に使いますか?
- 569 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 15:48:13.55 ID:aVVKebKg.net
- C#だと普通
つか説明用のコードでそこまでシビアなことはしないし
最適化でどうなるか気になるなら実測してみては
- 570 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 16:27:13.97 ID:oYRBr8uT.net
- Vectorを一時的に使う時にnewするのって抵抗あるよね
俺も最初はそう思ってた
いつからか面倒臭くなって今は当たり前に使ってるけども
別に気にする必要はなかったと思うね
- 571 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 16:30:06.33 ID:H+L3QWh3.net
- Vector3はstructだからなぁ
- 572 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 16:32:35.86 ID:30LNT+hD.net
- Updateでnew Vector3だと?
どんな動きを期待してんだ、普通にFixedUpdate使えよ
- 573 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 18:37:35.29 ID:H+L3QWh3.net
- >>572
物理演算に干渉しないのであればUpdateでなんの問題もないしむしろFixedUpdateに書くべきじゃない
- 574 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 19:02:45.96 ID:DiZBL98b.net
- そんな事は初めて3日の初心者でも知ってるだろ
ゲームではrigidbody使う基本から覚えたほうがいい
- 575 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 19:33:31.97 ID:sPRe/DZw.net
- FixedUpdateの存在に気づいたの、いつだったかな…
- 576 :名無しさん@そうだ選挙に行こう:2015/12/14(月) 19:35:00.10 ID:H+L3QWh3.net
- 元のVector3をnewすることによるオーバーヘッドとFixedUpdateに何の関係もないからどうでもいいか
Vector3はstruct=値型だから変数に代入した時点で値の複製によるオーバーヘッドが発生する
だからnewだけを気にしててもあまり意味がないって事な
- 577 :名前は開発中のものです。:2015/12/14(月) 20:43:31.62 ID:x0H1eQQZ.net
- >>563
きっちり切り抜こうとしてない?
マップチップみたいな画像を切り抜こうとして同じ症状が起きた気が。
一回り大きく描いておくか、一回り小さく切り抜くか、切り抜かず1枚のテクスチャを用意するか。
3DのUVの仕様だったと思うけど。違ったらスマソ
- 578 :名前は開発中のものです。:2015/12/14(月) 21:11:49.95 ID:grDto/Iy.net
- Unityに関係ない質問ですが、みなさんは
- 579 :名前は開発中のものです。:2015/12/14(月) 21:35:14.97 ID:cdIsw3/o.net
- FixedUpdateの話に便乗して質問
RigidBodyにFixedUpdateを使うのはいいとしてinput系がよくわからない
Input.GetAxisはマニュアルではUpdateで普通に使われててWEB記事の中にはUpdateがいいとか書いてあるものさえ
あるけどチュートリアルのスクリプトではFixedUpdateで使ってる場合が多い、どっちでもいいのか?
あとシューティングとかジャンプとかInput.GetButtonDownはFixedUpdateと別にわざわざUpdateでしてる
ちょっと作って見た程度ではどっちも大差ないんだよなあ、決まりがよく判らん?
- 580 :名前は開発中のものです。:2015/12/14(月) 22:01:33.06 ID:pzkPucZv.net
- >>579
Inputの各値は基本的にはUpdate()単位で更新されている。
http://docs.unity3d.com/ja/current/ScriptReference/Input.html
"Note also that the Input flags are not reset until "Update()", so its suggested you make all the Input Calls in the Update Loop."
インプットのフラグはUpdate()までクリアされないことに注意。インプットコールの全てはUpdateループの中で行うべきことを示しています。
つまりそのサイクルのUpdate()が終わった時点で更新される。
なのでFixedUpdate()で使うのには注意が必要で
例えばキーを押したとき一回実行したい場合に
if(Input.GetkeyDown(Keycode.A)MethodA();
なんかをFixedUpdate()に書いてしまうと場合によっては二度実行されて意図してない結果になりうる。
Input.GetAxis()なんかはそういう意味ではFixedUpate()内で使っても危険は少なそうではある。
- 581 :名前は開発中のものです。:2015/12/14(月) 22:41:56.11 ID:uyCW8aeP.net
- >>577
おおお、ありがとうございますううう。それでした!
一枚テクスチャにしてもちょっと小さく切り抜いた場合でも
つなぎ目消せました
http://imgur.com/a/RtaXc
- 582 :名前は開発中のものです。:2015/12/14(月) 23:03:28.13 ID:5rWvx7gs.net
- >>511
亀だけどサンクス
何となくわかったわ
- 583 :名前は開発中のものです。:2015/12/14(月) 23:16:18.52 ID:nTj0Sz3S.net
- ↑
わかってない
- 584 :名前は開発中のものです。:2015/12/15(火) 02:52:33.57 ID:nZT54pCP.net
- ブロック崩しを作っていて、
跳ね返ったりブロック消すところはできたのですが、
いざブロックをたくさん設置してみると
上に跳ね返らず、→の処で下に戻ってしまうのです。
こっちにこない
↓
\ ■■■■
\■■■■
→/■■■■
/ ■■■■
\ ■■■■
\
○スタート
球の速度を変えると上に行く時もあるのですが、
速度を変える以外に何か回避方法ありますか?
- 585 :名前は開発中のものです。:2015/12/15(火) 03:15:30.59 ID:tajp4kV9.net
- >>584
おそらく、その1つ上のブロックの角にボールが当たってるんだろうな。
ブロックを消さない場合も、同じように想定しない方向に跳ね返る?
それで発生しないなら、もしかすると「当たった瞬間には消さない」という姑息な手段で
問題が解決するかもしれない、
- 586 :名前は開発中のものです。:2015/12/15(火) 08:08:41.08 ID:66uXxktO.net
- admobuに関して質問よろしいでしょうか?
カメラだけの最小構成のサンプルプロジェクトでバナーを表示させるとでるのに
実際のアプリに組み込むとでません。
これって何かのアセットがいたずらしてたり画面の外に表示されてたりとかそういう可能性ってありますか?
解決法はどうしたらよいでしょうか?
- 587 :名前は開発中のものです。:2015/12/15(火) 10:07:44.89 ID:uyndtwRG.net
- >>568
transformのメンバ変数は直接書き換えることが出来ない。
vector3の値を変える時はvector3同士でないといけないから、こういう書き方になる。
- 588 :584:2015/12/15(火) 13:23:33.44 ID:dXUWUNx8.net
- >>585
ブロック消さないようにしても軌道は同じでした
- 589 :名前は開発中のものです。:2015/12/15(火) 13:40:00.52 ID:o8J25P/W.net
- >>588
恐らく>>585が言った通りもうひとつ上のブロックにも当たっててそこに
跳ね返ってるのだろう
つまり同時に複数のブロックと当たってる
そこで一案だがまずボールに当たったブロックをすべてプールする
そしてプールしたブロックの中からボールとの位置関係に照らし合わせて適切な
あたるブロックを選んでそれを消しながらボールを反射させるというのはどうか
- 590 :名前は開発中のものです。:2015/12/15(火) 13:49:15.86 ID:o8J25P/W.net
- >>589
やっぱこの方法良くないね
先に上のブロックに当たった場合変な挙動になる
一つのブロックの上辺、下辺、左辺、右辺のどれに当たってるか検知するほうが
良いと思う
- 591 :名前は開発中のものです。:2015/12/15(火) 14:57:28.55 ID:Aeg7fYna.net
- ブロック崩しの問題って、ブロックとブロックの間に隙間があるから起きてる問題なんだよね?
これって隙間に見えないブロックを詰めてやれば解決するのかな
- 592 :名前は開発中のものです。:2015/12/15(火) 15:53:04.81 ID:1PuSfyAW.net
- 隙間があるからよりもむしろ計算精度や頻度の問題だろう。
速度を変えると大丈夫な場合があるのだとすれば
物理特性マネージャやタイムマネージャの設定を見直してやれば解決する場合もありうる
- 593 :名前は開発中のものです。:2015/12/15(火) 16:37:29.85 ID:PujoCYBK.net
- 当たり判定の間隔と処理順の問題やね、図にすると以下の様な感じ縦軸は時間
物理演算(ここでは当たってない)
↓
↓ここでBに当たるが判定はまだされない
↓
↓ここでAに当たるがこれはBにめり込んでいる状態
↓
物理演算(ABと当たった判定、Aが先に処理されてる)
実行環境の処理能力が許すなら>>592の言う通り判定の頻度を上げればある程度改善すると思う
厳密にやろうとすると同時に当たった場合にちょっと工夫が必要になるかな
- 594 :名前は開発中のものです。:2015/12/15(火) 16:48:56.08 ID:7/E0miQ5.net
- Edit->ProjectSettings->Time->FixedTimesetp を0.01 (100fps)あたりにすればいいんじゃね
PCなら問題ないでしょ
- 595 :名前は開発中のものです。:2015/12/15(火) 16:56:28.86 ID:PujoCYBK.net
- Collision Detectionの変更で解消したりしないかねこれ
- 596 :584:2015/12/15(火) 18:46:18.90 ID:dXUWUNx8.net
- みなさんありがとうございます。
>>594
0.01でマシにはなったんですが、続けているとやっぱりたまに発生します
精度を上げると確率減っていきました
>>595
そこらへんいろいろいじったのですが変わりませんでした。
Rigidbody2D版だとよくなったりしました(こっちも出るときは出る)
- 597 :名前は開発中のものです。:2015/12/15(火) 20:00:34.18 ID:X0IxInAK.net
- 質問です。
Lightwaveでエンベロープとマテリアルを適用しまた、キーフレームでアニメーションをつけたモデルをFBXでunityにインポートし
vuForiaを利用してARで表示しようとしているのですが、
ビルドして実機で表示してみるとエンベロープとマテリアルが適用されていません。
Unity上でアニメーションを再生していた時は適用されていました。
理由がわかる方いましたら教えていただけますでしょうか。
- 598 :名前は開発中のものです。:2015/12/15(火) 20:37:30.30 ID:ilr73Fja.net
- 2Dゲーム制作しています。
SpriteRendererが複数集まってできているアニメーションするキャラクターがいますが、
このrootあたりにスクリプトをつけて一括で色変更ってできますか?
色反転や全体的に明るくするなどです。
無敵状態の表示などに使います。
シェーダーってこういうときに使うのかなと想像してますが・・・
- 599 :名前は開発中のものです。:2015/12/15(火) 20:42:34.04 ID:PX05T8Gm.net
- >>598
2Dのチュートリアルにまんまな例があった気がする
https://github.com/unity3d-jp-tutorials/2d-shooting-game/wiki
> 第11回-エネミーのHP、弾の攻撃力、アニメーションの追加
> 11.2 ダメージを受けた時の表現
- 600 :名前は開発中のものです。:2015/12/15(火) 22:20:21.99 ID:7/E0miQ5.net
- >>598
一括Color操作は自前でコンポーネントを作ったほうが楽だよ
親から一括でやるか、子からrootを見るかは実装次第で
- 601 :名前は開発中のものです。:2015/12/15(火) 22:37:57.21 ID:Pvh48dzj.net
- 今晩は。毎度お世話になっております。
座標99999たとかでキャラコン貼り付けたcubeがカタカタするんですが
そういうものでしょうか。
- 602 :585:2015/12/15(火) 23:19:26.28 ID:tajp4kV9.net
- やっぱ>585の方法じゃダメだったかー。
それでうまくいくなら一番楽な方法だったのに。残念。
>>584
ブロックを大きくする(ボールを小さくする)ことで、隣のブロックの角に当たる確率を減らすとか、
必ず1マス以上あけてブロックを配置することで、変な方向に反射しても仕方ないとプレイヤーに思わせるとか、
更に姑息な方法はどうだろうか、ダメか。
- 603 :名前は開発中のものです。:2015/12/15(火) 23:39:43.60 ID:1PuSfyAW.net
- >>601
floatってのは有効桁数が7桁だからあと1で六桁という数になると小数点以下は事実上1桁しか使えない。
座標0.1単位程度でしか動かなくなるってこと。
- 604 :名前は開発中のものです。:2015/12/16(水) 00:03:14.70 ID:j+S5csIr.net
- uGuiでCanvas以下のレイヤーにマウスの位置に2Dオブジェクト生成しようと思ったのですが
Input.mousePositionで取得した値だと微妙にずれた座標が生成されてしまいます。
左下原点にして右上でタッチするほど座標がずれていくのですが、どうしたら正しい値を取得できるのでしょうか?
- 605 :名前は開発中のものです。:2015/12/16(水) 00:06:03.15 ID:eYf8fnNA.net
- http://docs.unity3d.com/ScriptReference/RectTransformUtility.html
割と変換負荷あるからプロファイラーには注意してね
- 606 :名前は開発中のものです。:2015/12/16(水) 00:16:48.31 ID:2EXzHSA/.net
- >>603
ありがとうございます。
なるほど有効桁数ですか。
本質的な問題のようなので
あまり大きな座標にならないように作りたいと思います。
- 607 :名前は開発中のものです。:2015/12/16(水) 00:40:38.94 ID:VAD6hGXi.net
- Input.GetButtonについての質問なのですが、
例えばオート連射のような物を実装しているのですが、
ボタンを押下している状態で、
現在のステージをloadLevelでリロードすると、
ボタンを押しているのにも関わらず、
ボタンを押している事を判定してくれないのですが何故でしょうか
(日本語やばかったらすみません)
つまり、オート連射のボタンを押しっぱなしにしたまま、
ステージをリロードしても、そのままオート連射していて欲しいのですが、
どうしたら良いでしょうか
- 608 :名前は開発中のものです。:2015/12/16(水) 02:30:43.20 ID:YpuaDswn.net
- >>607
どうやって連射の実装してるんだい?
フラグでやってるんならSceneが変わったときに連射用のフラグをいったん下ろしてやらなくては。
- 609 :名前は開発中のものです。:2015/12/16(水) 02:37:22.60 ID:f8gP/AkE.net
- FixedJointでくっつけたゲームオブジェクトが、オブジェクトを動かすとバラバラになって高速で移動しながら飛んでいってしまいます。
RigidbodyのDragなどを高い数値に変更してもその現象は改善されないのですがなぜでしょうか…?
- 610 :名前は開発中のものです。:2015/12/16(水) 09:28:03.07 ID:kqjfOMz3.net
- ゲームビュー(できれば任意のカメラ)の映像を一時的に静止画にして、
それをゲーム内で再利用する場合、どうやるのがスマートかな?
具体的な状況としては、
たとえばボス撃破の瞬間を切り取って、エンディングで表示させるとか。
楽に使えるなら、ポーズ画面なんかでも使いたいという人も居るかもしれない。
(1)Application.CaptureScreenshotで保存してから読み込む
(2)シーンの追加読み込みを行って、シーンをまるごと静止画っぽく表示する
(3)各オブジェクトの位置などを何らかの方法で保存しておき、再現する
というのをぱっと思いついたが、第4の選択肢は無いものかなって。
- 611 :名前は開発中のものです。:2015/12/16(水) 10:00:36.34 ID:Vb3Sl3S3.net
- Texture2D.ReadPixelsでスクリーンからテクスチャに直接引っこ抜くという手はある
レンダーテクスチャがPro版でしか使えなかった頃はオフスクリーンレンダリングで割と使われていた手法ではある
http://docs.unity3d.com/jp/current/ScriptReference/Texture2D.ReadPixels.html
- 612 :名前は開発中のものです。:2015/12/16(水) 10:48:18.99 ID:LkcR1T/m.net
- つか何でRender Texture使わないの?
- 613 :607:2015/12/16(水) 11:31:10.32 ID:VAD6hGXi.net
- >>608
単純にGetButton("hoge")がtrueなら連射するようにしています
- 614 :名前は開発中のものです。:2015/12/16(水) 11:50:10.30 ID:HZkFOsWS.net
- 他人が失敗する様な環境を作った自分に非が無いとでも?
- 615 :名前は開発中のものです。:2015/12/16(水) 15:04:03.90 ID:o0yPHZmn.net
- どなたか教えてください。
シーンが切り替わってから2秒後にBGMを流したく、以下のようなスクリプトを書いたのですが、
再生されません。どこか間違っているのでしょうか?
unity5.2.3f1を使っています。
float timer;
AudioSource audioSource;
void Start () {
audioSource = gameObject.GetComponent<AudioSource>();
timer = 0;
}
void Update () {
timer += Time.deltaTime;
if (timer > 2.0f) {
for(int i =0; i < 1; i++){
audioSource.Play ();
}
}
}
- 616 :名前は開発中のものです。:2015/12/16(水) 15:10:24.68 ID:i1u9PnLV.net
- >>615
どうもif (timer > 2.0f) {の文で2.0f以降毎フレーム再生開始が掛かってる状態なんじゃないのか?
俺だったらtimerが2.0f超えた時点でフラグをオンにするという構成にする
- 617 :名前は開発中のものです。:2015/12/16(水) 15:15:11.21 ID:Vb3Sl3S3.net
- >>612
レンダリングを一回余計にまわさなきゃならんのと
個人的にTexture2Dの方が使い勝手がいいからだな
レンダーテクスチャでやる場合は以下でおk
任意のカメラ.targetTexture=renderTexture;
任意のカメラ.Render();
任意のカメラ.targetTexture=null;
- 618 :名前は開発中のものです。:2015/12/16(水) 15:48:31.15 ID:A3RTiMr9.net
- >>615
>>616の言ってる通りに
再生されないんじゃなくて何回も連続して再生されすぎててまともな音が出てないだけ
つかデバッグに仕方をまず覚えろ、playの下にDebug.Log(hoge);とか入れとけば何回も再生されてるのがわかるだろうに
- 619 :名前は開発中のものです。:2015/12/16(水) 16:09:15.66 ID:oULklXcL.net
- Liicaが出しているアプリ「Q」のようにタッチの軌跡をオブジェクト化して表示し、そこに動的にcolliderをアタッチしたいと考えています。
現在はLine Rendererで線を描画し、タッチされた座標をpolygon collider 2Dのpathに設定しようと考えて作業していましたが、うまくいきません。他になにか適切な方法はないでしょうか?
- 620 :名前は開発中のものです。:2015/12/16(水) 16:53:23.91 ID:Vb3Sl3S3.net
- >>619
上手く行かない時はどう上手く行かないか書かないとエスパー回答しか出来んよ
推測するにPolygon Collider 2D は閉じたパス(面)である必要があるが、タッチした点は開いたパス(線)だから上手く行かないんだと思うわ
タッチした点pの左右に線の太さの1/2だけずらした点p1,p2を算出して、描画された線を囲む様なパスを生成すればいいんでない?
まあEdge Collider 2D使うと幸せになれるかもしれない
http://docs.unity3d.com/ja/current/Manual/class-EdgeCollider2D.html
http://docs.unity3d.com/ja/current/Manual/class-PolygonCollider2D.html
- 621 :名前は開発中のものです。:2015/12/16(水) 21:47:00.93 ID:t4TQTjE8.net
- >>620
ありがとうございます
上手くいかない理由はおっしゃる通りの原因だと思います
Edge collider、試してみます
- 622 :名前は開発中のものです。:2015/12/16(水) 21:52:38.12 ID:7BgYgE6R.net
- >>584
そもそも物理演算必要?
俺だったら進行方向に対して現在地から移動先へのCapsuleCast飛ばして
当たったコライダーとの放線使ってベクトル反転でやるかな
- 623 :名前は開発中のものです。:2015/12/16(水) 22:09:03.18 ID:ndTWa9K3.net
- 物理いらないならもうパズルゲームみたいにセルを2次元配列化で管理した方が手軽に望んだ挙動作れると思うよ
- 624 :名前は開発中のものです。:2015/12/17(木) 01:00:33.35 ID:9sQ34Jc8.net
- unityいじり始めて大抵みんなブロック崩し作ると思うけどブロック崩しって物理演算と
相性良くないよね
当たり判定はエンジンに頼るとしても玉の挙動は自分でコーディングした方がいい
- 625 :名前は開発中のものです。:2015/12/17(木) 01:54:57.82 ID:NVfT1vq4.net
- ブロック崩しなら本家の公式にあるこれが一番判りやすいよ
http://unity3d.com/jp/learn/tutorials/modules/beginner/live-training-archive/creating-a-breakout-game?playlist=17219
- 626 :名前は開発中のものです。:2015/12/17(木) 02:25:48.51 ID:i6ql7oPG.net
- Unityでenterキーを押すと
GameウィンドウのDisplay 1タブが反応してしまいます。
Displayタブの非表示もしくは反応させないようにする方法は
ないのでしょうか?
- 627 :名前は開発中のものです。:2015/12/17(木) 11:39:02.64 ID:42EN6m0T.net
- 公式の3Dの真似をして以下のコードを書くとエラーになります・・。
どなたかわかる方ご指摘お願いします><
void FixedUpdate(){
float x = Input.GetAxis (
- 628 :名前は開発中のものです。:2015/12/17(木) 11:40:44.32 ID:42EN6m0T.net
- void FixedUpdate(){
float x = Input.GetAxis ("Horizontal");
float y = Input.GetAxis ("Vertical");
Rigidbody rb = GetComponent<Rigidbody>();
rb.AddForce (Vector2.up * x);
}
- 629 :名前は開発中のものです。:2015/12/17(木) 11:43:47.82 ID:42EN6m0T.net
- 627,628です。
連投申し訳ないです・・・
正しくはこちらです。
void FixedUpdate(){
float x = Input.GetAxis ("Horizontal");
float y = Input.GetAxis ("Vertical");
Rigidbody2D rb = GetComponent<Rigidbody2D>();
rb.AddForce (x,y);
}
- 630 :名前は開発中のものです。:2015/12/17(木) 12:29:43.51 ID:9sQ34Jc8.net
- >>629
GetComponentってgameobject.GetComponent無しで呼び出せたっけ?
俺はそうしてるけど
エラーメッセージも書いてくれよ
- 631 :610:2015/12/17(木) 14:03:48.31 ID:5ZD2RIjV.net
- >>611>>612>>617
ありがとうございます。
ずっとscreenshotやcaptureといった単語で調べていたため
それらのメソッドに辿りつけませんでした。お恥ずかしい。
- 632 :名前は開発中のものです。:2015/12/17(木) 15:53:38.78 ID:H/PVOEMJ.net
- >>629
Rigidbody2D.AddForce の引数はVector2とForceModeだから引数の型が違うって言われてるんじゃない?
エラーメッセージと公式のリファレンスは読む習慣付けた方がいいよ
- 633 :名前は開発中のものです。:2015/12/17(木) 16:39:56.32 ID:NVfT1vq4.net
- >>629
突っ込みどころが多すぎだけど多分こんな感じでうごかしたかったんじゃね
その状態ならひたすらチュートリアルやるのが一番の近道だよ
public Rigidbody2D rb;
void Start() {
rb = GetComponent<Rigidbody2D>();
}
void FixedUpdate() {
float x = Input.GetAxis ("Horizontal");
float y = Input.GetAxis ("Vertical");
rb.velocity = new Vector2 (x,y);
// rb.AddForce(new Vector2 (x,y));
}
- 634 :名前は開発中のものです。:2015/12/17(木) 17:11:46.11 ID:ObBFCLHN.net
- >>629
その書き方で間違っているのは
rb.AddForce (x,y);
の部分で
rb.AddForce(new Vector2(x,y));
と書かねばならないってだけ。
GetComponentはgameObjectなしでも使える。
GameObjectとComponentはObjectから派生してそれぞれが
GetComponentを設けているので両者は本来同じではない(実際には同じだろうが)
- 635 :名前は開発中のものです。:2015/12/17(木) 17:37:47.81 ID:0OdKeQMj.net
- 非常に初歩的な質問で申し訳ないのですが、new Vector3(1.1.1)とは毎フレームごとに()の中の値を加算していくということであってるんでしょうか?
- 636 :名前は開発中のものです。:2015/12/17(木) 17:46:22.58 ID:ObBFCLHN.net
- >>635
言語の勉強から始めろ…
Vector3はUnityEngineで定義された構造体だ。
newはそのクラス、もしくは構造体のインスタンスを作る、ということだ。
インスタンスってのは何かっていうとメモリ上にその形式に沿って領域を確保するってことだ
- 637 :名前は開発中のものです。:2015/12/17(木) 19:55:08.25 ID:0OdKeQMj.net
- >>636
すいませんC#の勉強してから出直してきます・・・
- 638 :名前は開発中のものです。:2015/12/17(木) 20:13:39.37 ID:lGOuvxAK.net
- >>616、>>618
返事遅くなって申し訳ない
Debag.Logしてみたら何度も再生されてたみたいです。616さんの言ってるようにフラグをオンにする形で上手くいきました。
ありがとうございます。
- 639 :名前は開発中のものです。:2015/12/17(木) 20:19:49.64 ID:H/PVOEMJ.net
- >>635
なんというか見たまんまなんだけどな
new Vector3(1,1,1);
↓
新しい3次元ベクトルを(1,1,1)で作る
C#の絵本あたりでざっくりと概念を理解するのがいいかもね
APIの使い方は知らなくてもリファレンス見れば何とかなるが
概念が理解出来てないと応用が効かないしソース読んでも理解出来ないから
効率良く学習するには基本的な概念を理解すること
これさえ身についていれば他の言語やゲームエンジンに移っても苦労しない
- 640 :607:2015/12/17(木) 20:46:23.59 ID:/vN0R3NP.net
- >>613
誰かおねがいしますー
- 641 :名前は開発中のものです。:2015/12/17(木) 21:11:58.46 ID:0OdKeQMj.net
- >>639
自分も新しいベクトルを作るって言うのはなんとなくわかるんですけど次のプログラムがいまいち納得いかないんですよね
void Update () {
var v = new Vector3 (0.1f, 0.1f, 0.1f);
transform.Rotate (v);
}
これだと0.1度の位置でピタッと止まりそうなんですけどオブジェクトがゆっくり回転するんですよね・・・
- 642 :名前は開発中のものです。:2015/12/17(木) 21:16:51.56 ID:ObBFCLHN.net
- >>641
それはRotate()っていう「回転させる関数」にその値を渡しているからだ…
だから毎フレーム回転する。
transform.rotation.eulerAngles=v;
ってやれば0.1度になる
- 643 :名前は開発中のものです。:2015/12/17(木) 21:58:44.76 ID:0OdKeQMj.net
- えーっと、つまり毎フレームごとに()の中の値とそれの元になったVector3を破棄(メモリ開放?)するからnew関数を使って毎回作り直すってことですかね?
- 644 :名前は開発中のものです。:2015/12/17(木) 22:07:57.57 ID:H/PVOEMJ.net
- >>641
なるほどUpdateが毎フレーム呼ばれる関数だってとこを理解してないんだな
void Update () {//毎フレーム
var v = new Vector3 (0.1f, 0.1f, 0.1f);
transform.Rotate (v);//vだけ回転する
}
仮に60FPSで実行されていれば毎秒60回これが実行されるってことだからそりゃあぐるぐる回るだろ
http://docs.unity3d.com/ja/current/ScriptReference/MonoBehaviour.html
ここのメッセージの項目の一番下
http://docs.unity3d.com/ja/current/Manual/ExecutionOrder.html
ここもざっくり見ておくといい
- 645 :名前は開発中のものです。:2015/12/17(木) 22:31:26.52 ID:NVfT1vq4.net
- まあスクリプトマニュアルにある例文スクリプトを動かしてみるのが一番だな
その例ではvar v = new Vector3 (0.1f, 0.1f, 0.1f); は毎回同じ値しか生まないからUpdateでやる意味はないな
あとC#でvarは止めようぜw
- 646 :名前は開発中のものです。:2015/12/17(木) 22:42:18.10 ID:CLdinnog.net
- >>641
もうちょっと関数とか定義とか調べてみたほうがいいねw
とくに、あれ?と思ったときこそ念入りに
- 647 :名前は開発中のものです。:2015/12/17(木) 22:43:24.00 ID:0OdKeQMj.net
- >>644
ありがとうございますマニュアルとか初めて知った・・・
>>645
すいませんネットで見つけたものをコピペしただけだったので・・・
varはバリューの略?だとかってに思ってるんですがC#だと何がいけないんでしょうか?
- 648 :名前は開発中のものです。:2015/12/17(木) 22:44:58.16 ID:5ZD2RIjV.net
- ば、value……
- 649 :名前は開発中のものです。:2015/12/17(木) 22:49:26.89 ID:CLdinnog.net
- >>645
ちょうどC#スレでも話題になってたけど最近はvarが主流になりつつある(らしい)
まあ公式のC#プログラミングガイドで推奨されてたりもするし
- 650 :名前は開発中のものです。:2015/12/17(木) 22:50:46.47 ID:0OdKeQMj.net
- やばい恥ずかしさで死にそう
変数とか書いてあるの見て勝手にfloat見たいなもんと勘違いしてたみたいだ・・・
- 651 :名前は開発中のものです。:2015/12/17(木) 22:51:23.35 ID:CLdinnog.net
- 訂正
公式のC#プログラミングガイド
↓
MSDNのC#プログラミングガイド
- 652 :名前は開発中のものです。:2015/12/17(木) 22:57:39.91 ID:CLdinnog.net
- >>650
変数宣言時に、「代入する値を参照して型を決める」のがvarだから、
「float見たいなもん」という点では間違ってはいないと思う
変数宣言時に代入するのが文字列ならstringとしてコンパイル時に型を決定してくれる
- 653 :名前は開発中のものです。:2015/12/17(木) 23:09:58.46 ID:H/PVOEMJ.net
- >>647
C#でvar使うなってのもかなり偏った考え方なので鵜呑みにしない様にw
特に今回のような右辺を見れば誰が見てもVector3だということが明らかな場合はvar使う方がいい
例えば仕様変更でVector3をVector2に変更する場合を考えると
明示的型宣言の場合右辺左辺の両方を変更する必要があるがvarの場合右辺のみの変更で済む
誰が見てもわかる場合には冗長なコードを書くと読みにくさの原因になるからvarでいい
逆に関数の戻り値など型が一見してわからない場合はvarで受けてしまうとその変数の型が何かを理解しにくくなるから明示的型宣言した方がいい
var v=getValue(); //型がわからん
数値リテラルなども誤読を生みやすいからvarは避けた方がいい、例えば…
var a=3;
var b=.3;
var c=3f;
var d=3l;
上からint,double,float,longだがこうなるともう嫌がらせに近いw
あとで読んでわかりにくいコードは無駄な手間を増やすから避けるべきというお話
- 654 :名前は開発中のものです。:2015/12/17(木) 23:22:47.87 ID:42EN6m0T.net
- 629です。
色々なご指摘ありがとうございます…
new Vector2() で動くようになりました!
なぜ書かないといけなかったのかを考えたいと思います。
ありがとうございました
- 655 :名前は開発中のものです。:2015/12/17(木) 23:47:01.98 ID:0OdKeQMj.net
- つまりvarは機械側が空気読んで変数の変わりをやってくれる
けど>>653見たいに人間には片別が付きにくい場合もあるからそこのへんは気をつけて使えよってことか
- 656 :名前は開発中のものです。:2015/12/17(木) 23:56:05.25 ID:CLdinnog.net
- 「変数の代わり」じゃなく「変数の型の決定」な
かなり意味違うから気をつけて
自分の中では後者の意味で書いたんだろうけど他の人にとっては別の意味になるよw
- 657 :名前は開発中のものです。:2015/12/18(金) 00:10:10.65 ID:Q3Oo75qC.net
- みなさん今晩は。
先程からprofilerを眺めているのですが
structをKeyにもつジェネリックなdictionaryのtrygetvalueを呼んだ時にdefaultcompareでgc.collectが走ってしまい結構なオーバーヘッドになっています。
これはdictionaryを使う上で避けられないものなんでしょうか?
ちなみにstruct側はEqualをオーバーライドして等価判断を実装してます。
unityの質問というよりはc#な気がしますが
お願い致します。
- 658 :名前は開発中のものです。:2015/12/18(金) 00:10:40.79 ID:B6RkM70a.net
- 型推論はコード見てて分かり難いからあんまり好きじゃないなー。
型見てどういう働きさせるか考えるし。
- 659 :名前は開発中のものです。:2015/12/18(金) 00:18:39.03 ID:y4yBucq8.net
- 代わりと書くなら、「型指定の代わりをやってくれる」かな
これも違和感あるけど
- 660 :名前は開発中のものです。:2015/12/18(金) 09:40:30.69 ID:uooFc2ru.net
- >>657
GetHashCodeはオーバーライドした?
Dictionary<TKey,TValue>の場合キーマッチングにHashCodeを使う
構造体GetHashCodeはobject型のを使う訳だけど値型で明示的な実装がされていない場合これにはボックス化が必要になる
キーマッチングが呼ばれるたびにobject型へのボックス化が走るからオーバーヘッドが大きいんだと思う
ボックス化せずにキーマッチングが出来るようGetHashCodeをオーバーライドすればかなりパフォーマンスが違って来ると思うよ
- 661 :名前は開発中のものです。:2015/12/18(金) 10:34:13.62 ID:B6RkM70a.net
- >>607
どなたかわかりませんかね
- 662 :名前は開発中のものです。:2015/12/18(金) 12:09:00.66 ID:Q3Oo75qC.net
- >>660
ありがとうございます、なるほどボクシングですか。。
gethascodeはオーバーライドしてましたが
equalはobject引数のやつでした。
dictionaryのコンストラクターにジェネリックのコンペアラーを作って指定しとけばボクシングなしで比較させられるイメージなんでしょうかね。帰宅したら試してみます。
- 663 :名前は開発中のものです。:2015/12/18(金) 12:11:09.10 ID:gwBKg3dx.net
- >>658
newなら型が一目瞭然だし、
関数の戻り値で代入なら書いてもいいけど、インテリセンスが効くんだから全く必要ない。
- 664 :名前は開発中のものです。:2015/12/18(金) 12:46:50.67 ID:uooFc2ru.net
- >>661
答えが貰えないのは答えがわからんからでなく質問がわからんからだからw
要求するエスパーのレベルが高すぎなんだよ
少し問題を切り分ける努力と情報がないとなんとも言えない
まずレベルをロードした後にInputからボタンの状態は正しく取れてるのか?取れてないならロード前の値を死なないオブジェクトにキャッシュするなどして回避しろ
次にレベルをロードした際に前のシーンの中身が破棄されて参照が切れてたりしないかチェック
レベルがロードされた際に破棄される古いインスタンスを参照していた場合、レベルがロードされた時に参照をとり直さなきゃならん、推測だがここが怪しい
エラーを吐いてるのかどうかすらわからん、実装も全くわからんでは答えられんのも仕方ないだろ
- 665 :名前は開発中のものです。:2015/12/18(金) 13:28:08.07 ID:ZJssySOS.net
- 助けてください!
Unity5.3.0 のMac版をインストールしたところ、UIの文字がつぶれてしまって使えません。
具体的には、
つ ttp://www.dotup.org/uploda/www.dotup.org658569.png
上図のようになってしまったのですが、これを直す方法を知りませんでしょうか?
検索してみましたが、monoDevelopの文字化け対策ばかりヒットしてしまい、解決法が発見できません。
もう、いい加減ハゲそうです…
【環境】
MacOSX 10.9.5
メモリ8GB
iMac2010年モデル
お願いします
- 666 :名前は開発中のものです。:2015/12/18(金) 15:50:46.63 ID:gwBKg3dx.net
- unityのフォーラム使え
- 667 :名前は開発中のものです。:2015/12/18(金) 15:54:23.89 ID:LlLoZF5i.net
- >>665
基本的にUnityにはエディタUIのフォントを選んだりサイズを調整したりという手段はない。
つまりOS側の何らかの設定をそのまま使ってるということ。
MacはよくわからんからよくわからんがMacOS側の何かをいじるしかないだろう
- 668 :名前は開発中のものです。:2015/12/18(金) 17:40:17.08 ID:uooFc2ru.net
- 中身全く見てないがこんな事してる奴はいるらしい
Unityはエディタの改変は割と自由に出来るのもいいところ
https://github.com/anchan828/ChangeEditorFonts
- 669 :名前は開発中のものです。:2015/12/18(金) 19:46:53.46 ID:vovoyLY6.net
- >>665
とりあえず5.2にしてみたら?
それでも変わらなければハード側の問題だろ
- 670 :名前は開発中のものです。:2015/12/18(金) 21:17:02.68 ID:eC4OHSbc.net
- どなたかAndroid6以上使ってる人いますか?
apkインストールできなく無い?
- 671 :661:2015/12/19(土) 06:18:02.26 ID:YGsi/2ht.net
- >>664
すすすみません〜
ありがとうございます。試してみます。
Update(){
Debug.log( Input.GetButton("hoge"));
}
とあった時に、普段はhogeボタン押している間はtrueになりますが、
hogeを押したまま、loadlevelでシーンを読み込むと、
hogeを押したままなのに、falseになってしまうという感じです。
(getButtonは押すという過程が無いと反応しない?)
- 672 :名前は開発中のものです。:2015/12/19(土) 08:35:09.54 ID:3jFWitgF.net
- >>671
まさに>>664がエスパーした通りだったな
- 673 :名前は開発中のものです。:2015/12/19(土) 14:01:49.13 ID:DxhqkfnX.net
- プログラマはMacを使ってるってマジ?
http://hayabusa3.2ch.net/test/read.cgi/news/1450395043/
- 674 :名前は開発中のものです。:2015/12/19(土) 19:16:41.13 ID:BNrflbDt.net
- 今androidでゲームを作ってるんですが困った状態に直面してます
macのunity上ではなんの問題もなく動作するんですがandroidで動かすと
画像が乱れます
http://m.imgur.com/GvbFeuz.jpg
これが普通の状態でパーティクルやオブジェクトを生成すると
http://m.imgur.com/9APIc0N.jpg
こうなります
関係無い部分が乱れてるのがおわかりでしょうか?
どうしたら乱れないように出来るかわかりますでしょうか?
unityは5.3でandroidはnexus9を使っています
- 675 :名前は開発中のものです。:2015/12/19(土) 19:32:53.04 ID:GPbneO/a.net
- スクショの撮り方からやり直せ
目が痛くなるような画像貼るな
- 676 :名前は開発中のものです。:2015/12/19(土) 19:55:20.13 ID:BNrflbDt.net
- >>675
申し訳ありません
やり直しました
http://m.imgur.com/oTtkUfG.jpg
これが正常な画面で
http://m.imgur.com/vByNAi2.jpg
これが乱れた画面です
枠の部分がおかしくなってるのがおわかりでしょうか?
- 677 :名前は開発中のものです。:2015/12/19(土) 20:08:40.65 ID:KkGdz7kr.net
- >>676
ごめん、どこがおかしいのかわかんないけど
ピクセルパーフェクトで作ってるから自動的にサイズ調整してくれないってこと?
- 678 :名前は開発中のものです。:2015/12/19(土) 20:39:13.89 ID:BNrflbDt.net
- >>677
フィールドの上部と左右にスロープ気味の枠を設置してるんですけど下の画像では透けて見えたり
変なところに三角形のポリゴンが出たりしてるんですけどわかりませんか?
動いてる画面だと凄くガチャガチャとした変な感じになります
- 679 :名前は開発中のものです。:2015/12/19(土) 21:54:58.14 ID:esdi3SKN.net
- >>676
描画されてないポリゴンがあるのは説明されなくてもわかるがこれだけではなんとも判断つかんね
正面の斜面を見る限り面は2つの三角ポリゴンに分割されているが片方の三角だけが描画されてる
よく見ると裏目側のポリゴンが描画されてるがこれはスロープがボックス状の面を構成していると想像するなら本来裏向きで描画されないポリゴンのはずだ
ここから考えると、何らかの理由でポリゴンの面裏がおかしくなってると推測できるがこの画像からわかるのはここまでだな
あと一枚のポリゴンがえらくでかいのはちと気になる
- 680 :名前は開発中のものです。:2015/12/19(土) 22:11:18.50 ID:BNrflbDt.net
- >>679
ビルトインのブロックを使ってるだけなのでポリゴンのモデルがおかしいとは考えにくいのですが・・
>あと一枚のポリゴンがえらくでかいのはちと気になる
さっき試しにブロックを複数に分割して作ってみたのですが結果は同じでした
- 681 :名前は開発中のものです。:2015/12/19(土) 23:16:47.00 ID:BNrflbDt.net
- 自己解決しましたー
パーティクルを表示させる時scaleをいじってたのが悪かったみたいです
scaleをいじるのをやめたら正常に表示されました
- 682 :名前は開発中のものです。:2015/12/20(日) 16:55:49.34 ID:kKby6yTS.net
- Prefabsについて質問
Prefab化した時にスクリプトでpublic 変数で指定したものが一部noneになってインスタンス化してもnoneのままなのですが
これはどういう規則があるんでしょうか?
例えばチュートリアルのsuvival shooterでplayerをPrebabにするとPlayerHealthのHealth SliderとDamage Image がnoneになります
audioclipのDeath Clipは指定されたのが残っています
Prefabに直接Health SliderとDamage Imageを指定しようとしても侵入禁止マークが出てできません
こういった場合は一般的にどうやって指定するのがいいんでしょうか?
- 683 :名前は開発中のものです。:2015/12/20(日) 18:35:21.92 ID:oUuZ6MJB.net
- >>682
いつも通りチュートリアル見ずにエスパーするが
Prefabはヒエラルキーに存在しないからヒエラルキーにあるインスタンスはPrefabでは保持出来ない、アセットにあるものの参照は維持される
ヒエラルキーにあるものを参照したければInstantinateした後でスクリプトで参照をセットするといい
- 684 :名前は開発中のものです。:2015/12/20(日) 19:02:45.82 ID:kKby6yTS.net
- 早速ありがとうございました
やっぱりスクリプトでやるのが普通なんですね
安易にヒエラルヒーにある他のGameObjectをPublicで参照するのは止めたほうがいいのかな
とりあえずFindかFindWithTagで地道に参照します
- 685 :名前は開発中のものです。:2015/12/20(日) 21:43:31.06 ID:sxkN/Mdb.net
- 時代遅れ感が半端じゃない質問ですが・・・・
今Photon使って複数人対戦のアクションゲームを作成してまして、
カメラの描画範囲外はポジションの同期せず、範囲内に入ったら同期みたいなことをしようとしてはいるんですけど、
OnWillRenderObjectでカメラの範囲を見るのはわかるのですが同期するしないの設定ってスクリプトから変更することって可能なんでしょうか?
調べてみてもそういう記述が見つからなかったので・・・
ちなみにUnityのバージョンは5.0.4です
(他の方法がありましたらご指南いただければ幸いです m(_ _)m)
- 686 :名前は開発中のものです。:2015/12/20(日) 22:06:52.53 ID:Sx2eIhW1.net
- unity5.3を32bitVistaで起動させる方法ってないですかね?
- 687 :名前は開発中のものです。:2015/12/20(日) 22:26:27.37 ID:oUuZ6MJB.net
- >>686
動作環境がWindows7 SP1以上とあるから無理
- 688 :名前は開発中のものです。:2015/12/21(月) 01:03:14.21 ID:HVuMnboW.net
- Unityで2Dの横スクロールアクションゲームを作っています
乗ると流されるコンベアのようなギミックを作りたいのですが
transform.Rotateで回転させても、スプライトの画像だけが回転して
コライダー自体は回転していないようでした
このギミックを表現するにはどうしたらいいでしょうか?
- 689 :名前は開発中のものです。:2015/12/21(月) 02:20:26.38 ID:Ybtucx/E.net
- >>688
コリジョンもちゃんと回転はしてるはず。
boxコライダーを仮でつけてみたらわかると思う。
回転させてさらに座標も移動させないといけないよ。
オブジェクトは回転だけしても進まない。
物理で力を加えたら回転も移動もするけど、思い通りに動かすのはちょっと慣れないといけない。
- 690 :名前は開発中のものです。:2015/12/21(月) 12:27:34.28 ID:IMaaS1Ne.net
- >>665
MacOSX10.9.5を使っているけど
こっちも同じ文字化けする。
5.3.1にしても変わらないので5.2を使っている
- 691 :名前は開発中のものです。:2015/12/21(月) 16:19:18.73 ID:00UsknoA.net
- Resourcesファイルにcsソースを入れた場合使えなくなるの?
Resourcesファイル内のプレハブとセットでcsソースを一緒に入れれば
見やすいからそうしたいんだかどうなの?
- 692 :名前は開発中のものです。:2015/12/21(月) 17:26:44.93 ID:76aWrUGL.net
- android6.0に対応させるにはsdkマネージャーから6.0をダウンロードしたら自動で反映されるのでしょうか?
playerSettingを見ると選択できないのでうまくできてないように思えますが何かほかの手順が必要ですか?
- 693 :名前は開発中のものです。:2015/12/21(月) 20:06:33.52 ID:jcVDj2Nz.net
- すみません音の再生についての質問です。
リバーブのかかった音源を以下の様にループさせたいと思っています。
時間の流れ→
音音音残響
□□□音音音残響
□□□□□□音音音残響
ループするべき長さ(length)はわかっているのですが、
このlengthのタイミングでループする方法と、ループした時に過去の音を消さない方法がわかりません。
よろしくお願いします。
- 694 :名前は開発中のものです。:2015/12/21(月) 21:04:53.33 ID:r9cjdiXD.net
- 音源にリバーブが含まれてるならどうしようもないだろ
- 695 :名前は開発中のものです。:2015/12/21(月) 21:11:41.51 ID:FIXEWsvQ.net
- DTMスレかと思ったらUnityスレだった。自作BGMならループ先にも残響音が含まれるように完全ループで作るしかないけど素材なら無理だろ。
あと洋ゲーやれば分かるけどきっちりループするBGMが流れるのって和ゲーやチップチューンくらい。
残響とか含まれてるインストゥルメンタル音源はきっちりループせずにアウトフェードしてからまた最初からってのが普通だよ
- 696 :名前は開発中のものです。:2015/12/21(月) 21:12:18.18 ID:4ywppTKb.net
- >>693
AudioSourceをいくつも作って再生するんじゃダメなん?
- 697 :名前は開発中のものです。:2015/12/21(月) 21:24:15.40 ID:CnyXX6yb.net
- >>693
そういうことしたいんなら、イントロからループ直前までのファイルと
ループする部分のファイル2つに分ける
で、最初にイントロからループ直前まで流してメインファイルに切り替えて
あとはループさせる
これなら残響音あっても成り立つ
Unityで出来るかは知らんが
- 698 :名前は開発中のものです。:2015/12/21(月) 21:31:45.60 ID:fSY+Htxz.net
- >>691
Resourcesは入れたデータそのものが入る場所だからソースコード入れてもソースのママだぞ、コンパイル対象にならんのだ
- 699 :名前は開発中のものです。:2015/12/21(月) 22:01:15.53 ID:VTzw7brd.net
- >>693
単純に>>696が正解、5からは無料で便利なAudio Mixerが使える
- 700 :名前は開発中のものです。:2015/12/22(火) 00:36:17.24 ID:WeDSI8vw.net
- テキストファイルを独自拡張子で扱いたいのですができますか?
text.luaとかにしたいです
- 701 :名前は開発中のものです。:2015/12/22(火) 01:05:48.40 ID:OzXRBG3G.net
- 今androidで色々テストしてるのですがわからない事があります
今簡単なアニメーションをanimationウインドウで作ってオブジェクトを
動かしてるのですがunity上で実行しても普通に表示されるのですがandroid上で
実行させたらオブジェクトが表示されなくなります
動かすアニメーションと止まっているアニメーションを交互に作動させてるのですが
動いてる方でオブジェクトが消えます
つまり点滅状態になってる状態です
これは一体どういう事なんでしょうか?
- 702 :名前は開発中のものです。:2015/12/22(火) 07:35:05.53 ID:DtR0hO5a.net
- >>700
http://docs.unity3d.com/ja/current/Manual/class-TextAsset.html
もちろんオフィシャルのドキュメント見た上での質問なんだよね?
もしかしたら StreamingAssets ならできる気もしなくもないけど、やったことないからわからん
- 703 :691:2015/12/22(火) 11:00:12.63 ID:ctbQFKPU.net
- >>698
Resources内のデータはコンパイル対象にならないから
csソースは使えないってことでOK?
- 704 :665:2015/12/22(火) 16:03:42.05 ID:s/N9NPNk.net
- 返答が遅くなりまして、申し訳有りません。
直ぐに試せる事は実行してみたのですがダメでした...
幾つかは試せないでいます
>>666
英語ですよね...
海外サイトでのショッピング程度の英語力しかないので試していません...orz
>>667
システムフォントを変更するアプリ有るのですが、失敗するとマトモに起動しなくなるというので、これも試していません
>>668
アセットととして、編集画面の文字を買えるという事ですが効果無しでした...
>>669
v5.2は大丈夫です。
同じiMacでブートキャンプ上(win10)のUnity(つまりwin版)はv5.3.0問題なく動くので、ハードではなくOSの問題なんでしょうね...
じゃあ、win版使えよと言われそうですが、iPhone実機確認が必要なのでMacの方が良いのです
>>690
当方も5.3.1試しました。ダメでした...
5.2ですと、自分的に目玉機能のWebGLに書き出せないですよね...
暫くバージョンアップ待つしか、OSを10.11.2にするしかなさそうですね
- 705 :名前は開発中のものです。:2015/12/22(火) 16:16:51.81 ID:cYA+N/u4.net
- >>703
Resourcesフォルダに入れたものは生のデータとして扱われるからコンパイルが必要なものは入れても意味が無いのだよ。
Resources,Plugins,Standard Asset,Streaming Assetsの4つのフォルダは扱いがそれぞれ特殊なんでちゃんとドキュメント読んで理解しないとめんどくさい事になるよ
- 706 :名前は開発中のものです。:2015/12/22(火) 17:25:20.37 ID:ZXsrrg+T.net
- 5.3からAndroidのナビゲーションバー強制非表示になったけど、なんとかして出す方法ってある?
AndroidManifestのthemeとかいじってみたんだけど変わらなくてお手上げなんだ……。
- 707 :名前は開発中のものです。:2015/12/22(火) 18:37:36.49 ID:ctbQFKPU.net
- >>698 >>705
サンクス
助かる
- 708 :名前は開発中のものです。:2015/12/22(火) 18:41:28.75 ID:ctbQFKPU.net
- 動的にプレハブのオブジェクトを生成して
そのオブジェクトにCanvasのサイズなど
上の階層のデータを取得する方法を教えて下さい
宜しくお願いします
- 709 :名前は開発中のものです。:2015/12/22(火) 23:37:31.20 ID:J2VSDia0.net
- >>708
ようわからんが ヒエラルキー上の親はtransform.parentですよ。
なんでCanvasの直接の子なら
RectTransform rect = transform.parent.GetComponent<RectTransform>();
Debug.Log(" width :" + rect.rect.width);
それ以外なら
RectTransform rect;
void Start () {
rect = GameObject.Find("Canvas").GetComponent<RectTransform>();
Debug.Log(" width :" + rect.rect.width);
}
とかにしておけばいいんじゃないか。
- 710 :名前は開発中のものです。:2015/12/23(水) 00:17:07.19 ID:mn9r6TJY.net
- >>689
ご回答ありがとうございます!
コリジョンの回転は自分の誤解でした
現在はOnCollisionStay2Dでプレイヤーを動かしてとりあえず形としては解決しました
座標の移動という方法も調べてみたいと思います
- 711 :名前は開発中のものです。:2015/12/23(水) 02:45:27.25 ID:qUs7Km3p.net
- PC用にビルドしたアプリケーションが起動出来ないのですが原因をどなたか知らないでしょうか…?
他の人にゲームを配布してプレイしてもらったところ無事に起動からゲームまでスムーズに出来ているようなのですが、自分のPCだと起動の辞典でできません。
exeファイルをダブルクリックしても読み込み状態を延々と続けたままになってしまいます
- 712 :名前は開発中のものです。:2015/12/23(水) 02:53:39.96 ID:BgHDeNsk.net
- そんな古い壊れたパソコンは買換えような
- 713 :名前は開発中のものです。:2015/12/23(水) 03:52:47.89 ID:6SUXlka0.net
- >>706
http://docs.unity3d.com/ScriptReference/Screen-fullScreen.html
これをfalseにすればいい
Android4.2までしか持ってなくて指摘されるまで知らなかったよ…
- 714 :名前は開発中のものです。:2015/12/23(水) 04:22:31.95 ID:qUs7Km3p.net
- >>712
ゲーミングPCなのでスペック的もそこまで悪くないはずですが…
- 715 :名前は開発中のものです。:2015/12/23(水) 16:04:13.12 ID:qUs7Km3p.net
- 自己解決しました
原因はアイコンに使っていた画像だったようです
その画像を削除してみたところ無事に起動することができました
それでも自分のPCでは起動できないのに他人のPCでは起動できるのは未だにわかっていません…
- 716 :名前は開発中のものです。:2015/12/23(水) 18:00:46.62 ID:mpmfVyIv.net
- ゲーミングPCをうたってるやつなんて、
スペックに無知な奴を騙すためにところどころ変なパーツつけてるぞ
20万円のPCに350Wの電源が付いてたなんて珍しくない
あんまり信用するなよ
- 717 :名前は開発中のものです。:2015/12/23(水) 18:09:27.31 ID:H0W75H/X.net
- そのアイコン復活させるとまた同じ症状出る?
- 718 :名前は開発中のものです。:2015/12/23(水) 18:48:49.94 ID:qUs7Km3p.net
- >>717
同じ症状でます
- 719 :名前は開発中のものです。:2015/12/23(水) 19:30:41.11 ID:eV/cz9Fn.net
- 非同期処理について質問です。
WWWクラスでサーバのAPIを叩いて、進行に必要なデータを取ってこようとしています(シナリオテキストとか)
─────────────
private string url = "http://hoge.com";
public void Request<T>(Action<string> finalStep)
{
WWW www = new WWW(url, form); //formはWWWFrom。略
StartCoroutine(WaitResult<T>(www, finalStep));
}
private IEnumerator WaitResult<T>(WWW www, Action<string> finalStep)
{
while (!www.isDone)
{
if (!String.IsNullOrEmpty(www.error))
{
yield break; //エラー処理を追加
}
else if (StartTime.AddSeconds(timeoutSec) < DateTime.Now)
{
yield break; //タイムアウト処理を追加
}
yield return null;
}
finalStep(www.text);
yield return null;
}
─────────────
呼ぶ方は終わった時の処理をデリゲートで渡す感じにしようと思っていますが、
こういう感じの実装って違和感無いでしょうか。
ぐぐってもいまいち出てこなかったんですが、他に王道のやり方ってありますか?
- 720 :名前は開発中のものです。:2015/12/23(水) 20:19:50.71 ID:ex60S9BN.net
- >>719
WWW使うなら概ねそれで問題ないと思う
通信前にApplication.internetReachabilityをチェック
WWWはIDisposableを実装してるからusingステートメントを使う
WWW.errorのチェックはループ抜けた後でいいかも
- 721 :名前は開発中のものです。:2015/12/23(水) 20:42:37.42 ID:eV/cz9Fn.net
- >>720
ありがとうございます!
usingすごく参考になりました
errorについてはググってみたんですが、
どうもエラー終了した時にisDoneがtrueになってくれないようです
- 722 :名前は開発中のものです。:2015/12/23(水) 22:49:24.68 ID:rlZZyGW6.net
- >>721
試してみた、問題の部分は以下の通り
while(!www.isDone){
if(!string.IsNullOrEmpty(www.error))
Debug.LogError(www.error);//エラートラップA
yield return null;
}
if(!string.IsNullOrEmpty(www.error)){
Debug.LogError(www.error);//エラートラップB
}else{
Debug.Log(www.text);
}
パターン1:存在しないURLに接続(404)
パターン2:回線抜いた状態で接続
パターン1,2共にAではなくBで引っかかったのでループ抜けた後でおkだと思うんだが…
- 723 :名前は開発中のものです。:2015/12/23(水) 23:11:12.20 ID:eV/cz9Fn.net
- >>722
ありがとうございます
マニュアルとか読み直してたんですが、
isDoneとerrorの関係に関する資料がないんですよね…
ちょっとそれでやってみます!
- 724 :名前は開発中のものです。:2015/12/24(木) 01:24:08.84 ID:fVyPsAlC.net
- 全くの初心者なのですが、unityで作られた海外産のゲームをどうにかして日本語化することは出来ませんか?
- 725 :名前は開発中のものです。:2015/12/24(木) 02:50:08.08 ID:9xWq61T/.net
- 作者が日本語化を想定しないで作ったゲームを日本語化できる
超便利機能がUnityにあるかと言うことなら
そんなものはない
- 726 :名前は開発中のものです。:2015/12/24(木) 03:00:15.31 ID:b6nnDWP+.net
- どうにかしてってレスの時点で草生えるw
- 727 :名前は開発中のものです。:2015/12/24(木) 03:00:54.91 ID:6r6456TK.net
- ゲームに限らない話だけど、フレームワークによっては
文字列を外部ファイルに置いて読み込むのがスタンダードになってるものもあるらしいけど
Unityは、少なくとも標準ではそうじゃないからねぇ
- 728 :名前は開発中のものです。:2015/12/24(木) 03:17:36.09 ID:fVyPsAlC.net
- 文字列を日本語にしてフォント入れればどうにかなると思ってましたが甘かったようです
assetsファイルを開いたりしても見つからなかったので聞いてみたんですが駄目みたいですね…
ありがとうございました
- 729 :693:2015/12/24(木) 03:49:11.47 ID:1lQtknuT.net
- >>694 >>695 >>696 >>697 >>699
遅くなりましたが回答ありがとうございました。
一応AudioSourceを複数用意して、ループのタイミングでもう一つという方針にしてみようかなと思います。
ただ、正確にn秒後に再生という処理がUnityでどうやるのか、ちょっとわかりません
- 730 :名前は開発中のものです。:2015/12/24(木) 07:47:12.45 ID:0vOVQYTb.net
- Androidアプリで文字入力する際に画面全体が縮小されて
Unityデフォルトの青い背景が丸見えになっとる
いつの間にこの仕様になったのか知らんけど、この挙動やめれないかな?
- 731 :名前は開発中のものです。:2015/12/24(木) 08:48:36.09 ID:8tygBO8v.net
- >>729
再生中のAudioSourceは現在の再生タイムを取れるはずだから、それをUpdateなりで監視してループのタイミングで再生すればいいんじゃない?
- 732 :名前は開発中のものです。:2015/12/24(木) 13:12:26.08 ID:DmqVAdXz.net
- ユニティちゃんのCRSではanimationイベントを利用してaudio.play()呼び出してタイミング合わせてるね
- 733 :名前は開発中のものです。:2015/12/24(木) 14:29:48.87 ID:5azEH8wD.net
- PUNのPhotonViewによるオブジェクトの表示を同期するやり方が分かりません
マスタークライアントが置いたオブジェクトを、他のプレイヤーの画面でも表示したいです
オブジェクト(Prefab)を作りのコンポにPhotonViewを追加
↓
オブジェクトのコンポにPhotonTransformを追加
↓
PhotonViewのObserverにPhotonTransformをアタッチ
↓
ルームに入ったあとマスタークライアントか判定してマスタークライアントならオブジェクトをInstantiateしてシーンに置く
上記方法をやってもマスタークライアント意外のプレイヤーの画面に表示されませんでした
間違いがあれば、教えて下さい
- 734 :名前は開発中のものです。:2015/12/24(木) 15:12:15.83 ID:J+FUoPhB.net
- prefabはresourcesに、みたいなのなかったっけ
エラーとか出てない?
- 735 :名前は開発中のものです。:2015/12/24(木) 15:38:51.33 ID:6r6456TK.net
- 重力をあれやこれや弄りたいとかで
重力処理を自前での実装しなきゃならんとする。
とりあえず通常の重力と同じ挙動をさせたいとき
やり方って以下の方法で問題ないよね?
試した限りでは通常の重力と同じように動いて見えたが、細かい挙動はよくわからん
1. useGravityやgravityScaleを調整して重力の影響を無効化
2. Physics.gravityやPhysics2D.gravityの値(Vector3型/Vector2型)を取ってくる
3. FixedUpdate()の中でAddFoce()する。
- 736 :名前は開発中のものです。:2015/12/24(木) 15:40:43.89 ID:5azEH8wD.net
- >>734
エラーは出ません
マスタークライアントの画面には正常に表示されます
PUNによる同期しないのであれば何の問題もないです
なので単にPhotonViewによる同期ができてない(手順ミス、やり方が間違っている等)のかと思います
- 737 :名前は開発中のものです。:2015/12/24(木) 16:34:10.56 ID:V8y/g7ct.net
- >>735
AddForce()するのはいいがForceModeによっては全然違う動きになる事に注意
デフォルトはForceMode.ForceだからForceMode.Accelerationを明示的に指定しないとダメだと思うぞと
- 738 :693:2015/12/24(木) 19:12:31.14 ID:1lQtknuT.net
- >>731
Updateのタイミングだと精度が低くて、
結構ずれずれなので、どうしゆかなーという感じです
- 739 :名前は開発中のものです。:2015/12/24(木) 20:19:25.62 ID:USbMBm3z.net
- >>738
targetFrameRate の値を上げる、もしくはFixedUpdateの分解能を上げても遅延が気になるならUnityの標準機能だけじゃ難しいかもね
- 740 :名前は開発中のものです。:2015/12/24(木) 20:31:55.51 ID:3F4M1Qd0.net
- 4.6から5への移行です
再生中、rigidbodyのついたGameObjectをSetActive(false)するメソッドが実行されると、
エディタごと落ちます。ログもエラーも出ません。
5のrigidbody関係で、ヒントでも些細なことでも何でもいいので情報くださいませ。
5のrigidbody周りは大量のバグが報告されていて、これもうゲームを作るとか以前の根本的な問題になってきそうなんですけど・・・w
- 741 :名前は開発中のものです。:2015/12/24(木) 22:28:33.63 ID:V8y/g7ct.net
- >>738
それ多分呼ぶタイミングの問題じゃなくて呼んでから再生されるまでの遅延の問題じゃない?
- 742 :名前は開発中のものです。:2015/12/25(金) 01:15:39.54 ID:8Iucprok.net
- マウスでクリックした画面上のゲームオブジェクトの座標やらスプライトやらの
情報を取得する方法って
・オブジェクトにButtonコンポをつけてOnClick()を使ってとる
・RayCastでとる
の2つが考えられるとおもうんですが、どっちが良いとか
どういう風に使い分けるべきとか、アドバイスが欲しいです
個人的にはButtonだと色んなオブジェクトにつけて回る必要があるし
付け忘れるとバグるので、RayCastで取る方がいいのかなと考えてますが、正しいですか?
- 743 :名前は開発中のものです。:2015/12/25(金) 03:02:56.40 ID:zmf0jnn8.net
- >>742
全然違うw
全く理解してないようなので説明しとく
まずRaycastには以下の3種類がありそれぞれ対象が異なるが、対象となるコンポーネントがないと反応しないのはどれも同じ
Physics.Raycast →Collider(3D)
Physics2D.Raycast →Collider2D
EventSystem.RaycastAll →uGUIのGraphic
そしてButton.onClickは全く層が違う、これは連続してRaycastした結果によるコールバックだ
ButtonコンポーネントはuGUIのコンポーネントなのでGraphicRaycasterが継続的にRaycastを行い、その結果クリックされたと評価された場合にUnityEvent型の変数であるButton.onClickのInvoke()がコールされるという流れ
またButtonはステート間のトランジション等の機能なども有していてとても冗長だからボタン以外の用途に使うなw
単純にスクリーン座標にある何かを取りたければ3種のRaycastのいずれかひとつ又は複数を使えばいい
2D/3D/uGUIは完全に分離して考え別々に扱うこと
画面上で重なって見えるのは構わんが同列に扱ったりコンポーネントを混ぜるのは論外
Button.onClickとRaycastと並列に扱う事自体的はずれにも程があるってぐらいおかしいのよ
- 744 :名前は開発中のものです。:2015/12/25(金) 05:00:02.85 ID:8Iucprok.net
- >>743
ありがとうございます
ButtonのOnClickって内部的にはRayCastを飛ばして評価してるって事ですか?
- 745 :ネットワークエンジニア(プロ)です:2015/12/25(金) 08:40:29.64 ID:lbZ74yN6.net
- >>733
instantiateはunityのapiじゃなくて、photonのapiを使ってる?
- 746 :693:2015/12/25(金) 08:52:05.37 ID:A95/sZ+u.net
- >>739
>>741
ありがとうございます。
FixedUpdateの周期上げるのは負荷になりそうな気もしますね。
UpdateでPlayするタイミングを上手く指定出来るん?
- 747 :名前は開発中のものです。:2015/12/25(金) 09:40:11.41 ID:zmf0jnn8.net
- >>744
Canvasに一緒についてるRaycasterコンポーネントを殺してみればわかると思うがタッチ/マウス関係は一切反応しなくなる
これはこいつがRaycastして対象を取得してるからだよ
>>746
どの程度の遅延をズレズレと言ってるか次第だが例えば以下のコードでまずは音のズレを確認する、ここで遅延してても気にしないが聞き取りにくいならここでBの再生開始フレームを調整
次に30→31の様にBの再生タイミングを1フレームずらして書き換えて再度確認、最初の時と比較して再生タイミングに大きなズレを感じられる耳を持ってるなら1フレーム分の遅れが問題
2回の試行で同じようにズレてると感じるなら再生時の遅延の問題と判断できる
void Update(){
if(Time.frameCount==10)
audioA.Play();//比較基準用に鳴らしておく
if(Time.frameCount==30)//30という数字に意味はない
audioB.Play();//これのタイミングをチェック
}
Unityで音ゲー作ってる人なんかはこの再生の遅延の問題には苦労してる人が多いみたいでちょっとググっただけでも対策やらノウハウやら山ほど出てくるぞ
Android実機での遅延問題が大きいのでこの情報が多くなるが日本語の情報だけでも少なくないのでまずはこの辺調べてみるのがいいと思う
- 748 :名前は開発中のものです。:2015/12/25(金) 14:59:20.96 ID:qIHjPLip.net
- >>737
ありがとう、そういえばそうだった
手打ちだったかわ忘れてた
すげぇ今更だけど
ForceMode2Dの方にAccelerationやVelocityChangeは無いんだな
- 749 :名前は開発中のものです。:2015/12/25(金) 17:56:33.86 ID:B+X3y53z.net
- どれにもあたってない場合の判定ってどうやればいいんでしょうか
マップチップでマップを作る2Dアクションで、地面との接地判定でジャンプ可否をできるようにしたいんですが
地面を1チップ毎に判定を用意し
キャラクターの足元にisTriggerで接地チェック用の判定を用意しました。
足元判定側からOnTriggerExit2Dを呼び出して離れた瞬間にチェックするようにしてましたが
地面接地したまま横移動した際に、前乗っていたブロックから判定が外れる際にも呼ばれてしまい、接地フラグが一瞬空中判定になってしまいます。
考え方が悪いのか、複数対象に対しての判定チェック方法があるのか、アドバイスお願いします。
- 750 :名前は開発中のものです。:2015/12/25(金) 18:18:19.95 ID:CtbAOxqw.net
- 接地フラグを用意すればいい
接地したらON、ジャンプしたらOFF
- 751 :名前は開発中のものです。:2015/12/25(金) 18:25:31.75 ID:pherXl+8.net
- >>749
タグ付けといてコリジョンのタグが地面だったら、とかにすればいいんじゃね
- 752 :名前は開発中のものです。:2015/12/25(金) 18:28:41.29 ID:CtbAOxqw.net
- あ、これだと落ちるとき困るのか
- 753 :名前は開発中のものです。:2015/12/25(金) 19:10:58.52 ID:CtbAOxqw.net
- 下方向に速度があれば落下中と判断するとか
- 754 :名前は開発中のものです。:2015/12/25(金) 19:35:12.48 ID:pherXl+8.net
- そうか、ブロックってそういうことか。だったらコライダーのリスト作って
EnterしたらAdd,ExitしたらRemoveしてCountがゼロになったらどこにも当たってない、
とかでいいんじゃね
- 755 :名前は開発中のものです。:2015/12/25(金) 20:25:54.70 ID:cUBPDpkG.net
- >>754
ありがとうございます、接地カウントの方法ならいけそうです、早速試してみます。
- 756 :名前は開発中のものです。:2015/12/25(金) 20:35:39.90 ID:LAUwLpIR.net
- 接地判定だけならリスト持たんでもintでカウントしておけばいいような気がする
- 757 :名前は開発中のものです。:2015/12/25(金) 20:50:53.23 ID:pherXl+8.net
- 単純なカウントで大丈夫そうならそれでもいいし
何かうまくいかないようならContainsで確認してAddすればいいかなと。
リストが長くなるとアレだけど数個程度までならそれほど負荷にもならないだろうし
- 758 :名前は開発中のものです。:2015/12/25(金) 21:04:29.26 ID:LAUwLpIR.net
- 多分だが以下の様な事が発生してるんだと思うんよ
ブロックAからBへ移動する際のboolとintの挙動の違いを処理の発生順を下図1→3の順に追って考えてみる
なお括弧内はbool/intのその時点での値
→123→
┌─┬─┐
│A│B│
1. Aに立ってる(true/1)
2. BにEnterしAB両方に接触(true/2)
3. AからExit(false/1)
この場合boolだと3の位置で次の地面CにEnterが発生するまで空中判定になるがintなら0にはならないから常に接地状態であると判定できる
だからintでいいんでないかなと思う
- 759 :名前は開発中のものです。:2015/12/25(金) 21:37:23.33 ID:qiT6tQcX.net
- 空中かどうかの判定はジャンプや落下(下方向の判定がなくなったとき)にフラグ持たせて、
ジャンプはジャンプ、接地は接地で処理を考えたほうが柔軟でいいんじゃないかな
これならジャンプ中や落下中に横から接したときの挙動もとりやすい
- 760 :740:2015/12/25(金) 22:05:34.23 ID:FiwShDy7.net
- もっとヤバイバグだった
gameObjectの1番使用頻度の高いあるメソッドを特定の呼び出し方をするだけで100%クラッシュする、、、
報告上がってんのに中の人もスルー&沈黙www
一ヶ月たつけどもう開発会社何社か潰れてんじゃねーかな、、、w
- 761 :名前は開発中のものです。:2015/12/25(金) 22:36:35.86 ID:LAUwLpIR.net
- >>760
質問じゃないなら本スレ行けよw
外部エンジン使ってる以上エンジン側にバグが混入するのなんか折り込み済みなのが普通だし、進行中のプロジェクトで安易にエンジンのバージョンをあげる事はあり得ない
実際仕事では未だ4.6も現役だし5系もバージョン違いで2つ入れてある
バージョン管理使わないというのもあり得ないから5に移行するにしてもブランチ切ってあるだろ
そういう最低限の安全対策も取れない所ならバグがなくても潰れるから安心していいw
勿体ぶった言い方をして煽るのは結構だがその程度で会社が潰れるとか言ってると素人丸出しで全く説得力がなくなるから気をつけた方がいいぞ
- 762 :740:2015/12/25(金) 22:50:32.61 ID:FiwShDy7.net
- わかった気をつけるw
- 763 :名前は開発中のものです。:2015/12/25(金) 22:51:19.10 ID:UeCgI7Yq.net
- 5系4つ入れてるw
Androidのresフォルダが認識しないという壮絶な不具合あったときは胃がおかしくなるかと思ったよ
- 764 :名前は開発中のものです。:2015/12/25(金) 22:57:43.03 ID:GE3m8j15.net
- 今晩は。ちょっと聞きたいのですが
メッシュの動的生成をしていてmesh.colorsに
適当な値をセットしても反映される様子がありません。
もしかしてstandard shaderでは設定しても反映されない?普通は反映される?
初歩的な質問で申し訳ありませんがよろしくお願いします。
- 765 :名前は開発中のものです。:2015/12/26(土) 00:48:46.66 ID:d/yX6nUB.net
- そのままでは反映されない。
シェーダにちょっと書き足す程度で反映されるようになるよ。
- 766 :名前は開発中のものです。:2015/12/26(土) 02:37:11.63 ID:DlkIHce8.net
- UnityでC#のコードを書いた場合、どういう仕組みでiOSやAndroidで動いているのですか?
今までどのプラットフォームのmonoもフリーウエアとして公開されていると思い込んでいたため不思議に思っていませんでした
しかし、monoのiOS/Android版にあたるものはフリーで公開されていないと知って驚いています
Uniryは一体どのようにこの有料の壁を乗り越えて動いているのでしょうか?
- 767 :名前は開発中のものです。:2015/12/26(土) 03:07:01.64 ID:Q61tu/ro.net
- Monoって.NET Frameworkの互換ソフトウェアのほうか
- 768 :名前は開発中のものです。:2015/12/26(土) 07:45:40.02 ID:iSBjtkxw.net
- ゲームの進行時間を「00:00(時間:分)」のフォーマットで出力したいんですが
// 経過時間を表示
timer_A.text = Mathf.Floor(time_A / 3600f).ToString() + " : " + Mathf.Floor((time_A / 60f) % 60f).ToString();
これだと「0:0」というフォーマットになってしまいます
「00:00」にするにはどうしたらいいでしょうか
- 769 :名前は開発中のものです。:2015/12/26(土) 08:34:57.65 ID:7/5f2376.net
- >>768
.ToString(
- 770 :名前は開発中のものです。:2015/12/26(土) 08:36:54.53 ID:7/5f2376.net
- なぜか本文が盛大に削られていた
しかも肝心な部分に入る前に・・・
>>768
ToString("00") で可能です。
- 771 :名前は開発中のものです。:2015/12/26(土) 08:52:48.72 ID:iSBjtkxw.net
- >>770
ありがとうございます、できました!
そんなオーバーロードがあったなんて知りませんでした
- 772 :名前は開発中のものです。:2015/12/26(土) 10:50:15.71 ID:raK1t1yt.net
- 一人称視点で、ダンボール箱の中から外を覗いているような感じにしたいんですが
ダンボール箱のモデル内にカメラを設置してもダンボールが透けて外が見えてしまうんですが
どうすればいいでしょうか??一人称視点はできているとおもいます。
- 773 :名前は開発中のものです。:2015/12/26(土) 11:19:11.61 ID:hqMElhSq.net
- >>765
ありがとうございます。
なんとなく難しいなーと避けてたんですが
シェーダーのなかを眺めてみます。
- 774 :名前は開発中のものです。:2015/12/26(土) 11:44:01.40 ID:d/yX6nUB.net
- >>772
ダンボールの内側のモデルを作る。
もしくはシェーダをダブルサイデッドに書き換える
- 775 :名前は開発中のものです。:2015/12/26(土) 12:05:43.85 ID:J2t5CeZp.net
- >>766
普通にオープンソースなんじゃない?
Monoが有料という話がどこから出たのか知りたい
- 776 :名前は開発中のものです。:2015/12/26(土) 12:39:33.51 ID:I9x0dbOD.net
- >>774
ありがとうございます!
シェーダを変えたらできました!
- 777 :名前は開発中のものです。:2015/12/26(土) 12:51:11.14 ID:DlkIHce8.net
- >>775
確かにMono自体はオープンソースかつフリーで配られています
ただ、iOS向けの変換ツールやAndroid向けのランタイムは(体験版や機能限定版をのぞいて)有料のものしかないように見えてしまいますが・・・・その認識が間違えているのでしょうか
- 778 :名前は開発中のものです。:2015/12/26(土) 12:59:10.15 ID:d/yX6nUB.net
- その有料の変換ツールを作ったところに変換ツールが作れるなら
Unity内部で同じようなもの作っていても何の不思議もないのではなかろうかw
- 779 :名前は開発中のものです。:2015/12/26(土) 14:07:10.95 ID:DlkIHce8.net
- 不思議じゃないにしても現実にはどうやってるのか気になるな
- 780 :名前は開発中のものです。:2015/12/26(土) 14:18:30.39 ID:uHnSRUEn.net
- それゲーム開発板のUnityスレッドで聞いて
答えが得られると思ってたりする?
- 781 :名前は開発中のものです。:2015/12/26(土) 14:53:32.59 ID:d/yX6nUB.net
- 実際どういう手法で変換してるかはソースコードでも見るしかないよなぁ
Unityはそこまでは公開してないからどうにもならんが。
でもUE4なら全部公開してるからどういう手法が有り得るのかとかはアレ見ればわかるよ
- 782 :名前は開発中のものです。:2015/12/26(土) 15:28:42.44 ID:Qa7PpWsr.net
- >>766
最近だとIL2CPPという、名前の通り「monoのILをc++コードに変換する」技術が使われてる
あとは環境ネイティヴでコンパイルするだけ
変換方法の詳細は公開されてないけど、cppになったコード自体はxcode出力したら一応読めるよ。難読化状態だけど
- 783 :名前は開発中のものです。:2015/12/26(土) 16:08:33.20 ID:f8fQjKcC.net
- 5.3になってパーティクルシステム大きく変わったのか
いろんなアセットでエラー吐きまくる
定型的な修正手順とかあったら教えてくれ
5.2.4にしておくのが無難か
- 784 :名前は開発中のものです。:2015/12/26(土) 23:06:31.47 ID:DlkIHce8.net
- >>782
そういう仕組みだったのですか
ありがとうございます
不思議で仕方ありませんでした
- 785 :名前は開発中のものです。:2015/12/26(土) 23:21:29.31 ID:JOqtY8Wq.net
- それで納得すんのかよw
IL2CPPはUnity5で採用された技術でそれ以前だってiOS用には出力できたし
Androidの方はどうなるんだとかそのIL2CPPの中身はどうなってんだとか色々あんだろw
名前さえついてりゃ納得するってなんなんだよw
- 786 :名前は開発中のものです。:2015/12/27(日) 00:09:58.61 ID:YtOJwDdp.net
- 気持ちは良くわかるけど、どの段階でスッキリするのかは各々次第ってことだな
- 787 :名前は開発中のものです。:2015/12/27(日) 00:21:43.69 ID:QK+lQHzY.net
- 質問というか相談というか雑談というか
unityの非同期処理調べてみると、ライブラリがいくつかあるみたいなんだけど
みなさん何使ってますか
Spicy Pixel Concurrency Kit
https://www.assetstore.unity3d.com/#!/content/3586
Iterator Tasks is a iterator-based coroutine class library.
https://github.com/aiming/iterator-tasks
説明
http://www.slideshare.net/ppcchan/async-design-with-unity3d
- 788 :名前は開発中のものです。:2015/12/27(日) 00:54:30.77 ID:CnMTlenQ.net
- 設計についての質問なんですがRayCastがヒットしたオブジェクトの種類(タグ名)によって
個別の処理をしたいのですが、メッセージループみたいにまずRayCastがヒットしたオブジェクト種類を
判定するクラスを作って、そのクラスでswitch,case書きまくってオブジェクトのタグ名で判定して
切り分けた先のcase文の中でそれぞれの機能を提供するメソッドをコールするっていう設計は大丈夫でしょうか?
100近いcase文を書くっていうのが設計としておかしいのでは?と不安です
- 789 :名前は開発中のものです。:2015/12/27(日) 01:11:18.00 ID:V7RdG6Gy.net
- >>788
case文って基本的に上から条件探して降りてくるだけなので
100個もケースあるってことは100番目のケースに至る場合
100回if文を経由するのと同じになる。
たまに使われるものならともかく頻繁に使う処理としてはどうなんだろうな〜という
感じはする。
例えばだがそれに対する処理を定義するスクリプトを貼り付けておいて
ヒットしたらそれをGetComponentして実行する、とかの方が現実的ではないか、って気がする。
単純なものならSendMessageでもいい。
BaseClassで実行する関数を定義しておいて現状タグで判定して分けるその処理は
タイプに応じてオーバーライドする。
共通する処理の部分は小分けにしてBaseClass内でprotectedなりpublicなりで定義しておけばいいし。
- 790 :名前は開発中のものです。:2015/12/27(日) 01:30:25.19 ID:wK6DIH8G.net
- >>787
解答としてズレてるの承知ながらUniRxは一度試してほしいかな
- 791 :名前は開発中のものです。:2015/12/27(日) 01:53:26.74 ID:CnMTlenQ.net
- >>789
>例えばだがそれに対する処理を定義するスクリプトを貼り付けておいて
>ヒットしたらそれをGetComponentして実行する、とかの方が現実的ではないか、って気がする。
「ヒットしたらそれをゲトコンして」のあたりの具体的なイメージがよく分からないのですが
どうやってゲトコンするイメージでしょうか?
どの道Rayのヒット判定は必要ですよね?
すみません、ちょっとよく頂いたレスの内容が理解できていません
100近くもswitch,caseを書くのがまずい、(Rayヒット判定するクラスを)分割しろ、という事でしょうか?
- 792 :名前は開発中のものです。:2015/12/27(日) 02:00:06.23 ID:QK+lQHzY.net
- >>790
どもです
Unity勉強中で、大体材料揃ってきたので
今基幹技術?の選定中というか調査中でして…
UniRxって私の検索ワードでは出てきてなかったのでありがたいです!
- 793 :名前は開発中のものです。:2015/12/27(日) 02:18:25.85 ID:V7RdG6Gy.net
- >>791
例えばだが
RaycastHit hit;
if (Physics.Raycast(transform.position,transform.foward, out hit,100f)){
BaseClass bs=hit.transform.GetComponent<BaseClass>();
if(bs!=null)bs.MethodA();
}
とかやるってこと。
対象に貼り付けておくスクリプトはBaseClassから派生して自分にあった
MethodA()をオーバーライドしておく。
100もcase文を書くのがまずいかどうかは正直わからんといえばわからん。
ただ100番目のケースに至る場合caseの条件を100回確かめることになるのは確かだ。
それ自体が頻繁に呼び出されることもなく100番目のケースが呼ばれることはめったにない、
ほとんどは10番目くらいまでで終わるというならそれほど悪くはないかもしれない。
ソースがまとめて見れるしそれぞれの処理がそれぞれのスクリプトにばらけてしまうのはいやだ、
というのもわからいではないしね。
他にもやり方は考えられてこれまた例えばだが
case文に入れていた処理を関数化し配列化したDelegateにそれぞれ格納しておいて
RayCastでヒットさせる対象の方には自分のタイプ番号をintで返すメソッドをもつスクリプトを張っておき
RaycastHit hit;
if (Physics.Raycast(transform.position,transform.foward, out hit,100f)){
ReturnNumClass rn=hit.transform.GetComponent<ReturnNumClass>();
if(rn!=null)this.delegateArray[rn.ReturnMyType()]();
}
とかもありえる。まぁ色々やり方はあるってことだ
- 794 :名前は開発中のものです。:2015/12/27(日) 02:34:14.82 ID:CnMTlenQ.net
- >>793
なるほど・・・なんとなくですが分かりました
ありがとうございました
- 795 :名前は開発中のものです。:2015/12/27(日) 03:10:37.82 ID:34BqQyRM.net
- >>794
もっとシンプルに文字列がKeyのdictionaryに関数登録して呼び出すのも有りな気もするけどね
- 796 :名前は開発中のものです。:2015/12/27(日) 03:17:30.52 ID:f6LeTzfn.net
- switchとif文の処理速度についてはリンク先でも見てもらうとして
速度的にどうか以前に100近いswitch casepubなんて読みにくいし修正が発生した時にイラっとすること請け合いだと思うぞと
http://blog.shos.info/archives/2014/08/csharp_ifswitchdictionary.html
Dictionary<string,Action>を持っておくとか、多態性やリフレクションを利用するとかやりようはいくらでもあるが何が適切かは場合によるので自分の設計にどれが合うのかを考える必要があるね
- 797 :名前は開発中のものです。:2015/12/27(日) 03:18:07.65 ID:f6LeTzfn.net
- なんかゴミが混入してるなすまん
- 798 :名前は開発中のものです。:2015/12/27(日) 03:20:45.91 ID:f6LeTzfn.net
- Dictionary使うのは実装は楽なんだが、デバッグ時に何が実行されるかを追うのが面倒になるのが難点
- 799 :名前は開発中のものです。:2015/12/27(日) 10:43:43.65 ID:V7RdG6Gy.net
- else if よりswitchの方が全然高速なのか…
c#のswitchってインデックス化とかで高速にそこに飛んでくれるのかね
- 800 :名前は開発中のものです。:2015/12/27(日) 11:11:28.72 ID:wK6DIH8G.net
- cでも多量のswitch caseは二分探索に最適化されるんじゃなかったかな
else ifはその都度式を評価しなきゃいけないからそういった最適化の恩恵はない
- 801 :名前は開発中のものです。:2015/12/27(日) 12:10:21.54 ID:ahWZwfbp.net
- ifは条件自体が自由に書けるから最適化が難しいでしょ
switchは特定の値に対する評価だけだから最適化ができる
難しい話じゃないって
- 802 :名前は開発中のものです。:2015/12/27(日) 14:37:50.96 ID:epPndMqw.net
- 動けばいいんだよHAHAHA
- 803 :名前は開発中のものです。:2015/12/27(日) 16:33:39.02 ID:B1P4IeWE.net
- switch (true)とかやると速度落ちたりするんだろか
- 804 :名前は開発中のものです。:2015/12/27(日) 18:09:47.53 ID:Sxb2mTUM.net
- 条件分岐のロスが気になるほどシビアな物を作ってるような人がこんな質問はしないと思う
- 805 :名前は開発中のものです。:2015/12/27(日) 18:13:04.62 ID:ARgWhBYv.net
- そんな心配する前にメッシュ削れよw
- 806 :名前は開発中のものです。:2015/12/28(月) 02:38:50.35 ID:NstlcfKx.net
- >>803
それコンパイル通るのか?
- 807 :名前は開発中のものです。:2015/12/28(月) 04:51:03.33 ID:Pj4ZdTwg.net
- >>806
他の言語だとたまにやる
C#で試したこと無いなぁ
- 808 :名前は開発中のものです。:2015/12/28(月) 16:12:45.29 ID:5m4m0qes.net
- お前らいい加減なこと書きすぎ。
switch文が高速なのはjump tableに置換されるから。
置換できるかどうかはcaseの値次第。
置換できない場合はifとほぼ変わらない。
結果に偏りがある場合はifのほうが早くなる場合だってある。
- 809 :名前は開発中のものです。:2015/12/28(月) 16:14:56.75 ID:GoZQ8Zcx.net
- 何時からここはプログラミング初心者スレになった?
- 810 :名前は開発中のものです。:2015/12/28(月) 16:23:07.37 ID:KEKC7hz1.net
- おら、ハナクソ共、Unityやろあが!
- 811 :名前は開発中のものです。:2015/12/28(月) 17:29:31.48 ID:OukfE9ES.net
- unity adsについて質問させてください。
unity adsを導入しようと色々と調べたのですが、zone IDというものがよく分かりません。
zone IDとは何なのでしょうか?
- 812 :名前は開発中のものです。:2015/12/28(月) 19:12:01.93 ID:DikpkNdf.net
- unity asd zoneid 設定
でグーグル先生にお尋ねしよう
導入してる人が記事書いてる
- 813 :名前は開発中のものです。:2015/12/28(月) 19:12:38.17 ID:KEKC7hz1.net
- >>811
zoneのIDだよ
クソゲーつくってろクソ
- 814 :名前は開発中のものです。:2015/12/28(月) 20:28:49.20 ID:YKwRuFXn.net
- unity5.1で作業しています。
アイテムをパッケージにするために、
exportするアイテムを選択し、"export package"にて出力しようとすると、
余計なスクリプトなど大量のアイテムを同胞してしまうのですが、
必要なもののみパッケージ化するにはどうしたらよいのでしょうか?
宜しくお願いいたします。
- 815 :名前は開発中のものです。:2015/12/28(月) 20:31:12.67 ID:GoZQ8Zcx.net
- これは酷い、export画面に出てる事さえ見えないとは
- 816 :名前は開発中のものです。:2015/12/28(月) 22:52:46.70 ID:/VhMFQaE.net
- プロジェクトで使われているアセットを全て知りたいんですが、方法ありますか?
画像縮小などしてapkのサイズを減らそうと思ってます
- 817 :名前は開発中のものです。:2015/12/28(月) 23:40:27.10 ID:/VhMFQaE.net
- >>816
ログ見て自己解決
- 818 :名前は開発中のものです。:2015/12/29(火) 01:00:19.32 ID:vilgVuqi.net
- Unity adsって確か日本だとクリック先のアプリをインストールされた時のみ収入になるんだっけ?
日本だとってのが広告主を差してんのかデベロッパーを差してんのか忘れたけど
そのシステムで稼げる気がしないわ
- 819 :名前は開発中のものです。:2015/12/29(火) 01:16:36.17 ID:8MK5m2N1.net
- ほかのアプリで遊んでるときにUnity adsっぽい動画広告何度も見てるけど、
同じような広告しか表示されないんだよなぁ
動画広告だと広告主少ないんかな
- 820 :名前は開発中のものです。:2015/12/29(火) 15:01:29.56 ID:xC+0y6Z5.net
- カンファレンスでは1000再生あたり900円ぐらいって言ってたような気がするけど・・・・
本当にゲーム中にCMを見てほかのアプリをインストールする奴なんているのかな?
- 821 :名前は開発中のものです。:2015/12/29(火) 16:53:16.17 ID:MwwfXlWw.net
- アプリのジャンルにもよるんだろうな
放置ゲーやクソゲーだと次を求めて
インストールしそう
- 822 :名前は開発中のものです。:2015/12/29(火) 19:53:28.86 ID:LD9Kqi6/.net
- BaseInputModuleのProcessって1フレーム内に何度も呼び出されたりすることあるの?
- 823 :名前は開発中のものです。:2015/12/30(水) 05:15:37.64 ID:fyUMlbjJ.net
- parent
└Image
└Image
└Text
└Text
というオブジェクトをフェードアウトして消去したいんですが、
全てのコンポを取得→取得したコンポをループで一つ一つアルファ値を小さくしつつa=0になったらDestroy
という方法が一番簡単ですか?
正直かなり面倒臭いと思ってしまうんですが・・・
もっと簡単な方法があれば教えて頂きたいです
- 824 :名前は開発中のものです。:2015/12/30(水) 05:46:08.12 ID:yZjjFJoC.net
- 親がcanvasなら親のアルファをいじれば子も一括で透明にならなかったっけ?
- 825 :名前は開発中のものです。:2015/12/30(水) 06:04:24.27 ID:yZjjFJoC.net
- ごめん、
Canvas
└parent ←<CanvasGroup>をAdd Component
└Image
└Image
└Text
└Text
これでparentのCanvasGroupのアルファをいじれば子まで一括でいけるはず
- 826 :名前は開発中のものです。:2015/12/30(水) 06:16:03.79 ID:yZjjFJoC.net
- 追記
ご存知かもしれないが、parentをDestroyすれば子も一気にDestroy
- 827 :名前は開発中のものです。:2015/12/30(水) 06:23:49.90 ID:fyUMlbjJ.net
- >>826
消すのはParentを消せば子や孫が消えるのは知っていましたが
CanvasGroupという存在自体を知りませんでした
早速、試してみたいと思います
ありがとうございました!
- 828 :名前は開発中のものです。:2015/12/31(木) 15:28:19.78 ID:6ePW5QgQ.net
- UnityというかC#の質問かもしれない。
class Foo : MonoBehaviour
{
Bar bar;
}
上記のようなコードがあり、とあるゲームオブジェクトにアタッチされているとする。
シーン終了時、このゲームオブジェクトは破棄されるが、
次のシーンがロードされる「前」に、確実に bar の終了処理を行いたい。
このとき、どう記述するのがスマート?
Foo.OnDestroy()で bar.~Bar() を呼び出すとか?
- 829 :名前は開発中のものです。:2015/12/31(木) 15:48:40.40 ID:lR9Sg0TA.net
- >>828
終了処理の内容とはなんぞや?
シーンが変わったらデータのシーンまたぎのなにかテクニックを使わないと
そのデータは破棄されるのだから終了処理の意味なくね?
- 830 :名前は開発中のものです。:2015/12/31(木) 15:49:01.87 ID:VmfXNO6C.net
- http://docs.unity3d.com/ja/current/Manual/ExecutionOrder.html
基本的にはOnDestroy()から終了処理を実行するのがいいかと
デストラクタは明示的に呼ばない方がいいと思うというか
呼べたっけ?
- 831 :名前は開発中のものです。:2015/12/31(木) 16:15:19.25 ID:6ePW5QgQ.net
- ストラクタって呼べないのか。
上手くイカなくて、やり方調べてたところだった。
OnCallerDestroy()みたいな名前の関数でも作ることにするよ。
ありがとう。
>>829
Bar内部にはstatic変数があって
シーン中にあるインスタンスを保持したり数えたりしてるので
それをうんにゃらって感じ
- 832 :名前は開発中のものです。:2015/12/31(木) 16:16:22.15 ID:tEu2s/Dr.net
- >>828
c#の一般的な終了処理の書き方は、
IDisposableインターフェースを実装してDispose()メソッドを"手動で"コールする。
using構文を使わない限り自動的には呼ばれないので注意。
- 833 :名前は開発中のものです。:2015/12/31(木) 16:21:28.72 ID:lR9Sg0TA.net
- >>831
俺がstatic変数を使う時はこうやってる
まずゲームの中央にGamemanagerというオブジェクトを作っててそれがゲーム全般の
制御をしてる
シーンが始まる時とか終わる時にそのGamemanagerがstatic変数を初期化したりする
つまりstatic変数はゲームの中にバラバラに置いたりしないでgamemanagerの
責任で扱う
- 834 :名前は開発中のものです。:2015/12/31(木) 16:48:37.03 ID:VmfXNO6C.net
- >>831
君には DontDestroyOnLoad() でシングルトンモデルな作りがあってると思うよ
- 835 :名前は開発中のものです。:2015/12/31(木) 18:10:31.01 ID:6ePW5QgQ.net
- >>834
ああ
必要に応じて OnLevelWasLoaded() あたりと併用して、か
- 836 :名前は開発中のものです。:2015/12/31(木) 18:33:40.99 ID:oIv0IaEY.net
- unityインスコしたらvisual c++ 2012 2013 2015 x64 x84 という似たようなのが大量に、あと.NET Frameworkなんとかも大量にインスコされたんですが、大丈夫でしょうか?
容量は気にしないんですけど
- 837 :名前は開発中のものです。:2015/12/31(木) 19:00:11.74 ID:M3mMmo7c.net
- 個人開発の序列: PC > スマホ |圏外| ゲーム専用機
http://wktk.2ch.net/test/read.cgi/ghard/1451518587/
ある人2 「 個人開発の ” 足引っ張り ” と言われるのが言わずと知れたUnityだけど、あれは
ロゴマークみたら閉じてる 」
ある人3 「 あ、スマホのアプリでそのロゴよく見るよ、たいてい糞ゲーw 」
- 838 :名前は開発中のものです。:2015/12/31(木) 20:48:51.53 ID:6ePW5QgQ.net
- あれ、OnLevelWasLoaded()って
DontDestroyOnLoadしてない状況だと、いつ呼び出されるんだろ
- 839 :名前は開発中のものです。:2016/01/01(金) 04:07:33.85 ID:hRsuwOyn.net
- ダブルクリック判定やりたくてTimeクラスとInput.GetMouseButtonDownあたりを
組み合わせてグダグダやってますが、上手くいきません
ダブルクリック判定って次作するしかないですよね?
- 840 :名前は開発中のものです。:2016/01/01(金) 06:26:40.55 ID:/Mp/WqLc.net
- UniRzに手を出してみようかなと思っているところだ
- 841 :名前は開発中のものです。:2016/01/01(金) 12:24:00.95 ID:9PLAaqhp.net
- Rxじゃなく?
- 842 :名前は開発中のものです。:2016/01/01(金) 12:44:03.43 ID:fknFJgiJ.net
- 抜粋というか有名なキチガイが
自分が建てたスレの自分の書き込みに
誘導したいだけだからな
スルー推奨で
- 843 :名前は開発中のものです。:2016/01/01(金) 15:27:34.87 ID:/Mp/WqLc.net
- >>841
おおっと、隣のキーを打ってたぜ
- 844 :名前は開発中のものです。:2016/01/01(金) 17:38:37.57 ID:HvJp8QYJ.net
- 人差し指だけで打ってそう
- 845 :名前は開発中のものです。:2016/01/02(土) 15:04:10.29 ID:cBHQ8r6V.net
- 法線軌道()さんチース
- 846 :名前は開発中のものです。:2016/01/02(土) 18:14:09.86 ID:ynmR063b.net
- Transform.RotateAroundが使用しないでくださいになってるんだけど、代わりのメソッドってある?
- 847 :名前は開発中のものです。:2016/01/02(土) 19:07:52.66 ID:28yRc3Md.net
- >>846
Quaternion使って計算しても数行ぐらいのものだろそれ、自分でユーティリティメソッドでも書いてみればいいんじゃね?
以下参考
A.中心点からみた対象Transformの相対位置を算出
B.Quaternion.AngleAxis()で回転を算出
C.対象TransformのpositionにB*A+中心点を代入
D.対象TransformのrotationにBを加算
- 848 :名前は開発中のものです。:2016/01/02(土) 20:16:22.47 ID:ynmR063b.net
- >>847
ありがとう
自分で書けってことなのね
- 849 :名前は開発中のものです。:2016/01/02(土) 22:25:54.87 ID:28yRc3Md.net
- >>848
わかって貰えて何より
ベクトルを回転させる方法は覚えておくと何かと便利だからきちんと意味を理解しながら書くといいと思うんよ
- 850 :名前は開発中のものです。:2016/01/03(日) 04:54:00.62 ID:CYs2j95G.net
- unity5だからかunity chanが落とせないらしい
他のも色々落としたけどアニメーションできない
- 851 :名前は開発中のものです。:2016/01/03(日) 05:23:45.44 ID:CYs2j95G.net
- ああイライラする
誰だよ使いやすいとか言ったの
- 852 :名前は開発中のものです。:2016/01/03(日) 10:47:15.84 ID:rVdoK+cb.net
- 質問内容はなにかな?
どのプラットフォームのどのバージョンで何をしようとして何ができないの?
- 853 :名前は開発中のものです。:2016/01/03(日) 12:09:49.87 ID:PXF6Y8xh.net
- >>850
互換性の問題が出る可能性の警告は出るけど無視して進めればインポートは出来るはずだよ
- 854 :名前は開発中のものです。:2016/01/03(日) 12:31:15.60 ID:nL7iKJaJ.net
- ToggleGroupの中で今選択されている値(name)を取得したいのですが
ActiveTogglesでforeachする以外に方法は無いのでしょうか。
Toggleにvalueが無いあたり、onChangeで検知するような思想に見えなくもないのですが
皆さんToggleの値を取る時どうやってますか
- 855 :名前は開発中のものです。:2016/01/03(日) 13:09:55.05 ID:9gYMsMki.net
- uGUIだよな?
Toggleの OnValueChanged にイベント登録すりゃいいんじゃないの
- 856 :名前は開発中のものです。:2016/01/03(日) 13:43:26.19 ID:nL7iKJaJ.net
- >>855
選択するのとは別のタイミングでその値をみようとしていて、
OnValueChangedですとstaticで選択値を一旦どこかに退避しておくようなイメージになると思うのですが
そうではなく、使うタイミングで選択値を取得したいと思いまして…
- 857 :名前は開発中のものです。:2016/01/03(日) 13:57:49.49 ID:9gYMsMki.net
- >>856
> OnValueChangedですとstaticで選択値を一旦どこかに退避しておくようなイメージになると思うのですが
まずこれが違うというかなぜstaticに?
イベントを受けて最後にONになってるToggleを判別・保持して
使うタイミングで取得すればいい
ToggleGroupにでもイベントメソッドをもつコントローラを追加して
そこを介する、とかやり方はいくらでもある
- 858 :名前は開発中のものです。:2016/01/03(日) 14:07:05.85 ID:nL7iKJaJ.net
- すませんよく理解できていないかもしれませんorz
今は使うタイミングで、仮でこうやってるんですが、
どうもしっくり来なくて…
──────────
var toggles = GameObject.Find("ToggleGroup").GetComponent<ToggleGroup>().ActiveToggles();
string name = "";
foreach (var t in toggles)
{
if (t.isOn) name = t.name;
}
──────────
- 859 :名前は開発中のものです。:2016/01/03(日) 16:27:46.19 ID:OtRNWG92.net
- LayerElementやContentSizeFitterの使い方など日本語で詳しく書いてある本がほしいと思っています。
webでunityのUIの本を調べたところ良さそうなのが2冊あるようでどちらにしようか迷っています
UnityゲームUI実践ガイド 開発者が知っておきたいGUI構築の新スタンダード
http://www.amazon.co.jp/dp/4844364855/ref=pd_lpo_sbs_dp_ss_2?pf_rd_p=187205609&pf_rd_s=lpo-top-stripe&pf_rd_t=201&pf_rd_i=4839956405&pf_rd_m=AN1VRQENFRJN5&pf_rd_r=1J38YGQGVZ73JS1EHW9V
uGUIではじめるUnity UIデザインの教科書-Unity5対応
http://www.amazon.co.jp/uGUI%E3%81%A7%E3%81%AF%E3%81%98%E3%82%81%E3%82%8BUnity-UI%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B3%E3%81%AE%E6%95%99%E7%A7%91%E6%9B%B8-Unity5%E5%AF%BE%E5%BF%9C-%E5%B2%A9%E4%BA%95-%E9%9B%85%E5%B9%B8/dp/4839956405
評価やおすすめの本がありましたら教えていただけると幸いです。 👀
Rock54: Caution(BBR-MD5:60fb6bd37e268099e6257349e1247e68)
- 860 :名前は開発中のものです。:2016/01/03(日) 16:29:36.83 ID:9gYMsMki.net
- イベントの使い方がわからないなら
今はもうそれでいいと思うよ
理解できない部分で躓くよりも
出来ることで作って先に進む方が有益な時期だと思うし
- 861 :名前は開発中のものです。:2016/01/03(日) 16:33:12.04 ID:9gYMsMki.net
- >>859
http://docs.unity3d.com/ja/current/ScriptReference/UI.LayoutElement.html
http://docs.unity3d.com/ja/current/ScriptReference/UI.ContentSizeFitter.html
これじゃいかんの?
- 862 :名前は開発中のものです。:2016/01/03(日) 16:51:27.51 ID:PXF6Y8xh.net
- >>859
書籍は好みがあるから一概にこっちが良いとはコメントしにくい
もし可能なら書店まで足を運んで内容を確認してから自分で良いと思う方を選ぶのがいいと思う
個人的には書籍の内容はほとんどが古く浅いので役に立たないと思ってる
書籍読む時間で最新のuGUIのソースを読んだ方が有意義
- 863 :名前は開発中のものです。:2016/01/03(日) 17:46:38.07 ID:HJa8ZZQx.net
- つか日本語に拘るな
本家の公式マニュアル&チュートリアル&ライブトレーニングで必要十分な情報がある
英語で理解できるようにならないとIT分野全般で古い情報しか手にはいらないよ
- 864 :名前は開発中のものです。:2016/01/03(日) 22:40:21.30 ID:zTUDJKEM.net
- 分かりやすい取っ掛かりが欲しいというのは分かるけどな
- 865 :名前は開発中のものです。:2016/01/03(日) 23:03:10.38 ID:DkLwSIja.net
- 母国語に比べると、理解力が1/10とかになっちゃうのよねぇ…
- 866 :名前は開発中のものです。:2016/01/03(日) 23:12:37.90 ID:nL7iKJaJ.net
- すませんもう一回だけ質問整理してかきます>>854
uGUIのToggleの値を取得しようとしています。
選択されたタイミングと選択値を使うタイミングが違うため、
(1)OnValueChangedで一度選択値を保存する
(2)使うタイミングで選択値を取得する
どちらの実装にしようか悩んでいます。
──────────
var toggles = GameObject.Find("ToggleGroup").GetComponent<ToggleGroup>().ActiveToggles();
string name = "";
foreach (var t in toggles)
{
if (t.isOn) name = t.name;
}
──────────
今は(2)でやっていますが、上記のような実装になってしまい
イマイチしっくり来ていません。
(1)の方でやろうとすると、全てのToggleのOnValueChangedにスクリプトをアタッチすることになり、
作りとして正しいのだとは思うのですが煩雑な気がして悩んでいます。
曖昧な質問で申し訳無いのですが、
皆さんならどうするでしょうか…。
普通は(1)ですか?また、(2)の場合もっと良い実装はありますか?
- 867 :名前は開発中のものです。:2016/01/04(月) 01:44:00.77 ID:1OOEB/Xy.net
- 2で取れてるならそれでいんでないの
プロファイラに無視できない負荷でも出てから考えればいいんじゃないのかな
2なら個人的には一度FindやGetComponentしたら再利用に備えてプロパティに保存しとくけどね
- 868 :名前は開発中のものです。:2016/01/04(月) 02:32:17.29 ID:YfNuq+0V.net
- unity5.3でadd animation eventから関数設定できません(function not supprted)
以前はできたのですが仕様変わったんでしょうか…
ttp://bribser.co.jp/blog/animation-method/
上記のようなことができない場合、スプライトアニメーションの任意のフレームにきたら関数を
呼び出して何かの処理をさせたいのですが他に方法ありますでしょうか
- 869 :名前は開発中のものです。:2016/01/04(月) 03:15:50.80 ID:TfOUre7A.net
- >>866
1→ラムダ式使えばいい
2→対象を見つける方法の再検討とキャッシュ
- 870 :名前は開発中のものです。:2016/01/04(月) 12:47:31.37 ID:beNj8shj.net
- 868です
自己解決というか
なぜか関数をセットできるようになりました…
- 871 :名前は開発中のものです。:2016/01/04(月) 17:47:32.77 ID:u4VibW+f.net
- Spriteを隙間なく並べているはずなのに、GameウインドウやPC用の実行画面で1ピクセルほどの隙間ができてしまいます
Spriteのフィルタをpointにしても隙間が埋まりません。対処法を教えてください
- 872 :名前は開発中のものです。:2016/01/04(月) 20:10:50.04 ID:OMuHN2EL.net
- おそらく1ピクセル未満の端数丸め処理の問題だろうと思う
レンダリング時それぞれのスプライトは隣接しているかどうかに関係なく個別に描画される
そのためふたつのスプライトが1ピクセル未満ずつ乗っている箇所が隙間のように描画されてしまっているという状態
隙間なく並べられたスプライトの境界線がピクセルの境界にきちんと沿っていない事が原因なので
「unity 2d pixel perfect」あたりでググると幸せになれるかもしれない
- 873 :名前は開発中のものです。:2016/01/04(月) 20:38:37.60 ID:u4VibW+f.net
- >>872
返答ありがとうございました
http://blogs.unity3d.com/jp/2015/06/19/pixel-perfect-2d/
このページを参考に改良してみます
- 874 :名前は開発中のものです。:2016/01/04(月) 20:48:19.33 ID:VzoPO3CD.net
- >>861-865
回答有り難うございます。
リファレンスだとちょっと使用例が少ないのでできれば本など参考にして実践的に使いたいと思った次第です。
英語は一応読めるのですが・・・一応読める程度でしか無く、分からない単語など調べると別のことに時間を取られてしまうのでできれば日本語で行きたく思います。
本屋で見て、直感的に良さそうな本があったらそれを購入検討しようと懷います。
ご回答ありがとうございました!
- 875 :ネットワークエンジニア(プロ)です:2016/01/05(火) 05:47:47.17 ID:cUm4JdUo.net
- 例外ってどこに出力されるものなのでしょうか?
例えば、Unity(ゲーム開発ツール)で例外発生時はUnityのコンソール上に表示されるのに、
System.Console.WriteLineは表示されません。
WriteLineは標準出力する関数だと思いますが、
標準出力をロギングしてるわけではないのでしょうか。
モノビハバーを継承してるクラスはDebug.Logを使えばいいですが、
移植を考慮しているので、Debug.Logを利用しないでUnityのコンソールに通知する方法はありますか?
- 876 :名前は開発中のものです。:2016/01/05(火) 08:19:34.45 ID:/fKHvWaf.net
- 移植を考慮したモジュール群共通の共通ロギング関数でも作ってそこからdebug.log呼んどけばいいんじゃないだろうか
- 877 :名前は開発中のものです。:2016/01/05(火) 08:28:46.95 ID:/fKHvWaf.net
- あと見たかもしれないけど標準出力のりダイレクトやってる例があったよ
http://answers.unity3d.com/questions/817189/how-to-redirect-systemconsolewrite-from-dll-to-deb.html
- 878 :名前は開発中のものです。:2016/01/05(火) 11:21:02.77 ID:9GuORDM5.net
- >>875
その恥ずかしい名前欄は消した方がいいよ
- 879 :名前は開発中のものです。:2016/01/05(火) 15:53:51.35 ID:Cmhxu5t5.net
- >>877
ありがとうございます。
>>878
いやん
- 880 :名前は開発中のものです。:2016/01/05(火) 16:34:19.46 ID:KrVcbqV7.net
- uGUIのDropdownの選択肢部分のSortingLayerが、Canvasの設定に関係なく常にDefaultになってるっぽいね
かなりハマってしまった
こういうのって報告したほうがいいんだろうか
- 881 :名前は開発中のものです。:2016/01/05(火) 22:56:54.81 ID:/fKHvWaf.net
- 毎度お世話になっております。
UNETについて質問がございます。
以下のようにNetworkBehaviour派生クラスにて
コマンド属性を使用してでサーバー処理をした後に
要求元のクライアントにのみデータを送りたくてしかたがないのですが
どのような方法がありますでしょうか。
イメージ))
[Command]
public void CmdBlockSet(BlockSetSync blocksync)
{
// サーバー側の処理
ServerBlockSet(blocksync);
// 全クライアントのRPC呼び出し
RpcClientBlockSet(blocksync);
// トリガーとなったCmdBlockSet要求元クライアントにのみデータを送信したい!
// ???
}
[Server]
public void ServerBlockSet(BlockSetSync blocksync)
{
// サーバー側のみ実行する処理
}
[ClientRpc]
public void RpcClientBlockSet(BlockSetSync blocksync)
{
//全クライアント側で実行する処理
}
>>880
もしかしてこれと同じ問題ですかね?
http://forum.unity3d.com/threads/dropdown-list-appears-behind-everything.356750/
- 882 :名前は開発中のものです。:2016/01/06(水) 04:26:12.54 ID:Nk18/5bd.net
- >>881
まさにそれですね。ありがとうございます
ソースまで既に特定されてるなら待ちでいいかなw
- 883 :名前は開発中のものです。:2016/01/06(水) 10:09:53.17 ID:qIwJ/Lp3.net
- >>881
こんな感じ?
http://answers.unity3d.com/questions/984750/unitynetworking-unet-rpc-to-specific-player-master.html
- 884 :名前は開発中のものです。:2016/01/06(水) 11:13:06.34 ID:NEPpjvdu.net
- >>883
おお、ありがとうございます。
まさにそれです。
networkserverのsendtoclientで特定のクライアントとやり取りできそうですね。
帰宅したら試してみます!
- 885 :名前は開発中のものです。:2016/01/06(水) 16:54:25.76 ID:1JpeS0S2.net
- 新しいプロジェクト作ったら前に落としたassetsが無くて、エクスプローラでドキュメントフォルダ開いたらあったんですが、毎回コピーしなきゃいけないんでしょうか?
- 886 :名前は開発中のものです。:2016/01/06(水) 17:18:51.56 ID:hHXVZ7aa.net
- プロジェクト作成時に仕様アセットの選択するとこあるっしょ
- 887 :名前は開発中のものです。:2016/01/07(木) 00:08:46.40 ID:kCD1knB8.net
- 毎度お世話になっております。
先日UNETで質問させていただいたものですが
HLAPI超便利うへへと調子に乗っていたところまたまた問題にぶち当たりまして
何かご存知の方がいればご教示ください。
NetWorkManagerHUDよりちょっとイケてる見栄えのUIを作ろうと挑戦していたところ
自分で作ったUGUIのボタンクリックイベントでNetWorkManager.StartHostを呼び出したところで
Listenエラーになってしまいます。(logから)
検証用に簡単なプロジェクトを作成してみたとろ以下のような動きになってしまっています。
1. NetWorkManagerHUDを使った場合、エディター上でもビルドしたものでも正常に動作する
2. 独自のUIからNetworkManager派生クラス経由で StaratHost を呼ぶと
エディター上では問題なく動くがビルドしたものはStartHostでエラーが出る
(でもnetstatとかで見ると対象ポートがUDPのことに出ている。接続はできない)
StartHostの前になにか事前処理が必要なのでしょうか。。
・試した検証用プロジェクト
http://whitecats.dip.jp/up2/download/1452093047.zip
私の環境;win7 pro , Unity 5.3.1f1 (64-bit),
- 888 :名前は開発中のものです。:2016/01/07(木) 00:09:44.87 ID:kCD1knB8.net
- あ、プロジェクトのpassは test です
- 889 :名前は開発中のものです。:2016/01/07(木) 03:01:17.13 ID:AYi2CqeL.net
- UNETってPhotonみたいなものなの?
- 890 :名前は開発中のものです。:2016/01/07(木) 06:52:35.11 ID:kCD1knB8.net
- >>889
そうです。 UnityEngine.Networking名前空間あたりのマルチプレイ用機能みたいです。
機能的には同じような感じのようですね。
photon使うのが 主流なのでしょうかね?
- 891 :名前は開発中のものです。:2016/01/07(木) 09:55:08.46 ID:kz6C7yFX.net
- uNETは5.1以降の新しい標準ネットワークAPIで、新しい分情報が少ないのが難点といえば難点
HLAPIについてはuGUIと同様オープンソース化されているからHUDのソース読んだら参考になるかもしれない
https://bitbucket.org/Unity-Technologies/networking
- 892 :名前は開発中のものです。:2016/01/07(木) 18:30:51.06 ID:Y9KpJ6Uz.net
- >>891
ありがとうございます
なんとオープンソースになってたんですね
ちょっと見てみます!
- 893 :名前は開発中のものです。:2016/01/07(木) 18:51:42.56 ID:yWUOEVzg.net
- 2DシューティングゲームでZキーで強ショット、Xキーで弱ショットが出るとします。しかし、ZキーとXキーを同時に押すと両方のショットが出てしまいます。
同時押しした場合、Xキーの弱ショットのみ出すという方法はどなたがご存知ありませんか?
一応、大体こんな感じのコードでやっております。
if (Input.GetKeyDown (KeyCode.Z) )
{
GameObject clone = Instantiate (bullet, transform.position, Quaternion.identity) as GameObject; //弾の生成
clone.GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, 15); //弾をy軸15へ飛ばす
}
if (Input.GetKeyDown (KeyCode.X) )
{
GameObject clone = Instantiate (bullet2, transform.position, Quaternion.identity) as GameObject; //弾の生成
clone.GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, 15); //弾をy軸15へ飛ばす
}
- 894 :名前は開発中のものです。:2016/01/07(木) 18:57:46.40 ID:hwbkfv15.net
- >>893
Unity関係ない気がするんだが
Xキーが押されていないときだけZキーの入力を受けるように
すればいいだけでしょ?
if ( X入力 )
{
}
else if ( Z入力 )
{
}
- 895 :名前は開発中のものです。:2016/01/07(木) 18:57:52.38 ID:lawdn1GB.net
- >>893
Unityよく分からんが多分これでいける
if (Input.GetKeyDown (KeyCode.X) )
{
GameObject clone = Instantiate (bullet2, transform.position, Quaternion.identity) as GameObject; //弾の生成
clone.GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, 15); //弾をy軸15へ飛ばす
}
else if (Input.GetKeyDown (KeyCode.Z) )
{
GameObject clone = Instantiate (bullet, transform.position, Quaternion.identity) as GameObject; //弾の生成
clone.GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, 15); //弾をy軸15へ飛ばす
}
- 896 :名前は開発中のものです。:2016/01/07(木) 19:03:16.31 ID:7DpOtl6U.net
- Unity的な回答するとInput.GetKeyDownがupdateにあると仮定して
インプット間隔を制御しないとif文だけじゃボタンが押し続けられた時にごちゃごちゃ弾がでるぜw
- 897 :名前は開発中のものです。:2016/01/07(木) 19:19:37.46 ID:hwbkfv15.net
- >>896
そういうゲームの仕様はこっちで想像してもしょうがないので
改めて質問来た時でいいでしょ
- 898 :名前は開発中のものです。:2016/01/07(木) 21:15:43.05 ID:yWUOEVzg.net
- >>894
>>895
ありがとうございます!
・・・ですがせっかく答えていただいたのにごめんなさい。先ほどのは間違いです。本命はこちらです・・・。
Xキーで防御を出して、Zキーでショットを撃とうと思っていますが、ZキーとXキーを同時に押すと防御とショットが同時に出てきます。
同時押しした場合、Xキーの防御のみ出すという方法はどなたがご存知ありませんか?
if (Input.GetKeyDown (KeyCode.X)) //Xキーで
{
Instantiate (gard, transform.position, Quaternion.identity); //防御する。
}
else
if (Input.GetKeyDown (KeyCode.Z) || (Input.GetKey (KeyCode.Z) && count % 5f == 0)) //Zで撃つ Zで撃ち続ける 5fごとに
{
GameObject clone = Instantiate (bullet, transform.position, Quaternion.identity) as GameObject; //弾の生成
clone.GetComponent<Rigidbody2D> ().velocity = new Vector2 (0, 15); //弾をy軸15へ飛ばす
}
最初の文を
if (Input.GetKeyDown (KeyCode.X)|| (Input.GetKey (KeyCode.X))
にすると上手くいきますが、そうなると「gard」がすごい数を出してきますのでダメです・・・。
Unity無関係かもしれませんがUnityでC#でやっているのでこちらのスレで質問させていただきます。
- 899 :名前は開発中のものです。:2016/01/07(木) 21:30:47.97 ID:RIyhZQsW.net
- なんかすげえ奴が着たな
触らずにスルーしろよ
居着かれると大変な事になるぞ
- 900 :名前は開発中のものです。:2016/01/07(木) 22:34:51.65 ID:kCD1knB8.net
- >>891
この件ですがソースを見たところ違いはonGui内でstarthostしているかuguiのボタンクリックイベントでしているかでした。
試しにupdate内やonguiで呼んだら成功したので,もしかするとupdateやonguiの前に何らかの下準備が行われているのかもしれません。
- 901 :名前は開発中のものです。:2016/01/07(木) 22:50:31.54 ID:jc2wiw05.net
- >>898
もっと効率良くはなると思うがわかりやすく書くとこんなところかね
//ガードしているかどうか
bool isGuarded;
//fireRateのうちどこで撃つか
int fireTiming;
//何フレームに1回撃つか、メソッド内に数値リテラル書きたくないしインスペクタから変更したいが面倒なのでパブリック
public int fireRate=5;
void Update(){
if(Input.GetKeyDown(KeyCode.Z)){
//Zが押されたタイミングをキャッシュしとく
fireTiming=Time.frameCount%fireRate;
}
bool fire=Input.GetKey(KeyCode.Z);
bool guard=Input.GetKey(KeyCode.X)&&!fire;
if(fire&&Time.frameCount%fireRate==fireTiming){
this.Fire();//弾を発射するメソッド
}else if(!isGuarded&&guard){
isGuarded=true;
this.Guard();//ガード開始するメソッド
}else if(isGuarded&&!guard){
isGuarded=false;
this.Unguard();//ガード解除するメソッド
}
}
- 902 :名前は開発中のものです。:2016/01/08(金) 00:20:48.90 ID:kCUY2DJ2.net
- >>900
解決しました。私の単純な実装ミスでした。
ホスト開始ボタンのイベントハンドラをコードとインスペクタ上で登録していたため二回listenが呼ばれてたということでした。
お騒がせしました。
- 903 :名前は開発中のものです。:2016/01/08(金) 06:21:49.06 ID:8au7KOLk.net
- ダブルクリック判定のサンプルが見つからなくてUniRx使ったサンプルが一つしか
見つからなかったので、初心者なりにダブルクリック判定できるクラス作ったのですが
私と同じ初心者の方のためにうpした方がいいですか?
- 904 :名前は開発中のものです。:2016/01/08(金) 10:40:48.38 ID:0SUqbUHY.net
- しなくていいと思うよ
そういうスレじゃないし
- 905 :名前は開発中のものです。:2016/01/08(金) 11:44:09.85 ID:DTWBj4X9.net
- >>898
Unityやるよりc#(c言語でもc++でもjavaでもphpでもいいが)の基本文法覚えたほうがいい
int カウント;
for(;;)
{
if(Xが押されている)
{
防御;
}
else if(Zが押されている&&(カウント%5)==0)
{
ショット;
}
カウント++;
}
- 906 :名前は開発中のものです。:2016/01/08(金) 11:49:49.69 ID:Bq3VIzHQ.net
- >>903
unity C# double click でググれば山のようなサンプルがあるんだけど
それらより出来が良いと思うなら貼ったら
- 907 :名前は開発中のものです。:2016/01/08(金) 12:06:32.36 ID:oZHGx8Zx.net
- おっと、防御優先だった
>>901は攻撃優先してるから間違い、すまんね
(誤)
bool fire=Input.GetKey(KeyCode.Z);
bool guard=Input.GetKey(KeyCode.X)&&!fire;
(正)
bool guard=Input.GetKey(KeyCode.X);
bool fire=Input.GetKey(KeyCode.Z)&&!guard;
- 908 :名前は開発中のものです。:2016/01/08(金) 13:21:13.85 ID:IewE0LND.net
- >>903
2chよりはQiitaとかに貼ったほうが
後の人が検索するときには有用だと思う
- 909 :名前は開発中のものです。:2016/01/08(金) 15:16:30.85 ID:Uxj9oiwp.net
- こんなとこ貼っても基本ゴミレベルの人ばっかだから
ロクに理解も出来ないと思いますしね
- 910 :名前は開発中のものです。:2016/01/08(金) 15:28:13.99 ID:IewE0LND.net
- 便所からランクアップできたのか
- 911 :名前は開発中のものです。:2016/01/08(金) 16:21:48.07 ID:vPXkHPlJ.net
- シェイプキーの操作方法が分かりません。
blenderからシェイプキーを設定したモデルを入れたのですが、ボーンのようにAnimationが追加されるわけでもなく
探したのですが見つかりませんでした。
本来ならモデルの skinned mesh renderer に blendshapes というステータスが追加されるらしいのですが、それも無い状態です。
どうすればシェイプキーを設定できるのでしょうか。
よろしくお願いします
- 912 :名前は開発中のものです。:2016/01/08(金) 16:47:25.99 ID:ColvTIaI.net
- blenderで正常ならblenderから正しくインポートされてないだけだろ
blendファイルとfbxと両方試したかとか、fbxならエクスポート設定は大丈夫かとか
もしくはちゃんとインポートされてるんだけど
モデルのゲームオブジェクトに一杯子オブジェクトあって探しきれてないだけとか
BlendShapesが閉じてて気づかないるだけとか
インスペクターでskinned mesh rendererの直下にblendshapesはあるはず
顔なら顔の子オブジェクトの中を探さなきゃだめだぞ
- 913 :名前は開発中のものです。:2016/01/08(金) 16:54:04.49 ID:sQIGnL9R.net
- 質問失礼します。
アセットバンドルでファイルを保存できたのですが読み込みができません。
LoadAllAssetsで読み込みはできたみたいなのですが、
ここからマテリアルにキャストしたりテクスチャーにキャストしたり、
プレハブと関連付けたりするのは手動でしょうか?
全く理解できていないので、的外れな質問だったらすいません。
よろしくお願いします。
- 914 :913:2016/01/08(金) 17:30:13.76 ID:sQIGnL9R.net
- 自己解決しました。
全てが入っている一番上のフォルダ1つにアセットラベル付けて出力するだけでした。
- 915 :名前は開発中のものです。:2016/01/08(金) 18:04:54.75 ID:vPXkHPlJ.net
- >>912
正しくインポートされていない可能性があるとのことで、色々試してみた結果、
どうやらモディファイアーが原因だったようで、Armature以外を適用して
シェイプキーを設定しなおした結果、blendshapesがちゃんと追加されました。
Unityでの設定はこれからですが、とりあえずこれでやってみようと思います。
ありがとうございました。
- 916 :名前は開発中のものです。:2016/01/09(土) 01:14:36.30 ID:BI2TGQfJ.net
- 課金で得られるゲーム内通貨をplayerPrefesで保存してユーザーの端末ごとに管理させるのって危険ですか?
これしか思いつかなくて…
- 917 :名前は開発中のものです。:2016/01/09(土) 01:29:26.48 ID:YrQMk2oG.net
- >>916
もちろん危険だけど…
サーバサイドでデータ保持、課金検証しても不正はゼロにはできないと思ったほうがいいからね。追えば分かる状態にはできるけど、根本的には「未知のエラーかどうか」を保証できないしね
今やれる範囲での選択肢が端末保存なのであれば悪いことじゃないよ。やってみて、改造者に起因する問題をコストとして計上してから考えればいいよ
脅かすようで悪いけど、ユーザ100人いたら一人は知識ある改造経験者だというくらいに考えといたほうがいいよ
- 918 :名前は開発中のものです。:2016/01/09(土) 02:10:08.45 ID:uGLR6h0t.net
- いくらなんでもそこはサーバー管理にしようよ。仮想通貨管理系のサービス使えばそんなコスト抑えられるべ
さすがに改竄ノーガード戦法、端末壊れたら課金データロストとか男前すぎるぞ
- 919 :名前は開発中のものです。:2016/01/09(土) 02:40:38.70 ID:nHm//KnJ.net
- セーブデータ消したら復活できませんってゲーム結構ない?
俺もローカル保存でいいかなーって思ってたんだけど
- 920 :名前は開発中のものです。:2016/01/09(土) 03:32:12.72 ID:ONXJgwoD.net
- どこのBaaSもアイテムの偽造防止策なんて提供してくれないし、万が一ゲームがヒットした時に利益をほぼすべて持っていかれるし・・・・
大抵のゲームの場合はオンラインでアイテムを管理してもいいことなんてないよ
- 921 :名前は開発中のものです。:2016/01/09(土) 03:37:33.97 ID:afjinA91.net
- >>919
課金アイテムでそれだったら駄目じゃね?
少なくともiOS版だとRejectされるんじゃないか
- 922 :名前は開発中のものです。:2016/01/09(土) 03:50:33.52 ID:nHm//KnJ.net
- あ、そもそも普通に作ればiCloudバックアップとかに対応してるんじゃない?
調べてないから良く知らないが、課金コインもただのゲーム内データだし。
暗号化はassetでするから少しは改ざん対策になるとは思う
- 923 :名前は開発中のものです。:2016/01/09(土) 06:32:13.14 ID:tcA5nLct.net
- ソシャゲーじゃないんならサーバー用意する必要なんてないと思うけど
パズドラとかモンストみたいなゲーム作るんだ!って話なら知らん
- 924 :名前は開発中のものです。:2016/01/09(土) 10:04:56.69 ID:Ck0wvyJY.net
- サーバー保存が理想系なんだろうけど、ゲーム性の問題じゃね?
対人戦があるなら不正は排除しないといけないから、サーバーデータ保存になるし、
チートしたところで個人で終息する話なら大した問題にはならないし
まあサーバー保存にしたらID管理で膨大な手数になるけどなー
- 925 :名前は開発中のものです。:2016/01/09(土) 10:14:08.53 ID:ToyuPE6g.net
- つかその手の話をこんなスレでやる事自体違和感ありまくり
商業レベルじゃあるまいしどのレベルで作ってるゲームなんだよ
- 926 :名前は開発中のものです。:2016/01/09(土) 10:27:09.74 ID:WzWFWK4g.net
- どうしたらいいですかじゃなくてお前がどうしたいのかって話だからな
- 927 :名前は開発中のものです。:2016/01/09(土) 10:48:34.64 ID:slVnXfFr.net
- まぁそもそもサーバー保存が思いつかないわけじゃなくて
その程度の人月予算しかありません、って話だからなぁ…
手元に千円しかないけど1億円のものを買いたいんだけどどうしたらいい?
みたいな話で宝くじでも買え、以外いうことがないw
- 928 :名前は開発中のものです。:2016/01/09(土) 11:03:05.02 ID:msHmrnE6.net
- まあif文がどうとかの超初心者から課金うんぬんまでいろんな人がいるから面白いんだけどな
流石に初心者レベルの奴が課金とか言わんだろ
- 929 :名前は開発中のものです。:2016/01/09(土) 11:44:38.33 ID:Ck0wvyJY.net
- 個人レベルだから悩むんじゃないのかね
意味合いとしては、ローカル保存でいいかっていう情報倫理的なお話でしょ
チートセキュリティ対策はキリがないから、担当者の線引き次第でしかないと思うけどな
アイテム課金くらい個人でも作れるだろ
サーバー運営費なんてクラウドで月5000円くらいの稼働で始めれば必要十分で個人でもできる。作るのは、な
運営保守は保証しない
- 930 :名前は開発中のものです。:2016/01/09(土) 11:45:04.55 ID:1azCF1yq.net
- いやでも質問自体ナンセンスっていうか
初心者レベルだと思う
別に初心者が悪いってわけじゃないが
- 931 :名前は開発中のものです。:2016/01/09(土) 11:58:48.22 ID:Ck0wvyJY.net
- これが初心者とはね…
もっと語彙を増やしたほうがいいと思うけどな
不確定要素に対する仕様の決定は、まったく決められない人はいるから、
広く言えば人格の問題
- 932 :名前は開発中のものです。:2016/01/09(土) 12:00:55.44 ID:afjinA91.net
- >>929
amazonのnano EC2とsmall RDSで月あたり14ドルで出来るからなぁ、一ドルのアイテムが一四個以上売れるならちゃんと対応すべきだと思うぞ
- 933 :名前は開発中のものです。:2016/01/09(土) 12:13:29.56 ID:YrQMk2oG.net
- RDSってそんな安いんか
パフォーマンスいいのと惰性でさくらVPS使ってたけど、スケールの手軽さ考えるとAWSに移行したほうがいいのかもなぁ
- 934 :名前は開発中のものです。:2016/01/09(土) 12:27:19.29 ID:Ck0wvyJY.net
- >>932
そうなると運営保守の工数の問題にもなってくるから、
結局どこまでやるの?って話にしかならないんだよね
ゲーム性や今後の展開、自分(会社)の性格を考えて決めろとしか
- 935 :名前は開発中のものです。:2016/01/09(土) 13:33:25.86 ID:IP4TzFvt.net
- Unity5.1から5.3に上げての質問です
5.1ではアタッチしたスクリプトをInspector上でScriptを変更できる欄がありましたが、
5.3だと編集不可になっていて地味に困っています。何か編集可能になる設定ってありますか?
_______________
|▼[C#] Hoge Fuga (Script) [?] *
| Script [[C#]HogeFuga] ◎ ←こいつが編集不可
| Piyo Param [ 1]
| Hogehoge [ 2]
|
|
|
- 936 :名前は開発中のものです。:2016/01/09(土) 14:05:05.44 ID:msHmrnE6.net
- 何の為にそこを変更するの?
異なるスクリプトにするなら削除してから追加すればいいだけだし
- 937 :名前は開発中のものです。:2016/01/09(土) 14:07:59.70 ID:6naWAe4H.net
- やっぱ頭が弱い方がいいと思える
ここは優しい世界
- 938 :名前は開発中のものです。:2016/01/09(土) 15:27:49.15 ID:IP4TzFvt.net
- >>936
5.1ではここで変更すると、スクリプト継承してあると親クラスで設定した値が、
子クラスにも引き継がれるのでぼちぼち便利だったんですよ
- 939 :名前は開発中のものです。:2016/01/09(土) 15:36:48.11 ID:dRgRZulg.net
- そうやってぐちゃぐちゃになるから意図的に変更できなくしたんだろうな
チーム開発してたら害にしかならない気がする
自分で作ったのさえ後で罠になるかもw
- 940 :名前は開発中のものです。:2016/01/09(土) 15:41:43.03 ID:Ck0wvyJY.net
- デフォルト値入れとけって話しな
あとスクリプトの状態でもpublic GameObjectとかは、
あらかじめデフォルト値としてアタッチできるんだから、複製作るならやっとけと
- 941 :名前は開発中のものです。:2016/01/09(土) 15:45:08.92 ID:IP4TzFvt.net
- serializeされてるパラメータがそのまま移行されるだけなんだから、
ぐちゃぐちゃにはならない気もするけど、
Inspector上でパラメータをいじって調整していて
「やっぱりこっちのスクリプトにしよう」って変更しても、
基底のパラメータが引き継がれるの便利だったんだけどなぁ
- 942 :名前は開発中のものです。:2016/01/09(土) 15:50:51.73 ID:dRgRZulg.net
- やった事ないから知らないんだけどスクリプト変更した時にコンポーネントの名前も自動的に変更してくれるの?
もしコンポーネント名とスクリプト名が違うならやっぱり罠になるよ
コンポーネントは閉じてる事も多いんだから
- 943 :名前は開発中のものです。:2016/01/09(土) 15:53:21.60 ID:Ck0wvyJY.net
- 動作仕様決めないでスクリプトアタッチする思考回路が理解できんな
やっぱこっちなんてシチュエーションなんかないんだが
- 944 :名前は開発中のものです。:2016/01/09(土) 15:54:40.38 ID:IP4TzFvt.net
- >>942
コンポーネント名も自動で変わった筈です
- 945 :名前は開発中のものです。:2016/01/09(土) 16:01:52.39 ID:IP4TzFvt.net
- >>943
例えば敵キャラの挙動を作るときに
基本的な動作をするクラスで仮置きしておいて、
その動作を継承して動きを追加したい時とかですかね
まぁ、自分の思考回路なんで正しいかは知りませんが
- 946 :名前は開発中のものです。:2016/01/09(土) 16:02:36.51 ID:T7DwdcBc.net
- 5.3って結構変更入ってるよね
パフォーマンスは多少良くなってるようだけど5.3の新機能にはまだ縁が無いから
パーティクル関係で修正が追いつかずに5.2.4にした
- 947 :名前は開発中のものです。:2016/01/09(土) 16:32:44.12 ID:YrQMk2oG.net
- >>945
設定コンポーネントを別で作りなよ
そのコンポーネントを、publicで受け取れる実装コンポーネントに分ければテスト設定とか柔軟に差し替えられて便利よ
- 948 :名前は開発中のものです。:2016/01/09(土) 16:33:50.72 ID:K54MsIw5.net
- 客都合の仕様変更なんかよくある事だろ、まあ個人開発してたらあまりない事だからわからんでもないが
答えもせずに質問者罵倒してる約2名はちょっと黙っとけよw
>>944
インスペクタをデバッグモードにすりゃできるぞ
ここからは推測だがデバッグモードでないとどの値が維持されたかも分からず思わぬ事故になる事があるから変更されたんじゃないかね?
言うまでもないが事故るリスクの高い操作ではあるので細心の注意を払って行うことをお勧めしとくよ
- 949 :名前は開発中のものです。:2016/01/09(土) 16:38:49.50 ID:nHm//KnJ.net
- そんなに変更あるのか
課金いれたいから5.3にはするつもりだけどドキドキ
- 950 :名前は開発中のものです。:2016/01/09(土) 17:04:36.02 ID:Ck0wvyJY.net
- >>948
この程度で罵倒だと思うなら2ch向いてないとしか
仕様変更なら、新旧スクリプトアタッチして上下に見比べて、
相違ないことを確認してから古いほう消したほうが確実じゃないのか?
インスペクタ上でどんだけ値設定してるのかわからんが
どちらにせよ2chで質問したい内容ではないな、俺は
- 951 :名前は開発中のものです。:2016/01/09(土) 17:06:23.32 ID:IP4TzFvt.net
- >>947
ありがとうございます
今更変更はちょっと出来ないので、次回参考にしてみます。
>>948
うおぅ、滅茶苦茶嬉しいです。ありがとうございます。
デバッグモード挟むのはちょっとめんどいですけど解決です。
確かに事故りかけた事があるので、
全てSerializeとするかNonSerializedとするかきっちり決めています
これで(多分)予想外の変更がおこらない筈
- 952 :名前は開発中のものです。:2016/01/09(土) 17:25:59.18 ID:i/7/G2qw.net
- >>950
デフォルト値入れとけとか的はずれな事を言ってる様な奴に理解力を期待してないから別にいいが恥の上塗りするだけだぞw
そもそも目視確認をあてにしてる時点で論外、開発中にミスをやらかすのは常に人間だろw
ついでに言えばDisallowMultipleComponentついてたらどうするんだ?
コンポーネントのインスタンスIDを維持したい時は?
百歩譲ってインスペクタでの目視確認を許すにしても必ずデバッグモード使え、エディタが拡張されてたらインスペクタには値全てが表示されてる訳じゃない
で、日常的にデバッグモード使ってるなら即答出来る内容の質問で訳のわからん事言ってるのはつまり…
- 953 :名前は開発中のものです。:2016/01/09(土) 17:31:26.98 ID:Ck0wvyJY.net
- >>952
日常的にデバックモードは使ってない
必要ないからな
あんたは大規模開発してるみたいだから全部任せたわ
- 954 :名前は開発中のものです。:2016/01/09(土) 19:49:08.89 ID:afjinA91.net
- >>933
nano EC2なんかAmazonの固定IPリザーブ代金と一緒だったりする(つい最近導入されたちっちゃいサーバ>>nano)
月7ドルで固定IPもらえるって考えたら自宅で固定IPの高いISP使わないで済むと言う考え方もあったりする
nano EC2はメモリ512Mしか無いんでJVMとかスクリプト言語でバリバリの動的Webサーバ作るのには向かないけど、
nginxとwebにころがってるPHPのサンプルベースに課金処理とかするのには問題無いレベルだから割とオススメ
- 955 :名前は開発中のものです。:2016/01/09(土) 20:00:32.64 ID:eb6Xtzdo.net
- 企業レベル?のレベルの話してるひとはなんで会社でやらないんだろう?
- 956 :名前は開発中のものです。:2016/01/09(土) 20:25:52.73 ID:3WrumdnE.net
- マテリアルについて質問です。
バージョン 5.12です。
Blenderで作ったオブジェクトをUnityのマテリアルの設定で金属っぽくしたいのですが、StandardマテリアルのMetaricを上げていくと
真っ黒になってしまいます。ネット上で調べてみたのですが、どこのサイトを見てもMetaricとSmoothnessを1にして金属質のマテリアルを作っていたのですが、
実際に自分でやると真っ黒でなんの反射もないマテリアルになってしまいます。どういう原因が考えられるでしょうか?
解りにくい質問ですが、どなたかアドバイスを下さい。
よろしくお願いします。
- 957 :名前は開発中のものです。:2016/01/09(土) 20:38:07.48 ID:YrQMk2oG.net
- >>954
nanoは試したけど昔のt1.microがさらに安くなった感じのプランだよね。フレームワークや運用アプリ次第ではスワップ必要そうだなぁ
t2.microでもさくらVPSと比較すると割高低性能な印象があるかも。しばらくベンチマークやってないからまた評価してみるかな
>>955
ん?俺は個人だけど、ここリーマンお断りなスレじゃないよね?
- 958 :名前は開発中のものです。:2016/01/09(土) 20:55:14.61 ID:Bn36uXAt.net
- この程度で企業レベルとか言ってたら人から金取るなんて無理だぞw
- 959 :名前は開発中のものです。:2016/01/09(土) 21:14:02.00 ID:eb6Xtzdo.net
- >>957
わざわざここで聞くより職場の人が同じ環境なんだからそっちで聞くほうがよくない?
- 960 :名前は開発中のものです。:2016/01/09(土) 21:35:40.59 ID:WzWFWK4g.net
- >課金で得られるゲーム内通貨をplayerPrefesで保存してユーザーの端末ごとに管理させるのって危険ですか?
>これしか思いつかなくて…
元々の質問が素人で、答えとしては危険としか言いようがないからな。
求めてるのが1から10まで教えてくださいの宿題依頼なら答えるな。
それに単なる1レスを論破しようと脊髄反射してるとどんどん元から離れてグダグダになるだけや。
- 961 :名前は開発中のものです。:2016/01/09(土) 21:39:25.25 ID:uGLR6h0t.net
- >>956
Blender側でUVの指定をしてないとか
- 962 :名前は開発中のものです。:2016/01/09(土) 22:21:12.07 ID:3WrumdnE.net
- >>961
再度確認しましたが、Blender側のUVはきっちりせっていされていました。ちょっと色々調べてみます。
- 963 :名前は開発中のものです。:2016/01/09(土) 23:38:06.30 ID:mHjeOI+y.net
- ゲーム内通貨のような消耗品じゃなきゃ、また変わったんだろうけどなー
- 964 :名前は開発中のものです。:2016/01/10(日) 01:38:31.24 ID:hJJmamS7.net
- 描画以外の関数の実行中ってオブジェクトは動かないんですか?
それなりに多くの処理を入れてもヌルヌル動いてるのは、目にも止まらぬ速さでコンピュータが処理してくれているのでしょうか?
- 965 :名前は開発中のものです。:2016/01/10(日) 02:03:52.45 ID:Agpgg9va.net
- ほぼその通りの認識で問題ない
一回のupdate内では動かない。fixedUpdateは描画とは別だけどね。あとは自前で別スレッド立ち上げた時も別の話
update内で試しに重い処理回してプロファイラーを確認すると分かることだよ。1FPS内で処理が追いつかなければフレーム落ちする
- 966 :名前は開発中のものです。:2016/01/10(日) 02:08:55.17 ID:iKA4aMFf.net
- UnityスレじゃなくてITの専門学校へでも逝って基礎から勉強してくださいだな
- 967 :名前は開発中のものです。:2016/01/10(日) 02:37:38.79 ID:kTSS0oHk.net
- >>916
PlayerPrefsで保存した値は、レジストリに直接記録される
Win+R->regeditでレジストリエディタ開いて、HKEY_CURRENT_USER->SOFTWAREの中を見れば見つけられるはず
で、何も対策していなければ生の値が書かれて書き換えも可能
なんらかの処理で(すべて一旦文字列に変換し、先頭に特定の文字列を加えてから暗号化する等)
暗号化して改竄を難しくすることはできるけど、絶対ではない
とはいえ、ウェブを介したところで送受信するデータを改竄することは可能だから、PlayerPrefsでも同じっちゃ同じ
そして、ソーシャルゲームでないなら一人のプレイヤーが改竄してても他のプレイヤーに直接不利益が及ぶわけではないので、
対策するコストと改竄するコストとそれによる損害を考慮して方法を選べばいい
商用のソーシャルゲームでも、クライアント側で終始するパラメータ改竄に関してはフリーパスで、
ランキングで目立ったりしない限りは実質黙認しているところもある
- 968 :名前は開発中のものです。:2016/01/10(日) 10:41:45.19 ID:hJJmamS7.net
- >>965
コンピュータってすごいですねぇ
- 969 :名前は開発中のものです。:2016/01/10(日) 10:48:11.13 ID:tnzanR0y.net
- ほんと
10時間かけてただ1フレームの銀色の球出して感動してたのに
- 970 :名前は開発中のものです。:2016/01/10(日) 11:33:39.59 ID:Bj5uOLKD.net
- レイトレかよ、懐かしいなw
- 971 :名前は開発中のものです。:2016/01/10(日) 14:16:29.28 ID:DIkpoUgO.net
- Unityを5.31にアップデートしたらWheelColliderがシーンビューニ表示されなくなったんですが、他に同じ様な症状の方居ますか?
他のColliderは表示されるんですが、WheelColliderだけが表示されなくて困っています。
- 972 :名前は開発中のものです。:2016/01/10(日) 14:46:01.28 ID:i2QQBb3J.net
- >>969
懐かしいなー
8ビット機で計算すると浮動小数点演算がめちゃネックだったの思い出したわ
- 973 :名前は開発中のものです。:2016/01/10(日) 15:22:55.55 ID:TcrtzAev.net
- >>971
どのバージョンから上げたん?
5より前ならアップグレードガイドは参照した?
重要な変更したって書いてあるよ。
- 974 :名前は開発中のものです。:2016/01/10(日) 15:50:32.12 ID:DIkpoUgO.net
- >>973
申し訳ないです。ただ単にRigidodyを付加してなかっただけでした。Rigidbodyを付けないと表示もされない事を初めて知りました。
おさわがせしました。
- 975 :名前は開発中のものです。:2016/01/10(日) 21:23:56.44 ID:D2yzUP5j.net
- 携帯のオンラインゲームを作ろうと思っているのですが、ユーザーデータを保存する先をどうしようか考えています。
http://documentation.kii.com/en/
上記サイトのKiiCloudにユーザーデータを保存するタイプにしようと思っているのですが、ほかにオススメのところとか、もっとメジャーなやり方などありましたら教えていただけませんでしょうか
- 976 :名前は開発中のものです。:2016/01/10(日) 21:50:16.67 ID:7WmrdEhs.net
- 月間100万apiコールに収まるならいいと思うよ。もしDAU一万とかヒットしてもそのときまでに課金動線整理できてりゃ問題ない
- 977 :名前は開発中のものです。:2016/01/10(日) 23:57:15.92 ID:D2yzUP5j.net
- >>976
そこまで行かないと思うんでこのまま進めようかと思います。
ただ、ユーザーネームを日本語で保存出来ないのがちょっと難点ネックなんですよね……
回答有り難うございました
- 978 :名前は開発中のものです。:2016/01/11(月) 00:04:20.99 ID:FayOn+mW.net
- Unityでゲーム作ったりjavaでゲーム作るために
プログラミングの勉強しているのですが、
Unityでもカプセル化ってしたほうがいいのでしょうか?
- 979 :名前は開発中のものです。:2016/01/11(月) 00:10:10.95 ID:m1D+7NhM.net
- しないと入力補完機能で絶対使わない変数だの関数だのが表示されてウゼえじゃん
- 980 :名前は開発中のものです。:2016/01/11(月) 01:21:03.76 ID:r4suKLTg.net
- 規模によるけどオブジェクトごとの役割を意識することにも繋がるので初心者ならなおさらお勧めする
- 981 :名前は開発中のものです。:2016/01/11(月) 01:24:22.78 ID:sZCSB1Iv.net
- 初心者がカプセル化なんて知ってるわけがなかろう
- 982 :名前は開発中のものです。:2016/01/11(月) 01:26:42.54 ID:r4suKLTg.net
- 次スレ
【3Dゲームエンジン】Unity質問スレッド22 [無断転載禁止]©2ch.net
http://peace.2ch.net/test/read.cgi/gamedev/1452443083/
- 983 :名前は開発中のものです。:2016/01/11(月) 02:52:56.50 ID:SG7USrJ/.net
- ガンガンに継承していこうぜ
- 984 :名前は開発中のものです。:2016/01/11(月) 04:47:57.53 ID:m073IGU/.net
- メソッド内にベタ書きせず新規でクラス作ってそっちに書くのってカプセル化って言いますか?
- 985 :名前は開発中のものです。:2016/01/11(月) 04:55:37.78 ID:hR6tZ/z0.net
- カプセル化の手段のうちの一つではあるが、
別クラスで書けばカプセル化と呼べるわけではない
Unityスレで聞くことではないけどね
- 986 :名前は開発中のものです。:2016/01/11(月) 08:21:13.68 ID:m073IGU/.net
- >>985
なるほど、ありがとうございます
スレ違い失礼しました
- 987 :名前は開発中のものです。:2016/01/11(月) 14:02:05.57 ID:SG7USrJ/.net
- Unity5.3でwindows向けにビルドすると、
オブジェクトをDestroyした時に
一瞬だけ破壊したオブジェクトが画面中央あたりに歪んで表示されるんだけど、
画面が乱れるというかなんというか、
何が原因でしょうか。
5.1ではそういった現象は発生しませんでした。
- 988 :名前は開発中のものです。:2016/01/11(月) 14:28:39.75 ID:jh+IJu+Y.net
- Unity5.3.1 で起動すると画面が灰色で、動きません。どうしたらいいですか?
- 989 :名前は開発中のものです。:2016/01/11(月) 18:41:55.05 ID:SG7USrJ/.net
- 質問ばかりで申し訳ないのですが、
MinMaxスライダーが使えるような自作Attributeを使っていると、
TooltipAttributeの説明が出せないのですがどうしたら良いでしょうか。
要するに自作のAttributeにTooltipの機能を付けたいのですが
- 990 :名前は開発中のものです。:2016/01/11(月) 23:21:57.82 ID:K3zVTq3j.net
- Scrollrectでドラムが回る「スロット」みたいなくるくる回るUIを作っています。
ただ、現行だと、ピタッと止まってくれず困っています。
きりの良い所でピタッと止めるためにはどうすればよいか良いアイディアございませんでしょうか。
- 991 :名前は開発中のものです。:2016/01/12(火) 03:22:52.36 ID:OM8zfT8J.net
- エレメントの要素数に応じて止まるべき値を求めりゃいいだけ。
OnEndDragとかで一番近似した値に現座標をおきかえてやりゃいい。
ゆるやかにそこに向かって動いてほしいとかはそれがわかりゃすぐできるだろう
- 992 :名前は開発中のものです。:2016/01/12(火) 23:42:02.92 ID:ZDlTm3rG.net
- >>991
ありがとうございます。
OnEndDragについて調べて実装に移ろうと思います。
助かりました!
- 993 :名前は開発中のものです。:2016/01/13(水) 02:16:13.14 ID:n+mb09xD.net
- uiをいじろうとしてcanvasをダブルクリックするとやたら離れたところにフォーカスがいくんだけど、ゲーム画面ぐらいまで近づいてくれないの?
- 994 :名前は開発中のものです。:2016/01/13(水) 08:40:05.57 ID:MNi6K6qF.net
- 質問が2つあるのですが、
・gameObjectとGameObjectの違いって何でしょうか?
・transform.findchildがリファレンスに見当たらないのですがレガシィなメソッドで使わない方がいいですか?
- 995 :名前は開発中のものです。:2016/01/13(水) 08:47:22.02 ID:6H9yVC2+.net
- クラスとインスタンスの違いは理解していますか?
なぜリファレンスに記載されてないかは知りませんが、transform.findがありますのでそちらを使ってはいかがでしょうか
- 996 :名前は開発中のものです。:2016/01/13(水) 09:13:22.70 ID:KB0GlEFX.net
- GameObjectは型(クラス)の種類の名前
gameObjectはオブジェクトが持っている、GameObject型のクラスの実体
初心者に紛らわしいのはGameObject自体もstaticメソッドを持ってることだろうけど、
GameObjectのstaticメソッドは共通の機能で、
gameObjectのメソッドは自分自身に関する機能を持ってる
- 997 :名前は開発中のものです。:2016/01/13(水) 09:23:52.66 ID:MNi6K6qF.net
- >>995-996
非常によく分かりました
ありがとうございました
- 998 :名前は開発中のものです。:2016/01/13(水) 10:45:13.32 ID:V7WW9YF0.net
- >>993
Canvasのデフォルトのレンダーモードはオーバレイ
オーバレイだと1ピクセル=1ユニットだから全体を表示しようとすれば当然そうなる
レンダーモードをカメラにしてメインカメラを対象にすれば望む動作になると思う
レンダーモードの詳細は下記参照
http://docs.unity3d.com/ja/current/Manual/UICanvas.html
- 999 :名前は開発中のものです。:2016/01/13(水) 11:13:43.28 ID:2ZlhPTps.net
- AnimationClip に関する質問です。
複数の Sprite から作った AnimationClip を
カスタムのエディタ上でプレビューするにはどうすれば良いでしょうか?
- 1000 :名前は開発中のものです。:2016/01/13(水) 12:24:46.73 ID:V7WW9YF0.net
- >>999
ここを見るとカスタムプレビューを自前で実装するしかなさそうな感じだね
どこかに完成品が転がってるといいんだが仕事中なのでちょっと探す暇は取れない。すまん
http://qiita.com/baba_s/items/8abfebb18f43fcc5d319
- 1001 :2ch.net投稿限界:Over 1000 Thread
- 2ch.netからのレス数が1000に到達しました。
総レス数 1001
331 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200