アットウィキロゴ

ゲームサーバーの負荷について

アイテムと衝突判定

ゲームで最もリソースを食うのは小物の衝突判定
  • 例:アイテム50個と、地面ブロック256個が衝突判定
    • 12800判定になります
  • 例:サーバー全体に500個のアイテムが存在し、それぞれ256ブロックと衝突判定
    • およそ1フレーム13万回、60fpsなら毎秒768万回判定を食い潰します
    • サーバーにとって致命的な負荷

地形と衝突判定

  • 衝突判定は、ブロックの表面と行われます
    • 真っ平らな地面よりも複雑な形の建造物の方が表面積が広くサーバーへの負荷が高くなります

  • マップの開発や開拓が進んで
    • 高層建築・クリーパーやTNTの爆発穴・洞窟が増えるにつれサーバーは不安定になっていきます

トラップタワーの負荷

  • 規模の大きなトラップタワーはサーバーの負担になります
    • アイテムが自動消滅するまでには10分から15分かかりますが
    • その間に100個以上のアイテムが貯まるトラップタワーはサーバーの負担になります

  • この負荷は、拾わないアイテムを自動焼却することで大幅に軽減することができます

  • なおトラップタワー内に沸くモンスターの負荷についてですが
    • モンスターはタワーが無くとも、地下洞窟に沸くのでタワーの有無で大きく増減することはありません

負荷を減らすには?

  • アイテムの総量を減らして衝突判定回数を減らす
    • トラップタワーに焼却炉を義務づける
  • 地形をシンプルに保って衝突判定回数の増加を防ぐ
    • TNTとクリーパーの爆発を止める
    • 狭い地域(144ブロック内)に建物を乱立させない
最終更新:2011年11月28日 12:19