ゲーム画面に表示される飛行機を動かしてみましょう
ゲーム画面に表示される飛行機を複数表示してみましょう
マックス「あ、あのう
DrawGraph関数を使って
ゲーム画面に飛行機の画像が表示された
でも
これ
この飛行機よう
ゲーム画面と一体化しているので
うごかせないんじゃあないか」
solarplexuss「自然と一体化している・・・」
ソーラー「そう思う?
う~ん
いいね!」
マックス「よくないわあ」
ソーラー「それでは
飛行機が動いているように
みえるように
してみましょう」
solarplexuss「やったあ
ついに
飛行機がうごくのかあ」
ソーラー「うふふ
やってみる?
やってみる?」
solarplexuss「
やってみる!
やってみる!」
ソーラー「
まずは
DrawGraph関数だけを使った
次のプログラムをご覧ください」
マックス「 DrawGraph関数だけを使った
次のプログラム??
DrawGraph関数だけで
飛行機が動くようになるのか?」
ソーラー「えへへぇ
どうかな?
まあ みてみて😊」
そのプログラムはこちらです
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
ChangeWindowMode(TRUE); // ウインドウモードに設定します
if (DxLib_Init() == -1) // DXライブラリを初期化処理しています
{
return -1; // DXライブラリの初期化に失敗したら直ちにプログラムを終了します
}
int graphichandle;
graphichandle = LoadGraph("画像データ\\ソーラーが描いた飛行機.bmp");
DrawGraph(0, 230, graphichandle, TRUE);
DrawGraph(100, 230, graphichandle, TRUE);
DrawGraph(200, 230, graphichandle, TRUE);
DrawGraph(300, 230, graphichandle, TRUE);
DrawGraph(400, 230, graphichandle, TRUE);
WaitKey(); //🌞 キーの入力を待っています 何かキーが入力がされるまで これ以上プログラムは実行されません
DxLib_End(); // DXライブラリの使用を終了します DXライブラリの使用しているメモリ領域が解放されます
return 0; // プログラムを終了します
}
デバッグなしで実行をしてから一度プログラムを終了し
生成されたexeファイルをハードディスクから探し出しクリックする方法により得られたプログラムの実行結果
👇
https://solalion.blogspot.com/2021/07/blog-post_87.html
マックス「おっ
リアルに動いているわけではないが
飛行機がたくさん表示されているのは
なんか斬新だな
ははあ
DrawGraph関数を5回実行したので
👇
DrawGraph(0, 230, graphichandle, TRUE);
DrawGraph(100, 230, graphichandle, TRUE);
DrawGraph(200, 230, graphichandle, TRUE);
DrawGraph(300, 230, graphichandle, TRUE);
DrawGraph(400, 230, graphichandle, TRUE);
👆
飛行機が5機表示されたわけだ」
solarplexuss「ほんとだね」
ソーラー「こんどは
もっとたくさんの飛行機を表示してみましょう
DrawGraph関数を320回実行して
320機
飛行機を表示してみましょう」
マックス「ええっ 320機も飛行機を表示するのか?」
ソーラー「DrawGraph関数の第1引数の値を
0
1
2
3
4
・
・
・
・
317
318
319
と
値を変えながら
DrawGraph(0, 230, graphichandle, TRUE);
DrawGraph(1, 230, graphichandle, TRUE);
DrawGraph(2, 230, graphichandle, TRUE);
DrawGraph(3, 230, graphichandle, TRUE);
DrawGraph(4, 230, graphichandle, TRUE);
・
・
・
DrawGraph(319, 230, graphichandle, TRUE);
を
実行するんです」
solarplexuss「うわあ」
ソーラー「ぐへへ
DrawGraph(0, 230, graphichandle, TRUE);
DrawGraph(1, 230, graphichandle, TRUE);
DrawGraph(2, 230, graphichandle, TRUE);
DrawGraph(3, 230, graphichandle, TRUE);
DrawGraph(4, 230, graphichandle, TRUE);
・
・
・
DrawGraph(319, 230, graphichandle, TRUE);
を
記述するのは大変なので
for文を使って
for (int x = 0; x < 300; x=x+1) {
DrawGraph(x, 230, graphichandle, TRUE);
}
と記述して実行してみるね
そのプログラムはこちらです
👇
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
ChangeWindowMode(TRUE); // ウインドウモードに設定します
if (DxLib_Init() == -1) // DXライブラリを初期化処理しています
{
return -1; // DXライブラリの初期化に失敗したら直ちにプログラムを終了します
}
int graphichandle;
graphichandle = LoadGraph("画像データ\\ソーラーが描いた飛行機.bmp");
for (int x = 0; x < 300; x=x+1) {
DrawGraph(x, 230, graphichandle, TRUE);
}
WaitKey(); //🌞 キーの入力を待っています 何かキーが入力がされるまで これ以上プログラムは実行されません
DxLib_End(); // DXライブラリの使用を終了します DXライブラリの使用しているメモリ領域が解放されます
return 0; // プログラムを終了します
}
デバッグなしで実行をしてから一度プログラムを終了し
生成されたexeファイルをハードディスクから探し出しクリックする方法により得られたプログラムの実行結果
👇
https://solalion.blogspot.com/2021/07/blog-post_42.html
マックス「うっわ
このジェット飛行機 すごいじゃないか?
どうやら
前に表示された飛行機の画像の上に
重なって飛行機の画像が表示されているようだな」
ソーラー「そうなんです
DrawGraph関数を使って画像を表示する場合
すでに表示されている画像の上に
重なって
画像が表示されることになります
ですから
次から次へと飛行機が重なって表示されることになります」
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます