背景を表示しつつのキャラ画像の移動について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
はすみ

背景を表示しつつのキャラ画像の移動について

#1

投稿記事 by はすみ » 14年前

初歩的な質問で申し訳ないのですが、よろしければご教授ください。
ゲームプログラミングの館様で、画像の移動については理解できているものの、背景を表示しつつキャラの移動をさせていると、毎回のループでClearDrawScreen()を使ってしまうため、背景も消えてしまいます。
この背景が消えるのを防ぐにはどんなプログラムにするべきなんでしょうか。

ちなみに現在自分のプログラムは、ゲームプログラミングの館様のサンプルプログラムをそのまま流用して試しています。

コード:

 
SetDrawScreen( DX_SCREEN_BACK ) ;           // 描画先を裏画面に設定
 
        int i ;
        for( i = 0 ; i < 300 ; i ++ )
        {
                ClearDrawScreen();                            // 裏画面のデータを全て削除
                LoadGraphScreen( i, 0, "char.png" , TRUE ) ; //裏画面へ画像を描写
                ScreenFlip() ;                                // 裏画面データを表画面へ反映
        }
どうかご教授お願いします。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 背景を表示しつつのキャラ画像の移動について

#2

投稿記事 by softya(ソフト屋) » 14年前

ここのコンテンツである「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」にも書かれていますが、
http://dixq.net/g/01_03.html
LoadGraphScreenという関数はテスト時以外には使用しないで下さい。
とあります。つまり、これが問題なのです。

次の章に「1.4章 画像をロードして表示する」がありますね。
http://dixq.net/g/01_04.html
ただ、これでも問題があって
「1.7章 裏画面処理をして画像を動かす」
http://dixq.net/g/01_07.html
が基本的な書きかというかなりますが、これらに必要なものを加えた
「1.9章 ゲームプログラムの骨格の完成」
http://dixq.net/g/01_09.html
が原型となるべきです。

【訂正】
あっ背景描いてませんね。
h2so5さんの言われるとおり背景も描く必要があります。
DrwaGraphで背景→キャラクタの順で描画してください。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
h2so5
副管理人
記事: 2212
登録日時: 15年前
住所: 東京
連絡を取る:

Re: 背景を表示しつつのキャラ画像の移動について

#3

投稿記事 by h2so5 » 14年前

背景を毎回描画すればいいだけです。

はすみ

Re: 背景を表示しつつのキャラ画像の移動について

#4

投稿記事 by はすみ » 14年前

すいません、返信遅れました。


やはり毎回描写しかないんですね、これでようやく作業再開できると思います。
すぐに教えてくださったお二方、どうもありがとうございました!

閉鎖

“C言語何でも質問掲示板” へ戻る