ゲーム動作が重い際の対処法
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*ゲーム動作が重い際の対処法 [#ibd85f48]
ゲームの動作が重くなる原因は、ゲームエンジン(この場合Bak...
またグラフィックボードのドライバーなどが影響する可能性も...
そして、ゲームの作り方によっても動作が重くなることがあり...
本項では、ゲーム作成時に考慮すべき工夫についてご紹介しま...
ただし、「これをすれば確実に改善する」という特効薬はあり...
「このゲームにおいて大事なものは何か」を把握し、地道に調...
**「ゲーム動作が重い」とは [#r7b95740]
「ゲーム動作が重い」という場合、主に以下の2つのパターンが...
-''ゲーム処理の遅延''
描画がスムーズでない、操作がカクつくなどのケースは、ゲー...
主にCPUやGPUに高い負荷がかかっている状態であり、これらの...
-''ローディングの遅延''
起動に時間がかかる、マップ間のローディングが長いなどのケ...
主にストレージやメモリに負荷がかかっている状態であり、ス...
**考え方の基本 [#hdc2024b]
-''不要なものを削減・間引く=重要な要素を見極める''
以下の要素を削減・間引くことで、負荷を軽減できます。
#br
・画面にほとんど表示されないもの、遠くにしか表示されない...
・ゲーム中、プレイヤーが接触しないもの
・頻繁なチェックが必要ないイベント
#br
つまり、「ゲームプレイにおいて重要な要素は何か」を見極め...
#br
-''まとめられるものはまとめる''
以下の要素は、まとめて1つのアセットにすることで負荷を軽減...
例えば
・「テーブルの上に散らばる小物」や「多数の茂み」など、個...
・ウィンドウの「枠」と「装飾」など、個別に画像として管理...
#br
これらの作業は、グラフィックやモデルの加工を伴うため、や...
しかし、例えばVroid StudioからVRMモデルをエクスポートする...
#br
そしてゲーム制作中、常にこれらの点を考慮しながら作業する...
カメラの動きやオブジェクトの配置が変われば、「何が不要か...
#br
しかし、ゲーム内容が概ね固まった段階で、負荷軽減のために...
負荷軽減を行う際には、[[パフォーマンスメーター:https://rp...
#br
-''本当に見直しが必要か?''
負荷の見直しをする際に、まずゲームをプレイしてフレームレ...
ご自身が考えられているフレームレートと同等の速度が出てい...
見直しに伴う修正作業の手間と見直した結果による効果を天秤...
#br
[[ミニメーター:https://rpgbakin.com/pukiwiki/?%E3%83%9E%E...
***マップ上の配置物の見直し [#sed1eef9]
-''不要な物の削減''
画面に表示されないオブジェクトは削除しましょう。また、表...
例えば、「茂み」のスタンプを多数配置している箇所がある場...
''&color(red){(!)};''サブグラフィックを使用して複数のスタ...
#br
-''パーティクルのPrewarm設定の見直し''
[[パーティクル]]のPrewarmは、マップ読み込み時に設定された...
例えば、5秒と設定した場合、5秒 x 60フレーム = 300回分の処...
この値を適切に設定することで、マップ移動時の負荷を軽減で...
Prewarmについては、[[パーティクル:https://rpgbakin.com/pu...
#br
-''不要なイベントの物体化''
「イベント」のコリジョンは、「物体」のコリジョンよりも負...
マップ上で侵入してほしくない箇所を塞ぐ際、コリジョンのみ...
透明なFBXモデルを作成し、リソース>3Dスタンプでグラフィッ...
リソース>地形のプロパティーで「通行可能」をNOに設定した...
通行不可の地形の上に配置された3Dスタンプのプロパティーで...
#br
-''「物体」のコリジョンを簡易なものに変更する''
リソース>[[3Dスタンプ]]のプロパティーで、簡易コリジョン...
プロジェクトを新規作成した際に含まれる3Dスタンプの中には...
これらのスタンプには、簡素なコリジョン用モデルが別途割り...
その場合は、必要に応じてコリジョンを「Box」などの簡易な形...
リソース>[[物理設定]]で単純なコリジョンを組み合わせたコ...
作成したモデルは、リソース>[[3Dスタンプ]]で「正確なコリ...
#br
-''「コリジョン不要な場所に配置する「物体」のコリジョンを...
例えば、一本道の両脇にプレイヤーが侵入できない森が広がっ...
このような場所には、コリジョンのない「物体」を用意して配...
リソース>[[3Dスタンプ]]で「正確なコリジョン設定」をONに...
#br
-''レンダリング設定の見直し''
ポストエフェクトは描画負荷が高いため、レンダリング設定を...
レンダリング設定の見直しには、[[プロファイラー:https://rp...
#br
-''マップサイズの削減''
マップサイズが不必要に大きくないか検討すると良いでしょう。
マップが広くなると、マップに配置するオブジェクトも多くな...
#br
-''カメラと配置物の位置調整''
カメラワークや壁、遮蔽物の位置を調整して、画面に一度に表...
***イベントの見直し [#pcd22d64]
-''衝突設定の最適化''
イベントシートの[[衝突判定:https://rpgbakin.com/pukiwiki_...
本当に衝突判定が必要なイベントか、再検討することをお勧め...
例えば、プレイヤー以外が接触しないスイッチイベントは、「...
また、イベントシートを分割し、条件によって衝突判定の有効/...
#br
-''並列イベントの最適化''
並列実行イベントや、並列して繰り返し実行されるイベントは...
例えば、プレイヤーに特定の「状態」が付与されているかをチ...
このようなイベントの冒頭に「指定した時間待つ」パネルを「0...
また、イベント条件を適切に設定することで、同時に動作する...
***レイアウトの見直し [#me1a9876]
-''レイアウトパーツの削減''
例えば、ウィンドウを「枠」「装飾A」「装飾B」の3つのレイア...
また、1つの画面に表示する情報量が適切であるか検討すること...
[[プロファイラー:https://rpgbakin.com/pukiwiki/?%E3%83%9E...
イベントを使用して複数のレイアウトを同時に表示すると、表...
#br
-''特殊書式の削減''
特殊書式を使用するパーツは、処理負荷が高くなります。
例えば、30個のアイテムを一度に表示するアイテムリストを、1...
***素材の見直し [#r897a430]
-''内部フォーマットの採用''
ゲーム定義>[[プロジェクト設定]]で「内部フォーマットを使...
この機能により、ローディング時の負荷を軽減できます。
詳しくは、プロジェクト設定>[[内部フォーマットの設定:http...
#br
-''使用する素材の軽量化''
画面内で小さくしか表示されないオブジェクトに大きなテクス...
#br
-''マテリアルの統合''
1つのモデルに複数のマテリアルが設定されている場合、それら...
#br
-''透明部分の削減''
透明・半透明なオブジェクトは、描画負荷が増加します。シェ...
詳しくは、[[プロファイラー:https://rpgbakin.com/pukiwiki/...
#br
-''画像の統合''
複数のパーツに分割されている画像を1つの画像に統合すること...
終了行:
*ゲーム動作が重い際の対処法 [#ibd85f48]
ゲームの動作が重くなる原因は、ゲームエンジン(この場合Bak...
またグラフィックボードのドライバーなどが影響する可能性も...
そして、ゲームの作り方によっても動作が重くなることがあり...
本項では、ゲーム作成時に考慮すべき工夫についてご紹介しま...
ただし、「これをすれば確実に改善する」という特効薬はあり...
「このゲームにおいて大事なものは何か」を把握し、地道に調...
**「ゲーム動作が重い」とは [#r7b95740]
「ゲーム動作が重い」という場合、主に以下の2つのパターンが...
-''ゲーム処理の遅延''
描画がスムーズでない、操作がカクつくなどのケースは、ゲー...
主にCPUやGPUに高い負荷がかかっている状態であり、これらの...
-''ローディングの遅延''
起動に時間がかかる、マップ間のローディングが長いなどのケ...
主にストレージやメモリに負荷がかかっている状態であり、ス...
**考え方の基本 [#hdc2024b]
-''不要なものを削減・間引く=重要な要素を見極める''
以下の要素を削減・間引くことで、負荷を軽減できます。
#br
・画面にほとんど表示されないもの、遠くにしか表示されない...
・ゲーム中、プレイヤーが接触しないもの
・頻繁なチェックが必要ないイベント
#br
つまり、「ゲームプレイにおいて重要な要素は何か」を見極め...
#br
-''まとめられるものはまとめる''
以下の要素は、まとめて1つのアセットにすることで負荷を軽減...
例えば
・「テーブルの上に散らばる小物」や「多数の茂み」など、個...
・ウィンドウの「枠」と「装飾」など、個別に画像として管理...
#br
これらの作業は、グラフィックやモデルの加工を伴うため、や...
しかし、例えばVroid StudioからVRMモデルをエクスポートする...
#br
そしてゲーム制作中、常にこれらの点を考慮しながら作業する...
カメラの動きやオブジェクトの配置が変われば、「何が不要か...
#br
しかし、ゲーム内容が概ね固まった段階で、負荷軽減のために...
負荷軽減を行う際には、[[パフォーマンスメーター:https://rp...
#br
-''本当に見直しが必要か?''
負荷の見直しをする際に、まずゲームをプレイしてフレームレ...
ご自身が考えられているフレームレートと同等の速度が出てい...
見直しに伴う修正作業の手間と見直した結果による効果を天秤...
#br
[[ミニメーター:https://rpgbakin.com/pukiwiki/?%E3%83%9E%E...
***マップ上の配置物の見直し [#sed1eef9]
-''不要な物の削減''
画面に表示されないオブジェクトは削除しましょう。また、表...
例えば、「茂み」のスタンプを多数配置している箇所がある場...
''&color(red){(!)};''サブグラフィックを使用して複数のスタ...
#br
-''パーティクルのPrewarm設定の見直し''
[[パーティクル]]のPrewarmは、マップ読み込み時に設定された...
例えば、5秒と設定した場合、5秒 x 60フレーム = 300回分の処...
この値を適切に設定することで、マップ移動時の負荷を軽減で...
Prewarmについては、[[パーティクル:https://rpgbakin.com/pu...
#br
-''不要なイベントの物体化''
「イベント」のコリジョンは、「物体」のコリジョンよりも負...
マップ上で侵入してほしくない箇所を塞ぐ際、コリジョンのみ...
透明なFBXモデルを作成し、リソース>3Dスタンプでグラフィッ...
リソース>地形のプロパティーで「通行可能」をNOに設定した...
通行不可の地形の上に配置された3Dスタンプのプロパティーで...
#br
-''「物体」のコリジョンを簡易なものに変更する''
リソース>[[3Dスタンプ]]のプロパティーで、簡易コリジョン...
プロジェクトを新規作成した際に含まれる3Dスタンプの中には...
これらのスタンプには、簡素なコリジョン用モデルが別途割り...
その場合は、必要に応じてコリジョンを「Box」などの簡易な形...
リソース>[[物理設定]]で単純なコリジョンを組み合わせたコ...
作成したモデルは、リソース>[[3Dスタンプ]]で「正確なコリ...
#br
-''「コリジョン不要な場所に配置する「物体」のコリジョンを...
例えば、一本道の両脇にプレイヤーが侵入できない森が広がっ...
このような場所には、コリジョンのない「物体」を用意して配...
リソース>[[3Dスタンプ]]で「正確なコリジョン設定」をONに...
#br
-''レンダリング設定の見直し''
ポストエフェクトは描画負荷が高いため、レンダリング設定を...
レンダリング設定の見直しには、[[プロファイラー:https://rp...
#br
-''マップサイズの削減''
マップサイズが不必要に大きくないか検討すると良いでしょう。
マップが広くなると、マップに配置するオブジェクトも多くな...
#br
-''カメラと配置物の位置調整''
カメラワークや壁、遮蔽物の位置を調整して、画面に一度に表...
***イベントの見直し [#pcd22d64]
-''衝突設定の最適化''
イベントシートの[[衝突判定:https://rpgbakin.com/pukiwiki_...
本当に衝突判定が必要なイベントか、再検討することをお勧め...
例えば、プレイヤー以外が接触しないスイッチイベントは、「...
また、イベントシートを分割し、条件によって衝突判定の有効/...
#br
-''並列イベントの最適化''
並列実行イベントや、並列して繰り返し実行されるイベントは...
例えば、プレイヤーに特定の「状態」が付与されているかをチ...
このようなイベントの冒頭に「指定した時間待つ」パネルを「0...
また、イベント条件を適切に設定することで、同時に動作する...
***レイアウトの見直し [#me1a9876]
-''レイアウトパーツの削減''
例えば、ウィンドウを「枠」「装飾A」「装飾B」の3つのレイア...
また、1つの画面に表示する情報量が適切であるか検討すること...
[[プロファイラー:https://rpgbakin.com/pukiwiki/?%E3%83%9E...
イベントを使用して複数のレイアウトを同時に表示すると、表...
#br
-''特殊書式の削減''
特殊書式を使用するパーツは、処理負荷が高くなります。
例えば、30個のアイテムを一度に表示するアイテムリストを、1...
***素材の見直し [#r897a430]
-''内部フォーマットの採用''
ゲーム定義>[[プロジェクト設定]]で「内部フォーマットを使...
この機能により、ローディング時の負荷を軽減できます。
詳しくは、プロジェクト設定>[[内部フォーマットの設定:http...
#br
-''使用する素材の軽量化''
画面内で小さくしか表示されないオブジェクトに大きなテクス...
#br
-''マテリアルの統合''
1つのモデルに複数のマテリアルが設定されている場合、それら...
#br
-''透明部分の削減''
透明・半透明なオブジェクトは、描画負荷が増加します。シェ...
詳しくは、[[プロファイラー:https://rpgbakin.com/pukiwiki/...
#br
-''画像の統合''
複数のパーツに分割されている画像を1つの画像に統合すること...
ページ名: