トップページgamedev
984コメント389KB

【3Dゲームエンジン】Unity質問スレッド1

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2012/04/20(金) 13:11:07.27ID:wu5IoHob
3Dゲームエンジン「Unity」の質問に優しく答えるスレです。

Windows/Mac用。JavaScript/C#/Booといった汎用言語を使用できるのが特徴です。
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。
プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3他

次スレは>>970を踏んだ方が建てること。ダメなら>>980>>990が建てて下さい。

■本スレ
【3Dゲームエンジン】Unity 13
http://toro.2ch.net/test/read.cgi/gamedev/1334399781/

■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/

●リンク
・Unity(日本公式サイト)
 http://unity3d.com/japan/

・ユーザーガイド&リファレンス
 http://unity3d.com/support/documentation/
 (日本語訳)
 http://ws.cis.sojo-u.ac.jp/~izumi/Unity_Documentation_jp/Documentation/Manual/
・チュートリアル
 http://unity3d.com/support/resources/tutorials/
・FAQ
 http://answers.unity3d.com/index.html
・Unityのスクリプト公式
http://unity3d.com/support/documentation/ScriptReference/index.html

・MSDN
http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。
0287名前は開発中のものです。2012/05/06(日) 17:10:42.61ID:YNtUl0Kb
>>282
C++のイメージで言うと、先にオペレータオーバロードされてないか、
とかが真っ先に浮かぶよな
POD型としてのコピーももちろんそうだけど
0288名前は開発中のものです。2012/05/06(日) 17:13:37.28ID:MCmxwxtm
>>286
ゲームはすでに完成したので気にしてます。
0289名前は開発中のものです。2012/05/06(日) 17:33:11.55ID:5wPGrv4K
とりあえずセット使ったほうがいいってことか?
0290名前は開発中のものです。2012/05/06(日) 18:07:43.19ID:nuHwIyae
>>289
とりあえずは
速[ただの代入>Set>わざわざnewして代入]遅
みたいだから
piyo = new Vector3(1,2,3);
って書くくらいならSetした方がいいってだけ

Vector3にVector2をオペレータ通して代入するとかになるとまた計測してみないとわからんが

>>287
昔書けるからってVector3をoperator+で繋ぎまくってて
一時変数が大量にできてたのを知った時
何とも言えないがっかり感を覚えたのは良い(悪いかもしれない)思い出
0291名前は開発中のものです。2012/05/06(日) 19:44:29.44ID:YNtUl0Kb
>>290
その場合って、普通const 参照の受け返しだと思うが
0292名前は開発中のものです。2012/05/06(日) 19:46:15.08ID:YNtUl0Kb
あぁ、つないで結果を返すからか
+= と勘違い
0293名前は開発中のものです。2012/05/06(日) 20:48:34.09ID:xVvBNPMW
すごく初心者ぽい質問ですまないけど、c#でかいても、MSの実行環境CLRだっけ?で動かすわけでないから、
仕様はunityの環境に左右されるんじゃないの?
JSがスクリプトとして実行されるのでないように。
まあ変な勘違いなくすために踏襲されてるところが多いんだろうけど
0294名前は開発中のものです。2012/05/06(日) 21:24:15.11ID:MCmxwxtm
>>293
全然分かってないw
「MONO」から調べるべしw
0295名前は開発中のものです。2012/05/06(日) 21:29:34.46ID:okBu8Xln
うすら馬鹿ー
0296名前は開発中のものです。2012/05/06(日) 21:36:36.94ID:quxC+YZV
別に間違ったことは言ってないでしょ。
Mono知らないだけで。
0297名前は開発中のものです。2012/05/06(日) 21:54:10.80ID:t1dXxOYS
>>288
で?そこ速度のネックになってそう?
0298名前は開発中のものです。2012/05/07(月) 06:10:27.81ID:dzz1heKx
>>297
PCでは問題無いけど、iPhone用なんで、
チューンアップできる所はすべてやるつもり。
60fpsは厳しいけど、常時30以上は保ちたい。
0299名前は開発中のものです。2012/05/07(月) 06:30:02.04ID:PJSsNL5D
iphoneは60でないだろw
0300名前は開発中のものです。2012/05/07(月) 06:47:06.84ID:sZKAJIg0
>>298
うん、だからウィークポイントを計測した?
0301名前は開発中のものです。2012/05/07(月) 07:16:15.02ID:dzz1heKx
>>300
は?
0302名前は開発中のものです。2012/05/07(月) 09:09:32.77ID:rDY4XA3t
>>301
多分、速度のボトルネックになりそうな箇所を特定したら、そこになったのか?
と聞きたいんだと思う
0303名前は開発中のものです。2012/05/07(月) 10:16:50.64ID:TfKCZfMJ
「そこ」って何??
ますます意味不明。
0304名前は開発中のものです。2012/05/07(月) 11:31:39.04ID:7OBnf88e
どうでもいいけどプログラム板のC#の質問スレって異様な雰囲気だな
ほとんどの質問者がフルボッコにされて泣かされている
あいつら頭おかしい


