
No.1ベストアンサー
- 回答日時:
画面の表示処理が、
1) 画面消去
2) 背景描画
3) キャラクター描画
を繰り返すような方式だと、そういう事があります。
画面消去の状態を表示してしまうのが原因です。
一般的な解決法としては、ダブルバッファリングという手法で、
1) 仮想の画面に背景描画
2) 仮想の画面にキャラクター描画
3) 実際の画面に仮想の画面を貼り付け
なんかの方法で、実際の画面に背景やキャラクターが描画されていない状態を作らないって事で対処します。
それ以前の解決法だと、
1) 画面消去 は、初回の1回のみで、
2) 直前のキャラクターがあれば、その部分を消去
3) キャラクター描画
で、2)3)を繰り返しとか。
キャラクターが重なると、やっぱりちらつきます。
背景があると、キャラクターの消去を背景での塗りつぶしする事になり、ちょっと高度です。
この回答への補足
回答ありがとうございます。
なるほど、ダブルバッファリングですか。それはcでも使えるのでしょうか?
検索してみても他の言語での解説しか出てこないもので
No.2
- 回答日時:
>なるほど、ダブルバッファリングですか。
それはcでも使えるのでしょうか?>検索してみても他の言語での解説しか出てこないもので
C言語「だけ」では使えませんね。
もとよりC言語の標準ライブラリにはグラフィックを扱うものがありません。
環境によってはライブラリが用意されていたりしますが。
WindowsならAPIでも解決できる(そして、検索でも見つかる)と思われますが…。
質問者さんの環境が不明ですので。
# VC++とでも書いてあればWindowsであろうことは想定できる…でしょうけど…。
# それでもCUIで作っていたらダブルバッファリングとか無関係ですし。
まぁ、WindowsでGUIと想定して…
http://www13.plala.or.jp/kymats/study/multimedia …
http://relog.xii.jp/archives/2006/06/windows_gdi …
http://blog.goo.ne.jp/masaki_goo_2006/e/d3c18365 …
などなど…。
「Win32 ダブルバッファリング」で検索しただけですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
円の頂点の求め方を知りたいです。
-
ListBoxで改行したい
-
C#を用いて描画する四角形の角...
-
C# DrawImage 物理サイズでな...
-
[続編] pictureBoxそのものの...
-
C# イベント登録(RowPostPaint...
-
フォームに描画して表示をスク...
-
PowerPoint の VBA
-
C#でPictureBox内での図形移動...
-
ビットマップに描画をしてピク...
-
VB.netで図形描画ができません^^;
-
実行時エラー 438になった時の...
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
VBA シートのボタン名を変更し...
-
ExcelVBAのユーザーフォームの...
-
ユーザーフォームを表示中にシ...
-
パソコンへの「Dropbox...
-
VBA(エクセル)で自動的にボタン...
-
テキストボックス中の文字列の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ListBoxで改行したい
-
C++プログラミングについて。
-
Excel VBA:コントロールボタン...
-
C#を用いて描画する四角形の角...
-
MFCでのコンボボックスについて
-
ビットマップに描画をしてピク...
-
PowerPoint の VBA
-
円の頂点の求め方を知りたいです。
-
[続編] pictureBoxそのものの...
-
for文の実行速度を遅くしたいの...
-
給紙トレイをダイアログを使わ...
-
文字のちらつきを抑えるには
-
画面に絵を出す方法
-
delphi 画面のちらつき
-
shapeを描画
-
VC;;6.0のMFCで線を簡単に引け...
-
vc++のペイント処理。
-
win32api複数のタイマーを同時...
-
c言語 ちらつき
-
Visual C++ MaskedTextBoxの右...
おすすめ情報