回答編集履歴
1
もう1つ可能性があったので追記
answer
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
考えられる原因は
|
|
1
|
+
考えられる原因は3つ程あります。
|
|
2
2
|
|
|
3
3
|
理由1.ゲーム自体のフレームレートが落ちている
|
|
4
4
|
---
|
|
@@ -8,13 +8,22 @@
|
|
|
8
8
|
「エディタだと正常に動くのに実機(特にスマホ)だとカクつく」ような場合もフレームレート不足です。
|
|
9
9
|
(性能が足りないとその分フレームレートが落ちます)
|
|
10
10
|
|
|
11
|
+
※BloomやMotionBlurは「イメージエフェクト」というもので、一度カメラで映すべき画像に加工を加えて描画する物なので負荷が高く、下手に使うとフレームレート低減=カクつき悪化に繋がります。
|
|
12
|
+
(というか「ヌルヌル動くように見えるイメージエフェクトは無い」です)
|
|
11
13
|
|
|
14
|
+
|
|
12
15
|
理由2.カメラの移動スクリプトが悪い
|
|
13
16
|
---
|
|
14
17
|
カメラを動かすコードの書き方によってはカクカクして見えるケースもあります。
|
|
15
18
|
(ただ、参考サイトに載っているコードを使っていたり、カメラをFirstPersonControllerの子にしている場合は大体問題無く動くはずなので、大抵は理由1が原因です)
|
|
16
19
|
|
|
20
|
+
理由3.フレームレートを固定している
|
|
21
|
+
---
|
|
22
|
+
もしもソースコード内のどこかに
|
|
23
|
+
`Application.targetFrameRate = 30;`
|
|
24
|
+
という記述があった場合、どれだけ処理速度に余裕があってもフレームレートが指定の数字の通りになります。
|
|
25
|
+
一切記述しないか`Application.targetFrameRate = -1;`で、「その時、その機種で出せる最高値」になります。
|
|
17
26
|
|
|
18
|
-
|
|
27
|
+
また、「Edit → Project Settings → Quality → VSync Count」にて
|
|
19
|
-
|
|
28
|
+
「Every VBlank」「Every Second VBlank」のどちらかが設定されている場合もフレームレートが固定(ディスプレイのリフレッシュレートと同期)されます。
|
|
20
|
-
|
|
29
|
+
確認してみてください。
|