0305名前は開発中のものです。2012/05/07(月) 12:49:01.65ID:0jWuDqdU
ムとマは初心者お断り 初心者にはvipのミングスレのがまし
0306名前は開発中のものです。2012/05/07(月) 18:43:59.63ID:sZKAJIg0
>>303
検証方法も不明なのに君はなにをやろうとしてるの?
馬鹿?

開発にもこいつなにやろうとしてんだろうとか思ったら
頼まれてもいない最適化に時間使ってる馬鹿がいてマジなぐりたくなった
一応どんな検証したのか聞いてみたら検証データも残してないし
基準になる数値も残ってない
なにとなにを比較したのか聞いてみても複数の要素をあっちこっちいじってて比較すらできてない
とか完全に時間の無駄やってて
3日でお払い箱にした派遣の○○くん思い出したよ

ハヤクシンデネw
0307名前は開発中のものです。2012/05/07(月) 18:58:11.14ID:oinbkdqk
まぁ描画に時間かかってるなら代入をいくら速くしても無意味だしな。
0308名前は開発中のものです。2012/05/07(月) 19:16:11.25ID:PJSsNL5D
ゲームの開発現場に派遣入れてるのか。
しかも自由度高そうだし。
0309名前は開発中のものです。2012/05/07(月) 19:29:42.00ID:Oiuj6SYB
だから最近のゲームは粗末なモノ出してしまっても
次に反省をいかせないのか
0310名前は開発中のものです。2012/05/07(月) 19:32:52.59ID:KhvJrHsu
折角いい感じで情報の蓄積が始まったのに、質問スレで雑談初められても・・・
0311名前は開発中のものです。2012/05/07(月) 19:39:35.81ID:EmMzD5fk
お なんかきもいのきてる
0312名前は開発中のものです。2012/05/07(月) 19:58:20.35ID:UlIDD954
>>307
無意味では無いでしょ。
例え1%であっても速くなるのなら意味はある。
特にモバイル機ではオーバーヘッドはなるべく減らすべき。

0313名前は開発中のものです。2012/05/07(月) 20:05:28.58ID:PJSsNL5D
>>312
無意味ではない。
無意味ではないが必要ないというところか。
物事は質ではなく量で考えよう。
実際には充分な速度を持てるのに
高速化に時間を費やすのは無駄。
可能な限り無駄でもやる。
これが日本の病。
0314名前は開発中のものです。2012/05/07(月) 20:41:46.13ID:E5G2+9EB
>>313
高速化を無駄だと思うなら君はゲームプログラマ向きじゃないね。

sin関数よりやや速い疑似sin関数を使ったり、
2点の距離を測るのにルートを使用しない関数を使ったり、
ゲームプログラミングはそういう効率化の積み重ねだから。
0315名前は開発中のものです。2012/05/07(月) 20:46:10.93ID:sZKAJIg0
>>314
>sin関数よりやや速い疑似sin関数を使ったり、
は?(笑)
0316名前は開発中のものです。2012/05/07(月) 20:56:21.31ID:E5G2+9EB
>>315
知らないってことはゲーム機での開発経験ないでしょ?w
PCはいいよねぇリソース無限でw

0317名前は開発中のものです。2012/05/07(月) 20:57:20.86ID:xq4cCikD
つーか、今のスマホは、昔のゲーム機みたいなカツカツだからな。
ちょっとでも速度や軽さ稼ぎたいってのはわかる。

PCだったら、作りたいものにもよるが、そういうレベルで気にするもんでもない。
極限まで最適化するなら、マシン語とかになる。極端な話。

