2011-01-21 40 views
2

コンソールポーンゲームを作成しようとしていますが、次の問題が発生しています。 私は以下の持っている:武が20回書き込まれると、画面の内容のために決して実際に変更するために、私は期待コンソール(ディスプレイ)でのダブルバッファリング?

int main() 
{ 
    while(1) 
    { 
     clearScreen(); 

     std::stringstream sstr; 
     for(int i = 0; i < 20; ++i) 
     { 
      sstr << "Mooooooo \n"; 
     } 
     printf(sstr.str().c_str()); 
     restThread(50); 
    } 
    return 0; 
} 

が出力されます。しかし、それは時々ちらつきます。私は、出力が完全に描画される前に画面に表示されるため、これが疑わしいです。これを回避する方法はありますか?たとえば、すべての文字が画面に描画されるまでは何も表示しないなどです。

おかげ

+0

また、C++はコンソール出力にはほとんど機能しません( 'cout'は実際にコンソールに行く必要はありません。どのプラットフォームですか?あなたはSDLやSFMLのような既製のシンプルなエンジンを見てみるとよいでしょう。 – GManNickG

+0

@GMan私は通常、OpenGLやSDLでゲームを作っています。私はこれを楽しんで、ノベルティのために試しています。私はWindowsとLinuxをターゲットにしようとしています – jmasterx

答えて

7

何が表示される前に画面をリフレッシュする必要が呪い/ ncursesライブラリが、あります。プラットフォームのサポートという点ではかなり普及しています。

+0

+1私は同じことを提案しようとしていました。 – chrisaycock

関連する問題