トップページ > 記事閲覧
グラフィック描画関数について
名前:crescendo 日時: 2021/05/06 10:46

こんにちは。いつもDXライブラリを使用させていただいております。ありがとうございます。 学校の課題でオセロを作ったのですが、追加機能としてカーソルと一緒にキャラクターのグラフィックを動かそうとした時に、初めて裏画面なるものを知りました。 全て表画面でプログラムを作ったため手直ししようとすると大幅な修正が必要になりそうだったので、質問させていただいた次第です。 @ClearDrawScreenは表画面も裏画面もすべてクリアすると思うのですが、裏画面だけ、あるいは表画面だけクリアする関数はないか A直前にdrawgraph等の画像描画関数で描画した画像だけを消すやり方もしくは関数はないか BScreenCopyの逆で、表画面の現在の内容を裏画面に複写する関数はないか 個人的にはAのようなことが可能なら便利だなと思っております。 お忙しい中申し訳ないですが、回答よろしくお願いいたします。
メンテ

Page: 1 |

Re: グラフィック描画関数について ( No.1 )
名前:管理人 日時:2021/05/07 00:11

> @ClearDrawScreenは表画面も裏画面もすべてクリアすると思うのですが、裏画面だけ、あるいは表画面だけクリアする関数はないか すみません、ありません > A直前にdrawgraph等の画像描画関数で描画した画像だけを消すやり方もしくは関数はないか MakeScreen で事前に画面と同じ大きさの画像を作成しておいて、そこに一時的に画面の内容を退避しておき、 後から退避していた画面の内容を上書きして直前の描画関数の結果を無くしてしまう方法はあります 〜〜〜グローバル変数を定義している箇所に追加〜〜〜 int Screen; 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 〜〜〜DxLib_Init 直後などの初期化の部分で実行〜〜〜 // 仮画面の作成 Screen = MakeScreen( 画面の横幅, 画面の縦幅 ); 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 〜〜〜実際に直前の描画だけ消すところで行う処理〜〜〜 // 消したい描画結果の描画を行う前に GetDrawScreenGraph で画面の状態を Screen に退避 GetDrawScreenGraph( 0, 0, 画面の横幅, 画面の縦幅, Screen ); ==== 消したい描画処理を行う ==== // 描画結果を戻したいタイミングになったら退避していた画面を上書き DrawGraph( 0, 0, Screen, FALSE ); 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 > BScreenCopyの逆で、表画面の現在の内容を裏画面に複写する関数はないか すみません、ありません
メンテ
Re: グラフィック描画関数について ( No.2 )
名前:crescendo 日時:2021/05/10 09:22

お返事が遅くなってしまい申し訳ないです。回答ありがとうございました! その方向でやってみようと思います。また何かあったら質問させていただくと思うので、その時はよろしくお願いします。 ありがとうございました。
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存