見出し画像

とりあえずはじめるGameMaker入門①

新しいことを始めるとき、できるかどうか不安で手を出さないことがあります。私の場合はゲームを作りたいと思いGameMaker2に手を出そうとしましたが、日本語化に対応しておらず(日本語パッチはあるものの… …)
それでもゲームを作りたいと思いだけで踏み出してみました。

GameMaker2を始めるきっかけになれば幸いです。

今回はとりあえずキャラクターを動かしてみます。

キャラクターを十字に動かしてみる

ここでは感覚的に操作方法を知るため、キャラクターの操作設定を例に動かしていきます。


インターフェイス(表示画面)について

※使用されるバージョンにより表示方法がことなる場合がありますが
基本的に同じことが書いてあります。

右側に表示されたフォルダは、作ったものを管理・分類するためのものです。名前が書かれた空っぽのフォルダを管理しやすいよう、あらかじめ用意してくれています。

今回はこの中から『Rooms』『Sprites』『Objects』のフォルダを使用します。

※『Sprites』と『Scripts』を見間違わないように


画面(部屋)を表示する

まずはじめに『Room』と呼ばれるゲームの下地となる画面(部屋)を表示します。この『Room』のみ『Rooms』のフォルダの中にもとから入っており

フォルダを開き『Room1』と書かれたファイルを開きます。

見えにくいですが、画面の真ん中に格子状の黒い長方形ができたと思います。これが『Room』です。

上記の写真ではデフォルトのサイズが 1366×768(横×高さ)に設定されています。

※サイズの確認は画面左下の『Propertis-Room1』に表示されています。

この数字をクリックし数字を変えることで画面のサイズを変更することができます。


キャラクターを表示させる

※左右と下の端にある矢印を押すことでタブを表示・非表示にすることができます。
(今回は左と下のタブを非表示にしています)

『Sprites』とは車でいうボディ部分にあたり、キャラクターの形を作る大事な工程です。

フォルダ『Sprites』を左クリック→ 『Create』→『Sprites』で『Sprites1』というファイルが上のように作成されます。

『Sprites1』の『Import』をクリックし自分のフォルダから表示したい画像を選択します。

今回はカラーコーンを例として使用します。

カラーコーンの画像はこちらから

画像が表示されると『Sprites』はひとまず終了です。

キャラクターを動かす① - Objectの設定 -

『Object』は車でいうエンジン部分です。命令を与えることでたくさんのことができるようになります。

フォルダ『Object』を左クリック→ 『Create』→『Object』で『Object1』というファイルが上のように作成されます。

どの『Sprite』のための命令か決めます。

『No Sprite』と命令の送り先が決まっていないため、文字のとなりの『・・・』をクリックし『Sprites』で設定したカラーコーン『Sprite1』を選択します。

『Object1』に『Sprite1』を設定したあと、左上の『Workspace1』から『Room1』のタブに切り替え

右の『Object1』を直接画面にドラッグをします。

これでカラーコーンを画面内に配置することができました。

左上のタブを『Workspace1』に戻し

キャラクターを動かすための命令文(プログラム)を制作していきます。

「キャラクターを十字に動かす」ことが目的なので

『Add Event』から『Step』を選択→『Step』

言語について

GameMakerには2種類の方法で命令(プログラム)をつくることができるためどちらの方法で命令をしていくのか質問をしてきます。

GML CODE :GML言語というプログラム言語を使用し、ひとつひとつ命令を打ち込みプログラムを作る方法。

GML VISUAL:プログラム言語を使用せず、出来上がっている命令の中から選択してプログラムを作る方法。

GML VISUALの方が簡単に命令を作ることができるのですが、できることがGML CODEに比べ限られます。

そこで今回はGML CODEを使用し、感覚的にプログラムの仕組みが分かるよう説明していきます。

※表示したくない場合はDon't ask again this project に
チェックを入れOKを押してください。


キャラクターを動かす② - GML言語入門 -

いよいよキャラクターを動かすための命令文(GML言語)の説明に入ります。

いま画面上に出ている緑色の文字はプログラムではなくメモのような機能です。

行の先頭に『//』をつけるとメモ機能になり、プログラムの画面にのみ表示されゲーム画面には表示されません。

今表示されている文字を消し、1行目にとりあえず

//moving around と打って見ましょう

次の行にカラーコーンを右に動かす命令を打ちます。

右ボタンを一度だけ押すと、一回あたり右に4つ移動する。」

プログラムにすると

if (keyboard_check(vk_right)) x = x + 4 ;

日本語訳すると

一度(キーボードの(右ボタン)を押している)とき
横軸は=今いる位置からみぎに四つ分動かす。

ということになる。

「押しっぱなしの状態を1度だけ行う」という所が難しく感じますが
ボタンを一度だけ押すが「if (keyboard_check」と大体わかるくらいでも
大丈夫です。

これで右ボタンを押すと右に動くプログラムが完成しました。一度ゲームを再生してみましょう

ゲームを再生してみる

左上のバーの中にある三角の再生ボタンを押してみましょう。

新しいタブが開き、黒い画面の中にカラーコーンが表示されているかと思います。

そこでキーボードの右を一回押してみてください。右に少し動きませんか?

動いた場合、正しく命令が行われた証拠です。プログラムを一つ作ることができました。

※再生ボタンを押してもタブが開かない場合、コーンが動かない場合
エラーが発生しています。
理由としてプログラムの文字の打ち間違えや空白が半角になっていないなど考えられます。もう一度打ち間違えがないか見返して見ましょう。

ここからは打ち込んだプログラムを応用してカラーコーンが十字に動くように設定していきます。


キャラクターを動かす③ - 応用編 -

キャラクターを動かす②で行ったプログラム

if (keyboard_check(vk_right)) x = x + 4 ;

をもとに解説しながらカラーコーンを十字に動かしていきます。

if (keyboard_checkの部分は〜を一度動かすという命令なので変更せず

(vk_right))はボタンの名前なのでvk_の後につける文字によって押せるキーが変わります。

左ボタン vk_left
上ボタン vk_up
下ボタン vk_down

横軸について

x = x + 4 ;も同じく
xは横軸を表し
−の場合左に動き、xが+の場合右に動く

※最後に『;』をつけるのを忘れないように

左に4動く x = x - 4 ;

縦軸について

yは縦軸を表し

−の場合上に動き、xが+の場合下に動く

上に4動く y = y - 4 ;
下に4動く y = y + 4 ;

となります。

これらを合わせると

左ボタン if (keyboard_check(vk_left)) x = x - 4;
上ボタン if (keyboard_check(vk_up)) y = y - 4;
下ボタン if (keyboard_check(vk_down)) y = y + 4;

というふうにもとの式から応用することができます。
そうしたらもう一度再生してみましょう。

完成

プレビュー画面で上のように動かせると
「とりあえず動かしてみる」は終了です。

GameMaker2の初めの一歩を感覚的につかめたのではないでしょうか。

おつかれさまでした。

この記事が気に入ったらサポートをしてみませんか?