第5講 ゲーム基礎その1
第5話 出席番号(ハンドル)による操作
皆さん、まず先ほどのページから002をダウンロードしてから、
コードを次のように変更して下さい。
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) {
ChangeWindowMode(true); //ウィンドウモードの切り替え
SetGraphMode(800, 600, 32); //ウインドウサイズの変更
  if (DxLib_Init() == -1)return(-1); // DXライブラリ初期化処理

  int ao,h1,h2; //画像や色の出席番号を受け取る整数を入れる箱(整数型変数)
  ao = GetColor(0, 0, 255); //GetColorが青の出席番号をつけてその番号を返し、aoの箱に入れている
  h1 = LoadGraph("画像/00.png"); 
  //LoadGraphが画像"画像/00.png"に出席番号をつけてその番号を返し、h1の箱に入れている
  h2 = LoadGraph("画像/01.png"); 
  //LoadGraphが画像"画像/00.png"に出席番号をつけてその番号を返し、h2の箱に入れている
  DrawGraph(20, 20, h1, true);
  DrawGraph(100, 50, h2, true);
  DrawBox(130, 100, 230, 200, ao, true);
  DeleteGraph(h1); //使用済みの箱の削除
  DeleteGraph(h2); //使用済みの箱の削除


  WaitKey(); // キー入力待ち
  DxLib_End(); // DXライブラリ終了処理
  return 0;
}
コピペ用添付ファイル
ゲーム画面
003

  int ao,h1,h2; //画像や色の出席番号を受け取る整数を入れる箱(整数型変数)
は整数型の変数を3つ用意しています。

−−−以下は基礎事項の復習(基礎がわかっている方は飛ばしてください)−−−
変数とはものを入れる箱です。
ただし、C言語が用意する箱(変数)は用途が決まっていて、
整数入れる箱に文字は入れられません。
文字を入れる箱にも整数は入れられません。

画像などのハンドル(出席番号)は整数ですから、
整数を入れる箱を用意したのです。
  int a;
は整数型の箱を用意してその箱の名前をaとするという意味です。
これを整数型変数の宣言といいます。
整数型の箱を用意してその箱の名前をaと宣言するということです。
  int a;
  a = LoadGraph("画像/00.png");
  DrawGraph(200, 50,
a, true);
とするときに、aは皆さん同じ箱であると思うかもしれませんが、
実は色のついているaだけ違います。
例えば、"画像/00.png"の出席番号(ハンドル)が
56(本当はこんなに簡単な番号ではありません)だとすると、
  DrawGraph(200, 50, a, true);

  DrawGraph(200, 50, 56, true);
です。
  int a;
  a = LoadGraph("画像/00.png");
の2行目のaは箱そのもの
09
であったのに対して、
  DrawGraph(200, 50, a, true);
aはaの中身56です。
=は実は数学や算数の=ではありません。
(算数や数学の=はC言語では==で表します。)
むしろ←であると思った方がよいのです。
  a=56;
は 
  a←56
で箱に56を入れる操作です。
これを代入といいます。
基本的に=の左側にあるときは、箱そのものであり、
=に右側にあるときは箱に入っているものということになります。
  DrawGraph(200, 50, a, true);
にように中身を取り出すことを参照といいます。
箱(変数)はいろいろな場所で使いますが、
基本的には中身をコピーして使います。
中身をコピーして使うことを参照というのです。
−−−以上基礎事項−−−
出席番号を入れる箱(変数)を用意して、
その番号はその箱で管理するようにした方が、
便利なのです。
画像を何度も再利用するときは。
いちいち「赤池光太郎、答えなさい」というより「1番、答えなさい」という方が簡単ですよね。

  DeleteGraph(h1); //使用済みの画像の削除
  DeleteGraph(h2); //使用済みの画像の削除

は読み込んだ画像の削除をしています。
画像を読み込む数には限界があるのです。
ですから、不要になった画像は削除するようにしましょう。


ここで皆さんに、画像001をゲーム画面の中で動かすという課題を考えていただきます。
第4講で学んだfor文ないしはwhile文で実現できます。



第4話へ   第6話へ
 
002

初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門

数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