だから、時代や環境や制作コストに合わせた、費用対効果でできる範囲でやればいい。
絶対に○○しないといけないんだ!みたいな先入観にとらわれないように。
0318名前は開発中のものです。2012/05/07(月) 21:04:37.95ID:oinbkdqk
いや、1フレームの描画に15msかかって、それ以外のあたり判定やらの処理が5msくらいで終わるなら、CPU側の処理を短縮しても意味なくない?
0319名前は開発中のものです。2012/05/07(月) 21:10:02.43ID:xq4cCikD
>>318
実行環境にもよるだろうから、コスト0で速くなるなら絶対にやった方がいいけど、
実際にやるかどうかは、ケースバイケースだろうな。
0320名前は開発中のものです。2012/05/07(月) 21:14:39.76ID:CZs6WxXS
>>ID:oinbkdqk
俺はキミの言ってることに賛成だよ。

レジが一台しか無いスーパーで、いつもレジが大渋滞になってる場合に、
個々の商品の陳列の順番を多少変えたところで客の回転に関しては
“あまり”意味がない。こういう文脈では無意味って言ってもいいと思う。

文脈って大切だよね。
0321名前は開発中のものです。2012/05/07(月) 21:17:24.00ID:xq4cCikD
>>320
完全に完結したプログラムでそこ以外一切いじらないならそうだけど、
修正や追加したときに、その前提条件なんてすぐに変わるよ。

まぁ、絶対に変わらないって自信があるならいいけど、
かなり限定された条件での話になるな。
0322名前は開発中のものです。2012/05/07(月) 21:20:18.61ID:PJSsNL5D
これからはハードの有り余る処理能力をふんだんに消費して楽をする時代になる。
0323名前は開発中のものです。2012/05/07(月) 21:20:55.81ID:CZs6WxXS
>>321
〜という前提であればっていう話だよ。
だからその前提であればその通りだねって言ってるだけ。

〜という前提はあるが、状況はいつでも変わりうるからなんとかかんとかって
そういうのはこの文脈においては“意味が無い”と思うよ。

状況によりけりだから、○○という状況であればって話をしてるわけだしさ。
話を交ぜ返して状況によりけりだからって言うのにいったい何の意味があるの???
0324名前は開発中のものです。2012/05/07(月) 21:21:33.33ID:psIqeyAC
そろそろスレチ。他でやってね。
0325名前は開発中のものです。2012/05/07(月) 21:23:13.83ID:PJSsNL5D
雑談はこちらで。
【3Dゲームエンジン】Unity総合スレッド14
http://toro.2ch.net/test/read.cgi/gamedev/1335186904/
0326名前は開発中のものです。2012/05/07(月) 21:23:31.30ID:xq4cCikD
やっぱり間違ったレスを見たら、修正してあげないとなw
質問スレだしw
0327名前は開発中のものです。2012/05/07(月) 21:25:56.59ID:oinbkdqk
俺の認識が間違ってるのかもしれないからちょっと質問する。

XNAの話だけど、この人がGPUの描画タイミングについて1フレーム遅れて処理されてるって説明してるよね。
ttp://blogs.msdn.com/b/ito/archive/2009/03/25/how-gpus-works-01.aspx
UnrealEngineでもそのようにされてるってのをどっかで見たことがあって、Unityでも当然そのように処理されてると思い込んでいたんだけど、もしかして違うの?
UnityってGPUとCPUの処理が直列で処理されてるの?

それだったら今までの俺の主張は間違いだから、高速化できるところは全て高速化してください。
0328名前は開発中のものです。2012/05/07(月) 22:02:40.57ID:yFLkWMuW
>>322
そう思っていた次期がわしにもありました
家庭用 Famicom->MegaDrive->PCEngine->SuperFamicom->PlayStation->PS2->PS3
PC 8001->8801SR->9801->IBMPC ここからビデオカード -> S3 -> Matrox -> PowerVR ->Geforce ->GForceFX(ココまで涙目)
最近やっとだw
0329名前は開発中のものです。2012/05/07(月) 22:55:43.12ID:sZKAJIg0
>>316
で?
それはunityでも意味があるって話をしてるの?
0330名前は開発中のものです。2012/05/07(月) 22:57:26.21ID:+CDYVz9t
うぜえから消えろカス
0331名前は開発中のものです。2012/05/07(月) 23:12:45.36ID:sZKAJIg0
>>330
それはこちらのセリフだ

