まず、いくつかの裏話:
「ローグライク」ゲームになりそうなものを作っているので、頭の中に浮かんだ興味深いアイデアを実行することができます。ゲームプレイはダンジョンクロールにはなりませんが、いずれにせよ、表示は同様の形式で、単純な ASCII 文字で行われる予定です。
これは自己演習であるため、ほとんどのコードを自分でコーディングするように努めています。
最終的には、任意の大きなゲーム ワールドでゲームを実行できるようにしたいと考えています。(ゲームをネットワーク化し、コンピューターラボの多くのモニターにまたがることを想像するところまで)。
現在、テキスト コンソールの任意のセクションに読み書きできるコードと、効率的にパスを検索できるようにセットアップされた単純なパーティショニング システムがあります。
そして今、質問:
いくつかのベンチマークを実行しましたが、最大のボトルネックはテキスト コンソールの再描画です。
ゲームの世界がこれほど大きくなると、ディスプレイのインテリジェントな更新が必要になります。フレームごとにゲーム バッファ全体を再プッシュする必要はありません...ゲームのセクションのみが更新されるように設定する方法について、いくつかの指針が必要です。(そして、私が今持っているような個々のキャラクターだけではありません)
私はwindows.hを介してWindowsコンソールを操作してきましたが、サーバーに接続されたpuTTYクライアントを介してLinuxマシンで実行することにも興味があります。
ピクセルと文字の比率はほぼ 1:1 であるため、いくつかのビデオ処理ルーチンを適応させようとしましたが、うまくいきませんでした。
本当に、その背後にあるいくつかの原則について簡単に説明したいと思います. しかし、いくつかのサンプル (疑似) コードもいいでしょう。