回答編集履歴
2
番号について修正
test
CHANGED
@@ -16,9 +16,9 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
4.、5. のような処理が入るのでしたら、
|
19
|
+
「4.、5.」 のような処理が入るのでしたら、
|
20
20
|
|
21
|
-
3. までの処理を行う単体のツールを作って、
|
21
|
+
「3.」 までの処理を行う単体のツールを作って、
|
22
22
|
|
23
23
|
その結果をファイルとして別途出力して、
|
24
24
|
|
@@ -28,7 +28,7 @@
|
|
28
28
|
|
29
29
|
|
30
30
|
|
31
|
-
2.の処理については、ファイルを切れ目なく読み込まず、
|
31
|
+
「2.」の処理については、ファイルを切れ目なく読み込まず、
|
32
32
|
|
33
33
|
適切な単位(適切なファイル数ないし行数)で短い sleep() などを入れて UI に処理を戻すようにすれば、
|
34
34
|
|
1
コメント指摘内容の反映
test
CHANGED
@@ -1,51 +1,49 @@
|
|
1
|
+
MujinSekai さんが説明くださった目的について
|
2
|
+
|
1
|
-
|
3
|
+
説明しやすいように番号を振らせていただきました。
|
2
4
|
|
3
5
|
|
4
6
|
|
5
|
-
|
7
|
+
1. ゲーム開始時に全てのファイルを読み込む。
|
6
8
|
|
7
|
-
|
9
|
+
2. その際、進捗のアニメーションを入れたい。
|
10
|
+
|
11
|
+
3. 全ファイルの数値から処理を行う。
|
12
|
+
|
13
|
+
4. 一度全ファイルを解放。
|
14
|
+
|
15
|
+
5. 以後、必要になったら必要なファイルを読み込む。
|
8
16
|
|
9
17
|
|
10
18
|
|
11
|
-
|
19
|
+
4.、5. のような処理が入るのでしたら、
|
12
20
|
|
21
|
+
3. までの処理を行う単体のツールを作って、
|
22
|
+
|
13
|
-
|
23
|
+
その結果をファイルとして別途出力して、
|
24
|
+
|
25
|
+
ゲーム開始時にはそのファイルを読むようにすれば、
|
26
|
+
|
27
|
+
起動時間をかなり短縮できるのではないでしょうか?
|
14
28
|
|
15
29
|
|
16
30
|
|
17
|
-
|
31
|
+
2.の処理については、ファイルを切れ目なく読み込まず、
|
32
|
+
|
33
|
+
適切な単位(適切なファイル数ないし行数)で短い sleep() などを入れて UI に処理を戻すようにすれば、
|
34
|
+
|
35
|
+
(例えばそこで進捗のアニメーションを表示したり、キャンセルボタンなどを検知する処理を入れれば)
|
36
|
+
|
37
|
+
よいと思います。
|
38
|
+
|
39
|
+
Unity についてはあまりよくわからないのですが、おそらくマルチスレッド化などしていても、
|
40
|
+
|
41
|
+
ファイル読み込みを切れ目なく行ってしまうと、アニメーション処理などは止まってしまうと思われます。
|
18
42
|
|
19
43
|
|
20
44
|
|
21
|
-
|
45
|
+
データのバイナリ化については、独自のファイル形式を作る方法と、C#の シリアライズ化を使って、
|
22
46
|
|
23
|
-
|
47
|
+
バイナリシリアライズする方法があると思います。
|
24
48
|
|
25
|
-
フリーズ状態になるのは、ファイルを切れ目なく読み込んでいるためだと思われますので、
|
26
|
-
|
27
|
-
適切な単位(ファイルないし行)で短い sleep() などを入れて UI に処理を戻すようにすれば、
|
28
|
-
|
29
|
-
(例えばそこで進捗のアニメーションを表示したり、キャンセルボタンなどを検知する処理を入れれば)
|
30
|
-
|
31
|
-
|
49
|
+
どちらがより適切かは私にもよくわかりませんが。
|
32
|
-
|
33
|
-
この処置によって、ファイルの読み込みはわずかに遅くなると思われますが、
|
34
|
-
|
35
|
-
フリーズ状態のとでは、ユーザーの印象は全く違うと思います。
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
次に 2.の読み込みに時間がかかることですが、
|
40
|
-
|
41
|
-
csvで4GBということは、データの内容にもよりもよりますが、
|
42
|
-
|
43
|
-
読み込み時のカンマと数字のパーシングの時間も無視できない量になってると思います。
|
44
|
-
|
45
|
-
ファイルをバイナリ化すれば、処理時間をかなり抑えられる可能性が高いのではないでしょうか。
|
46
|
-
|
47
|
-
また、1ファイル10MB で 4GB ということは、数百個のファイルがあるということですので、
|
48
|
-
|
49
|
-
ファイルのオープンクローズにかかる時間も無視できないと思います。
|
50
|
-
|
51
|
-
本当にそこまで細かく分ける必要があるのか検討された方がいいと思います。
|