一生懸命Setの時間なんてはかってるから意味があるのか?って聞いたら
予想通りの返答だよなカス

お前みたいなクズはこのままじゃなにも作れない
絶対だ

それはお前の人生がなにも積み上げてこなかったからだ
砂の上に柱立てて、砂の上に土台作って、砂の上に・・・てな具合だな
まず、砂の上でやるなよwって当たり前のこと言ったら君は逆上したんだ
俺のやることに口出すなよってね
周囲からみたら馬鹿にしか見えない、お前大丈夫かよ?って誰でもいうだろw

今回だってよく自分の行動を分析してみるべきだと思うぜ
なんでSetの速度なんて測ろうと思った?
君の目的なにかな?
どうして目的忘れてそんなことしちゃったのかな?
ゲームは完成するかな?ってね
0332名前は開発中のものです。2012/05/07(月) 23:24:21.07ID:KhvJrHsu
アホに釣られてレスやりとりしてると質問スレが潰れますよ
ここは質問と回答だけあればいいスレです
0333名前は開発中のものです。2012/05/07(月) 23:47:16.54ID:oinbkdqk
解答無いから2パターン答えとくと、UnityがGPUとCPUで並列処理を行っている場合、恐らくネックになるのはGPUだから30FPSを目指すなら、そっちを改善した方がいいよ。
仮にCPUでの処理が足を引っ張ってるなら完全に設計が悪いのでSetの高速化なんてやってる場合ではないよ。
そもそも最近のゲームがUnrealScriptやらC#やらJavascriptと言ったCやC++の20倍くらいは遅い言語で問題ないのかというと、
当たり判定やルート探索みたいなNativeで行ってる処理以外は殆ど問題にならない程度の負荷しかないからだよ。
だから、そんなとこが問題になるようなら設計見直した方がいいよ。

で、GPUとCPUが直列でしか処理できないなら、格ゲー・弾幕STG以外のものを作ってるならUnity以外のもので作った方がいいよ。
格ゲーや弾幕STGみたいに1フレ2フレ単位で技の判定が行われるゲーム以外、1フレーム内にCPUとGPUの処理を押し込む意味は殆ど無いよ。

逆に言えば描画が1フレーム遅れる場合、格ゲーをUnityで作るのは完全に不向きだと思うよ。
まぁシビアじゃないものを作るなら別だけど。
0334名前は開発中のものです。2012/05/08(火) 02:16:03.73ID:ZifHTSGd
俺がpositioxとsetの質問をしたばかりにこんなことに…

最高に笑えるぜ!
0335名前は開発中のものです。2012/05/08(火) 05:15:01.01ID:FOolLTyw
Vector系やQuaternionやRect等はUnityが昔からもってる機能だけど、Setが実装されたのはUnity3.5から。今更な感じが逆に気になったから実測してみただけ、折角だから結果を投げ込んでみたが、ただのデータだ、解釈は好きにすればいいさ。
俺の中の結論としては、
シチュエーションにあわせて普通に使えばいいって程度の差で、古いソース書き換えるほどの話では無いってのがわかったから満足。
今更っぽさと最近のUnityの開発方向からみて多分スマホ系向けの最適なんじゃないかと思うが、俺はスマホに興味ないから興味あるやつがいるならそっちは勝手に調べればいいよ。
あと煽っても何も出さないよw
0336名前は開発中のものです。2012/05/08(火) 05:39:59.33ID:7lGBCwIQ
>>331は何で威張ってるの?w
それが一番無駄っぽいw
0337名前は開発中のものです。2012/05/08(火) 05:52:57.36ID:eXoxC6cj
>>335
スマホでは速度だけでなく、バッテリー消費量も重要だからね。
オーバーヘッドを減らしてバッテリー消費を少しでも抑える努力は
プロなら必要になる。

でも趣味でやってるだけなら別に気にしなくてもいいよ。

0338名前は開発中のものです。2012/05/08(火) 07:06:09.38ID:T6q1+zrP
>>335
そこが気になったとしたら、恐ろしくセンスないな
0339名前は開発中のものです。2012/05/08(火) 07:10:46.39ID:vidcy9sx
むしろ気にならない方がエンジニアとしてのセンス無いよ。
言われた事だけやってるタイプ。
0340名前は開発中のものです。2012/05/08(火) 12:15:16.06ID:085SRNuC
>>314
・・・そういうにわかがよく出しそうなゲームプログラマな自分を装う例は釣りなのか?
0341名前は開発中のものです。2012/05/08(火) 16:21:35.41ID:ZifHTSGd
キャラニ体をアニメーションさせてるだけなのに
drawcallが54もある。
これって普通?
0342名前は開発中のものです。2012/05/08(火) 16:35:57.87ID:jCbXC+xa
マテリアルが分かれてたりメッシュが分かれてたりするとそうなる。ワンメッシュワンマテリアルで。
0343名前は開発中のものです。2012/05/08(火) 16:38:25.71ID:ZifHTSGd
そうなのか。多いのか。
0344名前は開発中のものです。2012/05/08(火) 17:32:03.73ID:ZifHTSGd
ライトが多かったみたい。
リアルタイムライトをメッシュ一個に当てるとドローコールが+1
二個に当てると+2
0345名前は開発中のものです。2012/05/08(火) 23:14:31.81ID:HNJP8cLp
>>249
遅レスですまないが、となると普段は固定フレームで処理が重くなったらスローになるような昔ながらのゲームは作りにくいって事かな。
0346名前は開発中のものです。2012/05/08(火) 23:57:58.47ID:T6q1+zrP
>>345
いや、別に
Hierarchyに1つだけおいたゲームオブジェクトのAwakeとUpdateしか使ってないよ俺
Updateの中で16ms越えたら〜ってやってる
普通に動くよ
描画を止めるってできんのかな?
描画だけはUnityにまかせて動いてない静止画をたくさんかいてもらってる状態
止められるのかな?これ?
0347名前は開発中のものです。2012/05/09(水) 00:14:20.60ID:hMBhHpmQ
>>346
タイマーつけて時間がくるまでupdateさせないとか?
0348名前は開発中のものです。2012/05/09(水) 00:31:45.46ID:7Xe8n22y
>>345
>>249だが確かに少し作りにくいかもしれない

自分のスクリプト内で処理する移動量とかは
1秒でx軸に+100の速度で移動する場合
pos.x += Time.deltaTime * 100;
とするが
60fps前提で処理が重くなったらスローにする場合
pos.x += (1/60.0f) * 100;
にする
つまりTime.deltaTimeを使用して経過時間基準にしている場所をフレーム基準の係数に置き換えるだけでいい

ただしFixedUpdateは処理が重くなった場合に連続して呼ばれた気がする(うろ覚え)ので注意

アニメーションは通常UpdateとLateUpdateの間でTime.deltaTimeを使ってUnityが進めるようなので
>>239のようにする
あれは再生後に再生速度に0を設定してUnityが時間を進めるのをキャンセルし
Updateで1フレームずつ進んだ場合の時間を設定してる
わざわざフレーム数を保持しなくても
state.time += 1 / 60.0f;
でもとりあえずは動きそうだが長いアニメーションだと計算誤差が溜まったりするかも?

で、方法がわからんかったのがPhysics
あまり使ってないからというのもあるが
Physics関連の進み具合を調整する方法がぱっと思いつかなかった
誰か処理が重くなったらスローになるようにPhysicsの設定ができるなら教えておくれ

なので自分としては「アニメーションに少し細工が必要だがPhysicsを使わなければ可能」と思ってる現状
0349名前は開発中のものです。2012/05/09(水) 00:38:17.86ID:7Xe8n22y
fpsの上限設定はApplication.targetFrameRateで
でもEditor上だと設定が無効っぽい?
アニメーションの方法ももっと簡単にできる方法があれば誰か教えてくれ
0350名前は開発中のものです。2012/05/09(水) 00:56:44.34ID:hMBhHpmQ
>>348
ごめん。よくわかんないんだけど、アニメーションが再生してる間はズレてて、再生が終わったときにモーションの長さからあるべき時間を計測して
その時がくるまで静止させておいてるってこと?それってキャラクターが1体だとそれでいいかもしれないけど複数のキャラクタがモーションを切り替えるタイミングが異なってる場合ってどうなる?

