C++版Cities Boxの進捗報告

with コメントはまだありません

どうも、流行語大賞が発表されたらゲーム化しようと思ってたけどゲーム化しづらい言葉だったので諦めた管理人です。

先日発表したC++版Cities BoxことCities Box.cppですが、作り始めてから1週間ほどでだいぶできてきました。

こちらがメニュー画面。背景はとりあえずグレーにしておきました。背景画像を入れるかどうかは迷っています(視認性的な問題で)。

ボタンの画像はOpenSiv3Dで予め用意されている約1300種類のアイコン画像から利用しています。

16進数のコードを指定するだけで表示できるのでとても便利です。

 

マウスオーバーするとこんな感じに。

クリックするとマップとアドオンが読み込まれます。

 

数秒待つとおなじみのマップが。

…いや、よく見ると左下の方表示がバグってますね。

そう、1×2、2×1以上の複数のタイルを使うアドオンの表示はまだ対応できていません。

HSP版ではちょっと複雑な方法で表示させているんですが、もっと簡単な方法で表示できないか模索中です。

 

細かいことを言うと、HSP版ではマップ表示時の背景色は黒でしたが、今回はグレーにしました。

グレーのほうがなんとなくかっこよく見えるという独断の結果です。

 

マップの表示時には一応動作に気を使い、マップに表示されない部分は描画しないようにしています。

HSP版でも同じような工夫はしてありましたが、HSP版よりも描画範囲を狭めています。

 

動作パフォーマンスを見てみましょう。

こちらがC++版です。

対して、こちらがHSP(Recode)版です。

うーん、C++版のほうがパフォーマンスが悪化していますね。

まあPCもCPUもOSも違うので比べてもあまり意味がないんですが。

 

CPU使用率はともかくとして、メモリ使用量はもう少し抑えられたらなと思います。

ライブラリの仕様なのか、ウィンドウを表示しただけで60MBくらい消費しちゃうんですねぇ。

配列(vectorやlistなどのコンテナ)の使い分けやクラスの仕様をもう一度見直そうと思います。

 

GitHubでアルファ版を公開しています。動作の保証できないですがそれでもよかったらどうぞ。

https://github.com/YotioSoft/Cities-Box.cpp

 

Windowsにももちろん対応しますが、Macでの開発環境とVisual C++との仕様の違いで

ちょっと手間取っているので、しばしお待ち下さい。

Leave a Reply