緊急企画。マオです。

さてパソコンのパワーアップが終わったので、UgoCraftの変換耐久試験を行う事になりました。
実は換装前に変換耐久試験をやってて、専用のワールドも作っておいたのだ。


山を浮かせただけです。
浮いている部分で大体17000ブロックくらいで、適当に切っていくつかのサイズを用意してみました。
簡単な話、これをスライドさせるだけの簡単なお仕事です。
使用しているUgoのバージョンは公開前の開発バージョンで行ってます。
後、換装後にさらに軽減処理を仕込んだので、正確な比較ではない気がする。
なので、話半分で見てくれ。

予備知識。
UgoCraftでブロックを動かす工程で、重くなる処理は以下の通り。
「ブロックを検索してUgo objectにする」「Ugo objectを動かす」「Ugo objectをブロックに戻す」
今回の実験で感じたのは、「Ugo objectを動かす」処理は他の処理に比べたら、遥かにマシになったと感じた。
初期バージョンでやったら、1000ブロックもマトモに動かせないはず。
後、ブロックの配置によって、移動処理が軽減出来たり出来なかったりする。
軽減率が一番高い配置は、見える面積が小さい構造物である。
3×3×3の構造物は中心の見えないブロック部分の処理が省略される。
大きな塊を動かしたとしても、ブロック数と実際の移動処理のコストは比例しない。
ただ、変換作業だけはブロック数の影響を全部受ける。
向きがあるブロックは、特に処理速度が酷い事になるので注意しよう。
開発版で少しは軽減してるけど・・・。
MinecraftとJavaの仕様で、巨大構造物の1回目の変換に関しては、必ず重くなる。
ブロック更新をする為の配列のサイズ拡張処理が含まれてしまう為である。
一回変換すれば、ゲーム終了まで拡張されたままなので二回目以降の感想になる。

換装前スペック
CPU:Core i3 530
割り当てメモリ:1GB
グラボ:GT220

換装後スペック
CPU:Core i5 3550
割り当てメモリ:1GB
グラボ:GT640

「17000ブロック」
さすがにどちらも目に見えて動きが悪いし、変換時に気になるフリーズを感じる。
換装前はUgo object移動中は1FPSと出てるが、完全に処理しきれていない。
換装後は13~15FPSくらいで、動いている。
実用的なサイズではない事は確か。

「13000ブロック」
ちなみに、このブロックの数は適当に山を切り崩して作っている(笑)
換装前はどうしようもない。
換装後は28FPSで動いている、気になるブレを感じるがマトモに動く。

「6400ブロック」
換装前はようやくマトモに動くように見える。
換装後はまったく気にならない動きになった。
ただ、両者に言える事は多少変換時にフリーズが起こる。
以下、動きに関しては問題無いので省略。
換装後も特に体感では変化が無いので省略。

「1100ブロック」
間にいくつか挟んでいるが、ここまで来て換装前の変換が気にならなくなる。

こんな感じですね。
今後Core i3の環境でのテストはされませんので、ここら辺の環境で遊んでいる人はごめんなさいね。
軽減処理は今後もやってくから、それでマトモに動く事を祈ってください(笑)
でも、1.3に移植できるかがまだ不明だが・・・。

カテゴリ/タグ:月面開発室 /  ,    
コメント (0)


コメントフォーム(注:投稿内容にURLがある場合、管理者の確認の上で公開する設定になっています)