>>349
そこはビルドしないとダメらしい。謎仕様の一つだね。
0351名前は開発中のものです。2012/05/09(水) 01:57:51.93ID:7Xe8n22y
>>350
普通にアニメーションを再生すると
フレーム基準で進ませたいのにエンジン側はアニメーションを時間基準で進めてしまう
それによってスローになった場合もアニメーションだけはスローにならないので見た目がずれる
という問題点が出る

それを解決するために
アニメーションは再生状態になっているがエンジン側のアニメーションを進ませる処理を無効にして
自分でアニメーションを進めるというのが>>239の処理

>>239の処理にコメントを書くと
function Start () {
animation.Play(animName);// 再生する
animation[animName].speed = 0;// エンジン側のアニメーションを進ませる処理を無効にする
}
function Update () {
// 何フレーム目までアニメーションが進行してればいいかを計算する
++frame;// フレームを進める
var state : AnimationState = animation[animName];// AnimationStateの取得
var maxFrame : int = Mathf.FloorToInt(state.length * 60);// アニメーション全体のフレーム数を計算
frame = Mathf.Repeat(frame, maxFrame);// ループさせる
// フレーム数から時間に戻して設定する
state.time = frame / 60.0f;
}
って感じになる

なんで実際は
同じオブジェクトに付いているAnimationコンポーネントを利用して
フレーム基準でアニメーション進行をさせるスクリプトを書く
それを各キャラに追加していくって感じになるかな

切り替えのタイミングは関係ないと思うの
0352名前は開発中のものです。2012/05/09(水) 02:22:24.55ID:hMBhHpmQ
止めておくわけでは無いのか。
どうもありがとう。
よくわかりました。
unityがわで揃えてくれたらなあ。
0353名前は開発中のものです。2012/05/09(水) 08:38:17.23ID:rQndBjwE
そもそもアニメーションをフレームレート基準にしたいとおもうのが間違えてるんじゃ???
よく知らないけど
0354名前は開発中のものです。2012/05/09(水) 09:59:25.84ID:5YfS3YVN
>>353
アニメーションをフレームレート基準にしたいのは
作る物がフレームレート基準で混在させると処理が重くなった時にずれるから
なのでアニメーションをフレームレート基準にしたい事自体は間違ってないと思う

ただし作る物がフレームレート基準なのが間違ってるかどうかは
要求されてる仕様等によって変わるから要求を知らないと判断しようがない

判断しようが無いので知っている範囲でフレームレート基準にする場合の方法を書いてみた
自分でフレームレート基準の物をUnityで作った事は無いから気づいてないだけで見落としはあるかも
Physics関連の部分はフレームレート基準にする方法が思いつかなかった

要求まで見えていてフレームレート基準よりも時間基準にした方がいいと判断できる場合
その要求なら時間基準の方がいいと説明をする方が親切だとは思ってる
0355名前は開発中のものです。2012/05/09(水) 11:28:40.01ID:VcSq6KSt
日本語でおk!
0356名前は開発中のものです。2012/05/09(水) 11:43:08.77ID:hMBhHpmQ
fbxインポーターにloopのチェックボックスが二種あるけど
なんのためにあるのでしょう?
0357名前は開発中のものです。2012/05/09(水) 11:44:16.15ID:hMBhHpmQ
次のゲームループで何か作業をさせたい場合に
モーションが進みすぎてると困る。
そういう処理具合の問題。
0358名前は開発中のものです。2012/05/09(水) 12:45:38.32ID:ralf1cV8
>>356
ループ動作はWrapMode側で指定。

Loopのチェックボックスは、
綺麗にループするようにエンドのあとにスタートが繋がった形で再生が進むようになるんだと思う。
チェックされていると、前フレームからの経過時間がエンドを超えていた場合などはたぶんエンドフレームをすっ飛ばして再生が進んでエンドには到達しない可能性が高くなる、
そのかわりループは綺麗に繋がると。
0359名前は開発中のものです。2012/05/09(水) 14:04:14.12ID:hMBhHpmQ
>>358
それはスプリットのフレーム数を指定する業の末尾にあるloopのチェックボックスですよね。
なんかその上の方にもループやonceを選べるリストがあるよね?
あれとフレーム数を入れる欄の違いがわからん。
スプリットした分と、
スプリットしない分の違いだけで、
スプリットした分だけならフレーム数を入れるとこだけ見てれば良いんだよな?
0360名前は開発中のものです。2012/05/09(水) 14:07:43.45ID:hMBhHpmQ
ああ。俺は何を言ってるんだ。
>>359は無視してくれ。ありがとう。、
0361名前は開発中のものです。2012/05/09(水) 18:20:30.10ID:jPmn5Rou
>>354
>Physics関連の部分はフレームレート基準にする方法が思いつかなかった

メインループ見えてれば、なんの苦労もなく bullet で言う stepSimulation 叩くタイミング確認するだけなのにな
その辺が残念だ
0362名前は開発中のものです。2012/05/10(木) 17:26:51.17ID:mF80C2lF
今更ながら下記ブログ記事「UnityとUIKitの合成表示」を試しています。
ttp://radiumsoftware.tumblr.com/post/4306788939

記事中に「Unityの画面同期方式としてDisplayLinkを選択した場合、
インタラクション中に描画が止まる」とあり、まさにそのようになっているのですが、
DisplayLinkをオフにする方法が分かりません。
同期方式の設定欄がどこにあるのかすら分からないのですが、
どなたか教えて頂けませんか?
0363名前は開発中のものです。2012/05/10(木) 17:56:53.51ID:59T+73vk
>>326
「画面同期方式」からQualitySettingsのVSyncCountの事かもしれないと予想
0364名前は開発中のものです。2012/05/11(金) 00:13:43.07ID:8Gh+aa1k
>>362
すまん全然違った
ttp://d.hatena.ne.jp/nakamura001/20110702
たぶんここに書いてあるUSE_DISPLAY_LINK_IF_AVAILABLEの事かも
Mac無いから自分では確認できないんだけれども

しかも326とか打ち間違えたし
0365名前は開発中のものです。2012/05/11(金) 07:22:49.89ID:6r4xdIuC
おまえらいい加減FPS依存やめろや
移動Pathの設定からなにから時間依存に変更しないとめんどくさいことこの上ないぞ

とメガドライブでPAL/Secam仕様の時の愚痴を述べる俺は老人
0366名前は開発中のものです。2012/05/11(金) 08:25:56.50ID:keWdzJ1G
昔のゲームはPALバージョンだと少し遅くなってたよねw
0367名前は開発中のものです。2012/05/11(金) 08:58:53.63ID:KirC+wt9
フレームレート基準のやり方について書いといてなんだが
基本的に時間基準の方がいいよな、Unity自体が時間基準だし

まあ時間基準にしててもNTSCからPALにした時に繋がらなくなるコンボが出るとか聞いた事あるから
単に時間基準にしてれば全て解決ってわけでもないのだろうけど
0368名前は開発中のものです。2012/05/11(金) 09:07:22.65ID:keWdzJ1G
>>367
>まあ時間基準にしててもNTSCからPALにした時に繋がらなくなるコンボが出るとか聞いた事あるから


それは時間基準のロジックが根本的に間違ってるんでしょw
60fpsか50fpsの違いでコンボが出なくなるなんて酷過ぎるw

0369名前は開発中のものです。2012/05/11(金) 09:52:39.23ID:KirC+wt9
うん、たぶん根本的に間違ってたんだろうな

おそらく入力の判定間隔が少し長くなったせいで1発目と2発目の攻撃間隔が少し長くなって
ぎりぎり当たってた2発目が当たらなくなったんだと思う

元を作ったのは別の会社でその海外版対応をしてたらしいんだが
その現象が起きるせいで各種コンボがそのまま繋がるかをチェックしてたみたい
大変そうだなぁと思いながら聞いてたけど
0370名前は開発中のものです。2012/05/11(金) 12:26:13.66ID:GzPeeZSP
X座標の値だけを特定の値に指定したいんだけど、どうしたらいい?
0371名前は開発中のものです。2012/05/11(金) 12:37:46.59ID:WDs4K7uD
どうしたらいいと思ってる?
まずは自分の考えを言ってみなよ
そうすればいろいろと見えてくるから
0372名前は開発中のものです。2012/05/11(金) 13:56:00.87ID:PAZZuyqn
>>370
rigidbodyならconstraintsってのがある。
スクリプトからでもインスペクターからでも変えられる。

この場合「移動を制限」を英訳してぐぐればみつかったはず。
0373名前は開発中のものです。2012/05/11(金) 14:04:40.46ID:GzPeeZSP
>>371
じゃあ言ってみるよ。
new Vector3(X座標に特定の値,Y座標に今の値,Z座標に今の値);

これをpositionなりにぶち込む。
でもなんだかYとZの値は変えないのにぶち込む処理をするのが無駄な気がしてる。
なんとかしたい。
でもXだけの値を参照する事はできても、Xだけの値を変更する事は微妙にできない気がするんだけど。
以前の値にXの値だけ増減させるってのならできるんだけどね。

>>372
Vextor3構造体のXだけいじれないってのがキモだけどなあ。できるのかな?
0374名前は開発中のものです。2012/05/11(金) 14:22:28.67ID:PnHwLQKg
transform.position.xにそのまま数字なり変数なりぶちこめばいいんじゃね
0375名前は開発中のものです。2012/05/11(金) 14:46:21.67ID:KirC+wt9
こうじゃないの?
function Update () {
transform.position.x = 0;
}
まあC#で
void Update () {
transform.position.x = 0;
}
だとコンパイルエラーになるけどな
0376名前は開発中のものです。2012/05/11(金) 14:46:28.74ID:VK4dPgF/
>>362 です。

>>364
まさにこれでした!
ありがとうございます! 解決しました!
0377名前は開発中のものです。2012/05/11(金) 15:15:18.96ID:GzPeeZSP
>>374-375
そう。C#だとそれだとエラーになる。参照してるだけとか言われる。どうしよう?
0378名前は開発中のものです。2012/05/11(金) 15:28:37.26ID:keWdzJ1G
>>377
なぜC#でそれができないのか?
それはVector3がstructで、C#のstructは「値渡し」だからです。
transform.positionはVector3の参照ではなく、
値をコピーして返しているので、ダイレクトに中身の変更はできないのです。

なのでnew Vector3()で丸ごと変えるのが正解。
0379名前は開発中のものです。2012/05/11(金) 15:37:25.68ID:GzPeeZSP
>>378
という事は俺は正解に不満をいだいていたのか。
でもインスペクタの値を変える方法があったような。
探ってみるかな。
0380名前は開発中のものです。2012/05/11(金) 16:56:09.37ID:PnHwLQKg
>>290を考えるとC#の必要がないならJAVAで直代入の方が早いってことか
0381名前は開発中のものです。2012/05/11(金) 17:26:49.54ID:L9ZSfCXH
そういう話してると、またボトルネック厨が発狂しちゃうよw
0382名前は開発中のものです。2012/05/11(金) 17:47:18.41ID:niRbYERk
>>378 >>379
別にメンバで Vector持っておいて、コピーしたらいいんじゃないの?
実際の挙動はイコール演算子の動作定義によるが

>>380
C#のクラスは参照渡しでしょうが
なので、Vectorが struct でなく class であれば無問題だけど、
本来 Vector みたいなデータ構造は、そのまま構造体でいいはずなので、
どっちかって言うと ref で渡せるメソッド経由が正解
0383名前は開発中のものです。2012/05/11(金) 19:34:52.37ID:DWW04CAF
作っててそんなこと疑問に思わなかったからなんだと思ったら
俺のプログラムはフレームで描画前の描画モデルの更新のときのみしか
ゲームオブジェクトへの値の更新は行ってないわ

ゲームオブジェクトへの値の更新が1フレに何度も行われるって設計がヘンテコなんじゃね?
0384名前は開発中のものです。2012/05/11(金) 20:15:08.66ID:GzPeeZSP
>>383
キミが作ってるのはどんなゲームなんだ?確かに一度にすべきかもしれんがな。
0385名前は開発中のものです。2012/05/11(金) 20:47:56.99ID:DWW04CAF
>>384
ゲーム関係ねぇって1度にしろよ
0386名前は開発中のものです。2012/05/11(金) 20:57:44.04ID:L9ZSfCXH

衝突とか一切ないゲームなの・・・?
0387名前は開発中のものです。2012/05/11(金) 21:16:14.93ID:niRbYERk
>>385
描画前に一度しか値をセットしない?
初期値しかセットしてないって事?

もうちょっと正確に
■ このスレッドは過去ログ倉庫に格納されています